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

Вниз

Знаки препинания в строке 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;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.008 c
3-1248846292
_drug_
2009-07-29 09:44
2010.12.12
Юзеры в Firebird


2-1285047334
classclass
2010-09-21 09:35
2010.12.12
Простой вопрос по классам


2-1284816217
KuJIoBaT
2010-09-18 17:23
2010.12.12
2 формы на делфи


2-1284656353
Первокурсница
2010-09-16 20:59
2010.12.12
Модификация записей в Access с помощью Delphi


15-1283514271
tesseract
2010-09-03 15:44
2010.12.12
www магазинчики