Использовать корпоративную библиотеку для базы данных OLEDB Access - PullRequest
3 голосов
/ 26 июля 2010

Я хочу использовать Microsoft Application Library Data Application Block для базы данных MS Access (поставщик OLEDB)

Я хочу функциональность INSERT на основе параметров с корпоративной библиотекой (Точно так же, как мы делаем для поставщика SQL с кодом на основе параметров, как -database.params.Add ("@ EmpName", this.EmpName);

Я хочу то же самое для подключения к базе данных MS Access.

Может кто-нибудь, пожалуйста, дайте мне знать, Как я мог это сделать?

Заранее спасибо.

Будет ли этот код работать?

SirDemon, спасибо за объяснение .. Я знаю все, что связано с INSERT, Update и Delete for SQL. Я хочусовместим это с MS ACCESS. Хорошо, скажите, приведенный ниже код будет работать?

string query = "INSERT INTO DB (EmployeeID, Name) VALUES (@EmployeeID, @Name)

Database db = DatabaseFactory.CreateDatabase();

DbCommand sqlCommand = db.GetCommandFromText(query);

db.AddInParameter(sqlCommand, "@EmployeeID", this.EmployeeID);
db.AddInParameter(sqlCommand, "@Name", this.Name);

Будет ли этот пример работать в базе данных MS Access.

1 Ответ

3 голосов
/ 26 июля 2010

Вы можете использовать OleDbCommand для установки параметров и запроса, так же, как вы делаете это с SqlCommand на провайдере SQL.

Обзор OleDbCommand

Члены класса OleDbCommand

Чтобы использовать ваш пример:

string query = "INSERT INTO DB (EmployeeID, Name) VALUES (@EmployeeID, @Name)"

Database db = DatabaseFactory.CreateDatabase();

DbCommand command = db.db.GetSqlStringCommand(query);
db.AddInParameter(command, "@EmployeeID", this.EmployeeID);
db.AddInParameter(command, "@Name", this.Name);
db.ExecuteNonQuery(command);

Должно работать.

...