powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Проблема при вставке записи в dbf-таблицу с именем поля ORDER
4 сообщений из 4, страница 1 из 1
Проблема при вставке записи в dbf-таблицу с именем поля ORDER
    #37317848
vidiccs
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Уважаемые гуру C# нужна Ваша помощь. При попытке записи в dbf-таблицу с именем поля ORDER выдается синтаксическая ошибка в строке SQL-оператора (принимает это имя поля как служебный оператор SQL). Как это можно обойти?
String ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + catalog + ";Extended Properties=DBASE IV";
System.Data.OleDb.OleDbConnection dbf_Connection = new System.Data.OleDb.OleDbConnection();
dbf_Connection.ConnectionString = ConnectionString;
try
{ //устанавливаем соединение с work.dbf
dbf_Connection.Open();
if (dbf_Connection.State == System.Data.ConnectionState.Open)//соединение установлено
{
//MessageBox.Show("Соединение с файлом DBF установлено");
foreach (System.Data.DataRowView myRow in dataGrid1.SelectedItems)
{//цикл по выделенным строкам табличного представления
string QueryInsert = "INSERT INTO [WORK.DBF] (ORDER) VALUES (@order)";
System.Data.OleDb.OleDbCommand dbf_SQLCommandInsert = new System.Data.OleDb.OleDbCommand(QueryInsert, dbf_Connection);
dbf_SQLCommandInsert.Parameters.Add("@order", System.Data.OleDb.OleDbType.VarChar, 3, "ORDER");
dbf_SQLCommandInsert.Parameters["@order"].Value = myRow["ORDER"].ToString();
dbf_SQLCommandInsert.ExecuteNonQuery();
}
}
}
...
Рейтинг: 0 / 0
Проблема при вставке записи в dbf-таблицу с именем поля ORDER
    #37318106
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробуй как-нибудь в кавычках взять.
...
Рейтинг: 0 / 0
Проблема при вставке записи в dbf-таблицу с именем поля ORDER
    #37318336
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вобщем-то тут

http://support.microsoft.com/kb/321266

описано как писать по фэнь-шую.

Чисто, технически warning по поводу использования keywords иногда можно обходить, но
я-бы не советовал. Это ружьё, которое стрельнет, если не вашем софте то где-то в другом
месте. На экспортах-импортах и сопряжении с другими системами.
...
Рейтинг: 0 / 0
Проблема при вставке записи в dbf-таблицу с именем поля ORDER
    #37318414
vidiccs
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем спасибо решил проблему так:
string QueryInsert = "INSERT INTO [WORK.DBF] ([N_DOC],[DATADOC],[PAYER],[ORDER],[SUM],[INN_PAYER],[ACC_PAYER],[TEL],[BIC],[BIC_RKC],[SUBACC],[RECEIVER],[ACC_REC],[INN_REC],[GROUND],[BANKKORR],[UCH_SB],[KPPPLAT],[KPPPOL])"
+ "VALUES (@n_doc,@datadoc,@payer,@order,@sum,@inn_payer,@acc_payer,@tel,@bic,@bic_rkc,@subacc,@receiver,@acc_rec,@inn_rec,@ground,@bankkorr,@ush_sb,@kppplat,@kpppol);";
dbf_DataAdapter.InsertCommand = new System.Data.OleDb.OleDbCommand(QueryInsert, dbf_Connection);
dbf_DataAdapter.InsertCommand.Parameters.Add("@n_doc", System.Data.OleDb.OleDbType.VarChar, 7, "N_DOC");
dbf_DataAdapter.InsertCommand.Parameters.Add("@datadoc", System.Data.OleDb.OleDbType.DBDate, 8, "DATADOC");
dbf_DataAdapter.InsertCommand.Parameters.Add("@payer", System.Data.OleDb.OleDbType.VarChar, 160, "PAYER");
dbf_DataAdapter.InsertCommand.Parameters.Add("@order", System.Data.OleDb.OleDbType.VarChar, 3, "ORDER");
dbf_DataAdapter.InsertCommand.Parameters.Add("@sum", System.Data.OleDb.OleDbType.Double, 0, "SUM");
dbf_DataAdapter.InsertCommand.Parameters.Add("@inn_payer", System.Data.OleDb.OleDbType.VarChar, 12, "INN_PAYER");
dbf_DataAdapter.InsertCommand.Parameters.Add("@acc_payer", System.Data.OleDb.OleDbType.VarChar, 25, "ACC_PAYER");
dbf_DataAdapter.InsertCommand.Parameters.Add("@tel", System.Data.OleDb.OleDbType.Integer, 0, "TEL");
dbf_DataAdapter.InsertCommand.Parameters.Add("@bic", System.Data.OleDb.OleDbType.VarChar, 9, "BIC");
dbf_DataAdapter.InsertCommand.Parameters.Add("@bic_rkc", System.Data.OleDb.OleDbType.VarChar, 9, "BIC_RKC");
dbf_DataAdapter.InsertCommand.Parameters.Add("@subacc", System.Data.OleDb.OleDbType.VarChar, 25, "SUBACC");
dbf_DataAdapter.InsertCommand.Parameters.Add("@receiver", System.Data.OleDb.OleDbType.VarChar, 160, "RECEIVER");
dbf_DataAdapter.InsertCommand.Parameters.Add("@acc_rec", System.Data.OleDb.OleDbType.VarChar, 25, "ACC_REC");
dbf_DataAdapter.InsertCommand.Parameters.Add("@inn_rec", System.Data.OleDb.OleDbType.VarChar, 12, "INN_REC");
dbf_DataAdapter.InsertCommand.Parameters.Add("@ground", System.Data.OleDb.OleDbType.VarChar, 210, "GROUND");
dbf_DataAdapter.InsertCommand.Parameters.Add("@bankkorr", System.Data.OleDb.OleDbType.VarChar, 60, "BANKKORR");
dbf_DataAdapter.InsertCommand.Parameters.Add("@ush_sb", System.Data.OleDb.OleDbType.VarChar, 10, "UCH_SB");
dbf_DataAdapter.InsertCommand.Parameters.Add("@kppplat", System.Data.OleDb.OleDbType.VarChar, 12, "KPPPLAT");
dbf_DataAdapter.InsertCommand.Parameters.Add("@kpppol", System.Data.OleDb.OleDbType.VarChar, 12, "KPPPOL");
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Проблема при вставке записи в dbf-таблицу с именем поля ORDER
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]