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

Вниз

Знаки препинания в строке ADOQuery1.SQL.Add( SET ... !!!   Найти похожие ветки 

 
Первокурсница ©   (2010-09-19 15:38) [0]

Доброго времени суток!
Мне нужно отредактировать записи в базе данных "Телефонный справочник", где в таблице "Таблица 1" присутствуют следующие поля:
IDCode (АйДи-код абонента)-числовой тип данных
FName (Имя)-текстовый тип данных
LName (Отчество)-текстовый тип данных
PhName (Фамилия)-текстовый тип данных
City (Город)-текстовый тип данных
Street (Улица)-текстовый тип данных
House (Дом)-текстовый тип данных
Kv (Квартира)-текстовый тип данных
PhoneNum (Номер телефона)-текстовый тип данных

Необходимо написать процедуру в Delphi, позволяющую редактировать записи в справочнике.
Вот эта процедура:

procedure TForm1.BitBtn3Click(Sender: TObject); {Редактирование записей}
begin
ADOQuery1.Active:=false;
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add("UPDATE Таблица1");
ADOQuery1.SQL.Add("SET IDCode="+Edit1.Text+", FName="+" ""+Edit2.Text+"" "+", LName="+" ""+Edit3.Text+"" "+", PhName="+" ""+Edit4.Text+"" "+", City="+" ""+Edit5.Text+"" "+", Street="+" ""+Edit6.Text+"" "+", House="+" ""+Edit7.Text+"" "+", Kv="+" ""+Edit8.Text+"" "+", PhoneNum="+" ""+Edit9.Text");
ADOQuery1.SQL.Add("WHERE IDCode="+IntToStr(X));
ADOQuery1.ExecSQL;
ADOQuery1.SQL.Text:="SELECT * FROM Таблица1";
ADOQuery1.Open;
end;

Но у меня у чайника возникли проблемы со знаками препинания в строке ADOQuery1.SQL.Add("SET ...   : [Error] LAB3_SPR.pas(101): Illegal character in input file: """ ($22)
В нашей чудесной методичке пример этой процедуры только с типом данных "счётчик" и "числовой", насчёт текстового "догадайся мол сама". Я так понимаю что я просто неправильно леплю апострофы. Перепробовала кучу вариантов - бесполезно. Просидела полдня. Уже глаз дёргается. Подскажите пожалуйста!


 
Первокурсница ©   (2010-09-19 15:41) [1]

Вариант поменять в Access тип данных на числовой не прокатит: "слишком легко у тебя всё получается" :)


 
_Юрий   (2010-09-19 16:12) [2]


> ""+Edit9.Text");

""+Edit9.Text + " " ");

А вообще конечно надо параметры использовать. Потому что в Edit"ы можно ввести такое, что как минимум не сработает, а как максимум - испортит данные


 
Плохиш ©   (2010-09-19 16:49) [3]


> FName="+" ""+Edit2.Text+"" "+


FName=" + AnsiQuotedStr(Edit2.Text, """") +


 
Anatoly Podgoretsky ©   (2010-09-19 18:01) [4]

Надо использовать параметры.


 
Первокурсница ©   (2010-09-19 19:02) [5]

Огромное Вам спасибо, дай Бог Вам здоровья! =)
Преподаватель яростно выступает против параметров, он у нас со своими убеждениями:(


 
Anatoly Podgoretsky ©   (2010-09-19 19:26) [6]

> Первокурсница  (19.09.2010 19:02:05)  [5]

Плохой человек.


 
sniknik ©   (2010-09-19 21:37) [7]

> Преподаватель яростно выступает против параметров, он у нас со своими убеждениями:(
может у него цель обучить вас писать запросы полностью самостоятельно, "ручками", для начала, чтобы осознать в дальнейшем необходимость использования параметров.

кстати, а против ADOQuery он не возражает?
> Плохой человек.


 
Anatoly Podgoretsky ©   (2010-09-19 21:40) [8]

> sniknik  (19.09.2010 21:37:07)  [7]

Я все осознала, можно мне теперь оптимально писать, с использование
правильных компонент и с использованием параметров?


 
Плохиш ©   (2010-09-19 22:24) [9]

Оставьте ребёнка учиться.



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

Форум: "Начинающим";
Текущий архив: 2010.12.12;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.003 c
15-1283723936
Германн
2010-09-06 01:58
2010.12.12
Иконка контроллера


15-1283754172
brother
2010-09-06 10:22
2010.12.12
Выбор 3G модема


15-1283545776
Юрий
2010-09-04 00:29
2010.12.12
С днем рождения ! 4 сентября 2010 суббота


4-1241873558
pushkin42
2009-05-09 16:52
2010.12.12
Получить список файлов драйвера для устройства


2-1284621331
JohnKorsh
2010-09-16 11:15
2010.12.12
Можно ли средствами Delphi создать WiFi Ad-Hock сеть?





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