Главная страница
    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.046 c
3-1149574520
zorik
2006-06-06 10:15
2006.08.13
использование dll в приложениях с компонентами IBX


2-1153896858
Ironman83
2006-07-26 10:54
2006.08.13
Получение файла по сети.


3-1149749739
Snik
2006-06-08 10:55
2006.08.13
Как из базы достать все поля в которых ничего нет


15-1152907772
Nic
2006-07-15 00:09
2006.08.13
Жара


2-1153933102
Phoroon~
2006-07-26 20:58
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
Английский Французский Немецкий Итальянский Португальский Русский Испанский