Использовать корпоративную библиотеку для базы данных OLEDB Access

Я хочу использовать библиотеку Microsoft 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 ответ

Решение

Вы можете использовать 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);

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

Другие вопросы по тегам