Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2013.03.22;
Скачать: CL | DM;

Вниз

Delphi - ADO - DBF (Ошибка синтаксиса)   Найти похожие ветки 

 
Мальчик   (2012-02-29 17:14) [0]

Здравствуйте.

Столкнулся с проблемой при работе с ADO. Установил соединение с DBF,
выполняю INSERT. Работает. Но, если имя поля в таблице "Names"
добавление не выполняется. Ошибка синтаксиса Insert into. Я так понял, поле с зарезервированным именем. Но мне просто необходимо сажать именно в это поле.

qMain.SQL.Text := "insert into mtk.dbf (NAMES) values (:ns)";
qMain.Parameters.ParamByName("ns").Value      := "Тест";
qMain.ExecSQL;

Подскажите как быть?

Сторонние компоненты использовать мне нельзя, BDE тоже.


 
Ega23 ©   (2012-02-29 17:15) [1]

qMain.SQL.Text := "insert into mtk.dbf ("NAMES") values (:ns)";
?


 
Delphi2007   (2012-02-29 17:19) [2]


> qMain.SQL.Text := "insert into mtk.dbf ("NAMES") values
> (:ns)";
> ?
>


"Инструкция INSERT INTO содержит неизвестное имя поля ""NAMES"".  Проверьте, что имя задано без ошибок, и повторите операцию".


 
sniknik ©   (2012-02-29 17:19) [3]

> с зарезервированным именем.
такие имена, а также с пробелами и т.д. нестандартные, экранируются кавычками (или другими символами в зависимости от движка), попробуй [Names].

> BDE тоже.
ты его уже используешь. просто "с широко закрытыми глазами".


 
Delphi2007   (2012-02-29 17:22) [4]


> такие имена, а также с пробелами и т.д. нестандартные, экранируются
> кавычками (или другими символами в зависимости от движка),
>  попробуй [Names].


То, что нужно. Спасибо.


 
Anatoly Podgoretsky ©   (2012-02-29 17:36) [5]

Или так

qMain.SQL.Text := "insert into mtk.dbf ("NAMES") values (:ns)";

или так
qMain.SQL.Text := "insert into mtk.dbf ([NAMES]) values (:ns)";

Какой подойдет, в зависимости от провайдера


 
Delphi2007   (2012-02-29 17:38) [6]

Подскажите пожалуйста как настраивать кодировку. Я сейчас сажаю данные с кириллицей, а они не читабельны в FoxPro. Нужно прописывать в строке соединения или при передаче параметров менять кодировку?


 
Ega23 ©   (2012-02-29 17:38) [7]

ИМХО, надо ноги за такие наименования отстреливать.
Костыли на ровном месте.
Впрочем, тема для холивара.


 
Ega23 ©   (2012-02-29 17:39) [8]


> Подскажите пожалуйста как настраивать кодировку. Я сейчас
> сажаю данные с кириллицей, а они не читабельны в FoxPro.
>  Нужно прописывать в строке соединения или при передаче
> параметров менять кодировку?


И Collation настраивать.


 
Delphi2007   (2012-02-29 17:40) [9]


> ИМХО, надо ноги за такие наименования отстреливать.
> Костыли на ровном месте.
> Впрочем, тема для холивара.


У нас нет выбора, нужно отправлять данные в ведомство где требуют именно в таком формате.


 
Anatoly Podgoretsky ©   (2012-02-29 17:43) [10]


> Delphi2007   (29.02.12 17:38) [6]

Неизвестна ни версия СУБД, ни провайдер, ни версия "dbf"
Ничего неизвестно


 
Anatoly Podgoretsky ©   (2012-02-29 17:44) [11]


> У нас нет выбора, нужно отправлять данные в ведомство где
> требуют именно в таком формате.

Тогда вопроса нет, нельзя, так нельзя


 
Delphi2007   (2012-02-29 17:50) [12]


> Неизвестна ни версия СУБД, ни провайдер, ни версия "dbf"
> Ничего неизвестно


dBase IV.

Строка соединения: Provider=Microsoft.JET.OLEDB.4.0;Data Source=D:\;Extended Properties=dBase IV;


 
Smile   (2012-02-29 17:55) [13]

Может кто-нить подскажет какой сейчас год на дворе?
Заранее спасибо:)


 
Anatoly Podgoretsky ©   (2012-02-29 17:58) [14]

> Delphi2007  (29.02.2012 17:50:12)  [12]

В данной СУБД нет кодировки для dBase IV, она машинная


 
sniknik ©   (2012-02-29 18:05) [15]

надо поставить OEM в Jet (в реестре), + если используется "внешний" BDE (установлен и настроено на него) то в нем у драйвера поставить "без кодировки" ansi вроде бы.



Страницы: 1 вся ветка

Текущий архив: 2013.03.22;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.096 c
15-1348684623
Slipknot_VEVO
2012-09-26 22:37
2013.03.22
Где Розыч узнает про недокументированные функции?


2-1343048239
DevilDevil
2012-07-23 16:57
2013.03.22
Очередь потоков


2-1340433843
Reqyzik
2012-06-23 10:44
2013.03.22
Бяда с XLS


15-1342183148
yorik_spb
2012-07-13 16:39
2013.03.22
Организации требуется - старший программист (Delphi+M SSQL)


15-1338398557
Биос
2012-05-30 21:22
2013.03.22
Три звуковых сигнала из системника.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский