Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2006.08.13;
Скачать: [xml.tar.bz2];

Вниз

Не могу расставить кавычки в delete   Найти похожие ветки 

 
Fer ©   (2006-05-26 13:38) [0]

Здравствуйте.
Подскажите плиз один момент.
Есть база в Асесе 2000

аппараты :

аппарат | объём
R 1-1 | 1
R 1-2 | 2
1      | 3

Работаю в delphi 7 - через BDE SQL запрос (Query)

with Query1 do
begin
   Active:=False;
   SQL.Clear;
   SQL.Add("delete from аппараты where объём = 3);
   ExecSQL;
end;



честно удаляет аппарат 1
Но все мои попытки заставить удалять вот так:
SQL.Add("delete from аппараты where аппарат = 1); - слишком мало параметров требуется 1.".
SQL.Add("delete from аппараты where аппарат = "R 1-1""); - слишком мало параметров требуется 2.".
а на вариант
SQL.Add("delete from аппараты where аппарат = " "R 1-1" " "); - не компилирует = [Error] Unit1.pas(82): ")" expected but identifier "R" found
Чувствую что дело в кавычках... а поставить даже методом перебора не могу!
Столбец аппарат текстовый
подскажите кто знает...
Спасибо


 
MsGuns ©   (2006-05-26 14:17) [1]

1) SQL.Add("delete from аппараты where аппарат = """1""");

2) SQL.Add("delete from аппараты where аппарат = "+QutedStr("1"));

3) SQL.Add("delete from аппараты where аппарат = :pa");
   SQL.Parameters.ParamByName("p").Value := "1";

Последнее - самое правильное


 
Fer ©   (2006-05-26 14:20) [2]

SQL.Add("delete from аппараты where наименование = "+QuotedStr("R 1-1"));

Решение любезно подсказано на форуме www.sql.ru
Всем спасибо


 
Fer ©   (2006-05-26 14:23) [3]

Ого..
вариант 1 - это  " " " " или " " в смысле двойные или одинарные или и те и эти..
вариант 2 - работает!!! и мне понятен
вариант 3 - верный но не понятен... :pa а затем "p" но в будующем попробую заюзать
Пасиб огромный за решение - перерыл все форумы и исходники!


 
MsGuns ©   (2006-05-26 14:37) [4]

>Fer ©   (26.05.06 14:23) [3]
>вариант 3 - верный но не понятен... :pa а затем "p" но в будующем попробую заюзать

Очепятка просто. Использвание параметров - самый правильный способ, т.к. позволяет не заботиться о корректности перевода "паскальных" форматов данных в "серверные", у которых может быть разная локализация.


 
Fer ©   (2006-06-05 10:37) [5]

Так... уж не хотелось осваивать новые технлогии, но тем не менее..
Длинна запроса вынуждает прибегнуть к третьему способу - использованию параметров.
Конкретно на это компилятор ругается.. ((((
SQL.Parameters.ParamByName("p").Value := "1";
По точке после SQL не показывает в списке слово Parameters ((((
Написанное самим - не компилит
Строчкой кода никто не поделится?


 
ANB ©   (2006-06-05 10:56) [6]

SQL убери.
Parameters.ParamByName("p").Value := "1";


 
ЮЮ ©   (2006-06-05 10:59) [7]

не SQL.
а
 Query1.
если это TADOQuery.
Есри же это TQuery, то просто
 Query1.ParamByName


 
Fer ©   (2006-06-05 11:05) [8]

Пасиб огромный! Тут так быстро и точно отвечают. Тьфу тьфу тьфу!
Пасиб!



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

Форум: "Базы";
Текущий архив: 2006.08.13;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.042 c
2-1153986455
TrainerOfDolphins
2006-07-27 11:47
2006.08.13
Backslash в маске MaskEdit


6-1143528314
balepa
2006-03-28 10:45
2006.08.13
Процедура обработки OnClientRead


2-1153481890
WolfRamm
2006-07-21 15:38
2006.08.13
SQL Explorer


15-1152793924
Плохиш
2006-07-13 16:32
2006.08.13
Подарок от Мелкогософта


15-1153285437
syte_ser78
2006-07-19 09:03
2006.08.13
Пользывался кто сервисом?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский