Query: Insert
КАК надо написать sql что бы внести запись в таблицу.
Я пробовал:
INSERT INTO tablename (field_one, field_two, field_three) VALUES (one, two, three)
INSERT (field_one, field_two, field_three) INTO tablename VALUES (one, two, three)
прога ругается.
Помогите, плиз.
КАК надо написать sql что бы внести запись в таблицу.
Я пробовал:
INSERT INTO tablename (field_one, field_two, field_three) VALUES (one, two, three)
INSERT (field_one, field_two, field_three) INTO tablename VALUES (one, two, three)
прога ругается.
первый вроде нормальный.
может ругаться по разным причинам. например несоответствие типов данных или имя поля является ключевым словом SQL, итд...
иногда строка может содержать апостроф, поэтому такие строки лучше добавлять в SQL выражение (компонента TQuery?) с помощью ф-ии QuotedStr()
INSERT INTO tablename (field_one, field_two, field_three) VALUES (one, two, three)
Здесь все правильно, единственное непонятно - что конкретно ты пишешь вместо one, two, three? (Именно тут ошибка и кроется, скорее всего).
Помогите, плиз.
КАК надо написать sql что бы внести запись в таблицу.
Я пробовал:
INSERT INTO tablename (field_one, field_two, field_three) VALUES (one, two, three)
INSERT (field_one, field_two, field_three) INTO tablename VALUES (one, two, three)
прога ругается.
А что сообщение об ошибке абсолютно не информативно, поэтому нет смысла приводить, так что ли?
А что сообщение об ошибке абсолютно не информативно, поэтому нет смысла приводить, так что ли?
Компилятор говорит что то вроде:
wrong use of token: tablename
ему не нравится уже то что после INSERT идёт!
Я тут пробую подругому вставить:
table1->AppendRecord(ARRAYOFCONST((Edit1->Text, Edit2->Text, Edit3->Text)));
Когда параметров мало всё нормально, но когда их около 30 начинает ругатся, что то вроде тип не найден.
Есть ли ограничения на количество параметров?
Я тут пробую подругому вставить:
table1->AppendRecord(ARRAYOFCONST((Edit1->Text, Edit2->Text, Edit3->Text)));
Когда параметров мало всё нормально, но когда их около 30 начинает ругатся, что то вроде тип не найден.
Есть ли ограничения на количество параметров?
Ограничения существуют на количество элементов макроса-массива ARRAYOFCONST
Именно "около 30", или меньше. На количество поле таблицы, уж во всяком случае больше 30.
Компилятор говорит что то вроде:
wrong use of token: tablename
ему не нравится уже то что после INSERT идёт!
Ошибка не связана с синтаксисом SQL. Скорее всего какоето свойство компонента или неверно вызываемый метод.
Сложно сказать. В таких случаю, когда непонятна причина ошибки, может компонент глючный, я задаю какие-нибудь известные ошибки и знаю какие в этом случае должны быть сообщения. Что называется провоцирую ошибки, иногда помогает разобраться глюк это или моя ошибка.
Table->Append();
Table->FieldValue["field_one"] = Edit1->Text;
...
Table->Post();
От query пришлось отказаться.
Всем спасибо