OleDbParameters и названия параметра

У меня есть SQL-оператор, который я выполняю через OleDb, оператор - что-то вроде этого:

INSERT INTO mytable (name, dept) VALUES (@name, @dept);

Я добавляю параметры к OleDbCommand как это:

OleDbCommand Command = new OleDbCommand();
Command.Connection = Connection;

OleDbParameter Parameter1 = new OleDbParameter();
Parameter1.OleDbType = OleDbType.VarChar;
Parameter1.ParamterName = "@name";
Parameter1.Value = "Bob";

OleDbParameter Parameter2 = new OleDbParameter();
Parameter2.OleDbType = OleDbType.VarChar;
Parameter2.ParamterName = "@dept";
Parameter2.Value = "ADept";

Command.Parameters.Add(Parameter1);
Command.Parameters.Add(Parameter2);

Проблема, которую я имею, если я добавляю параметры для управления наоборот, затем столбцы заполняются с неправильными значениями (т.е. имя находится в столбце отдела и наоборот),

Command.Parameters.Add(Parameter2);
Command.Parameters.Add(Parameter1);

Мой вопрос, какой смысл названий параметра, если значения параметров просто вставляются в таблицу в порядке, они добавляются команда? Названия параметра кажутся избыточными?

10
задан Luke Girvin 18 September 2018 в 10:25
поделиться

1 ответ

Имена параметров являются общими в системе поддержки SQL (т. Е. Не относятся к OleDb). Практически ТОЛЬКО OleDb / Odbc их НЕ используют. Они существуют, потому что OleDb - это конкретная реализация общих базовых классов.

5
ответ дан 3 December 2019 в 21:21
поделиться
Другие вопросы по тегам:

Похожие вопросы: