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

Вниз

Chr(39)   Найти похожие ветки 

 
VeryLongString   (2007-01-28 12:24) [0]

Здравствуйте. При помощи ADOCommand1 выполняю запрос в Access базу, но случилась такая проблема. Одна из переменных на добавление (допустим OOthe - Ldb.Other), содержит такой текст: hello i"m a"a"dkfdnfdjfdf;df"dsfee"rrrr"pp2"
И тогда при выполнении запроса получается не приятная ситуация, а именно: Ошибка синтаксиса (пропущен оператор) в выражении запроса...
Можно как-то это исправить? (Исключая замену всех " в этой переменной)


         ADOCommand1.CommandText := "INSERT INTO Informations " +
         "(OName, OAdministrator, OAdministratorEmail, OOther" +
         "...........)" +
         " VALUES " +
         Format("(""%s"", ""%s"",""%s"",""%s"",""%s"",""%s"",""%s"",""%s"",""%s"",""%s"",""%s"",""%s"",""%s"",""%s"")",
         [
           Ldb.Name, Ldb.Administrator, Ldb.Email, Ldb.Other....          

         ]);
   

      ADOCommand1.Execute;


 
Desdechado ©   (2007-01-28 12:36) [1]

Уж сколько раз твердили миру...
Параметры использовать. Через них хоть черта протолкнуть можно...


 
Olivetti   (2007-01-29 01:36) [2]

ADOCommand1.CommandText := ...;
ShowMessage(ADOCommand1.CommandText); // Посмотри, проверь корректность синтаксиса с точки зрения SQL сервера
ADOCommand1.Execute;


 
Desdechado ©   (2007-01-29 10:51) [3]

Olivetti   (29.01.07 01:36) [2]
Там и проверять нечего, и так все ясно. Апостроф является ограничителем строковых констант. Поэтому наличие апострофа в строке приводит к вымиранию команды.
ADOCommand1.CommandText := "INSERT INTO Informations(a,b) VALUES(:P0, :P1)";
ADOCommand1.Parameters.ParamByName("P0").Value:=1;
...
...Execute;


 
sniknik ©   (2007-01-29 11:17) [4]

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

меня одно только использование Format в [0] подобном виде коробит просто, ужас какойто... а потом начнут подобное в циклы вставлять на для множественных вставок и "плакать", что медленно работает.



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

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

Наверх




Память: 0.48 MB
Время: 0.043 c
15-1174413688
][-m@n
2007-03-20 21:01
2007.04.15
SmartFon


2-1174989039
Леонид
2007-03-27 13:50
2007.04.15
Короткий путь DOS


1-1171681447
Стего
2007-02-17 06:04
2007.04.15
шифрование пароля


15-1174093517
XProger
2007-03-17 04:05
2007.04.15
Новшества Delphi 2007


6-1161859744
Gloomer
2006-10-26 14:49
2007.04.15
SNTP сервер