|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
29.10.2008, 19:03 | #1 |
Пользователь
Регистрация: 29.10.2008
Сообщений: 87
|
Почему не робит??
rocedure TForm2.BitBtn1Click(Sender: TObject);
var Family: String[15]; Nam: String[15]; Otch: String[15]; Profession: String[50]; TabNom: String[5]; sqlstring: String; begin Family := Edit1.Text; Nam := Edit2.Text; Otch := Edit3.Text; Profession := ComboBox1.Text; TabNom := Edit4.Text; sqlstring := 'INSERT INTO Spisok (%s, %s, %s, %s, %s) VALUES (TabN, Fam, Name, Ot, Prof)' ; Table1.Tablename := 'Spisok'; Table1.Active := True; Query1.Close; Query1.SQL.Clear; Query1.SQL.add (Format (sqlstring, [ TabNom, Family, Nam, Otch, Profession ] ) ); Query1.ExecSQL; end; |
29.10.2008, 20:51 | #2 |
Форумчанин
Регистрация: 07.08.2007
Сообщений: 154
|
Потому что в запросе сначала идут имена полей, а уж потом их значения. Да и строки надо заключать в кавычки.
|
29.10.2008, 21:08 | #3 |
Пользователь
Регистрация: 29.10.2008
Сообщений: 87
|
Блин, уже замучился, сначала поля поставлю: жалуется на неправильное имя поля, так поставлю: жалуется на кейворд. Всяко эксперементировал не робит и все. Могет кто поправит, если не сложно конечно.
|
29.10.2008, 21:18 | #4 |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
Query1.SQL.Text:='INSERT INTO Spisok (TabNom, Family, Nam, Otch, Profession) VALUES ('+
QuotedStr(TabN)+', '+QuotedStr(Fam)+', '+QuotedStr(Name)+', '+QuotedStr(Ot)+', '+QuotedStr(Prof)+')'; |
29.10.2008, 21:46 | #5 |
Пользователь
Регистрация: 29.10.2008
Сообщений: 87
|
Cannot perform this operation on an open dataset!
как быть? имена полей с переменными уже поменял т.к. сначала поля а потом переменные (вродебы) |
29.10.2008, 22:33 | #6 | |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
Цитата:
Query1.SQL.Text:=....... Query1.ExecSQL; |
|
30.10.2008, 17:32 | #7 |
Пользователь
Регистрация: 29.10.2008
Сообщений: 87
|
Query1.SQL.Text:='INSERT INTO Spisok (TabN, Fam, Name, Ot, Prof) VALUES ('+
QuotedStr(TabNom)+', '+QuotedStr(Family)+', '+QuotedStr(Nam)+', '+QuotedStr(Otch)+', '+QuotedStr(Profession)+')'; Вот так сробило спасибо mihali4! |
30.10.2008, 19:02 | #8 |
Пользователь
Регистрация: 29.10.2008
Сообщений: 87
|
А вот еще запрос: я хотел получить максимальное значения поля из столбца Nvopr при значении Glava допустим 5
Query1.Close; Query1.SQL.Clear; Query1.SQL.Add('SELECT MAX (Nvopr) FROM Vopros WHERE Glava = 5'); Query1.Open; maxnvopr:= Table1.FieldValues ['Nvopr']; НО мне возвращается значение maxnvopr=0 |
30.10.2008, 20:17 | #9 |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
maxnvopr:= Query1.Fields[0].Value;
|
30.10.2008, 20:24 | #10 |
Пользователь
Регистрация: 29.10.2008
Сообщений: 87
|
mihali4 респект тебе и уважуха!!!!
|
|
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
почему не работает | domovoi | Общие вопросы Delphi | 1 | 15.10.2008 18:42 |
почему не находит??? | vipER | Общие вопросы C/C++ | 1 | 26.09.2007 14:26 |
Почему? | Sota | О форуме и сайтах клуба | 4 | 26.07.2007 16:26 |
Почему так? | Сильванович Михаил | Общие вопросы C/C++ | 2 | 03.07.2007 11:57 |