Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.10.2013, 17:18   #1
Aleksandr
Форумчанин
 
Регистрация: 22.05.2007
Сообщений: 511
По умолчанию Добавить запись в базу с помощью запроса.

Как добавить запись с помощью запроса. Я делаю
Код:
Query1.SQL.Text := 'INSERT INTO avtor (fam, pas, spec, close) Values (01, 9600, 45, 1);
, но не получается
Aleksandr вне форума Ответить с цитированием
Старый 14.10.2013, 17:49   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Теоретически запрос верен.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 14.10.2013, 18:19   #3
grominfo
Форумчанин
 
Аватар для grominfo
 
Регистрация: 30.05.2011
Сообщений: 651
По умолчанию

А вы ExecSQL вызываете? Ну это я так спросил, чтобы проверить все версии )))

--------------

Кстати, название поля "close" - зарезервированное слово

http://www.taurion.ru/access/8/31
Создание, программирование и сопровождение сайтов любой сложности.
Изготовление программ на заказ.
Список услуг и портфолио на сайте www.andreygrom.ru

Последний раз редактировалось grominfo; 14.10.2013 в 18:25.
grominfo вне форума Ответить с цитированием
Старый 14.10.2013, 18:34   #4
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

ТС, кода побольше нужно дать, что бы видно всю операцию вставки, указать какая СУБД, неплохо структуру таблицы, чтобы типы полей увидеть, и самое главное - что не получается, полный текст сообщения об ошибке. Вроде на форуме 6 лет, а вопрос как новичок задаете
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 14.10.2013, 18:48   #5
Aleksandr
Форумчанин
 
Регистрация: 22.05.2007
Сообщений: 511
По умолчанию

Ни какой ошибки нет, а запись не добавляется
Код:
procedure TMainForm.Button3Click(Sender: TObject);
begin
zQuery1.SQL.Clear;
zQuery1.SQL.Add ('INSERT INTO avtor (fam, pas, spec, close) Values (01, 9600, 45, 1)');
zQuery1.ExecSQL;
end;
Изображения
Тип файла: jpg база.jpg (87.9 Кб, 131 просмотров)

Последний раз редактировалось Aleksandr; 14.10.2013 в 18:58.
Aleksandr вне форума Ответить с цитированием
Старый 14.10.2013, 18:53   #6
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

И это все? Писали уже - где zQuery1.ExecSQL или какой там аналог у вашего компонента? И структуру покажите - думаю что fam это фамилия и не нравится 01 (чито это?), которую в это поле присваиваете. Была бы структура - не нужно было бы гадать на кофейной гуще

ADD У вас там 3 поля символьных, а присваиваете числа. Не порядок
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию

Последний раз редактировалось Аватар; 14.10.2013 в 18:59.
Аватар вне форума Ответить с цитированием
Старый 14.10.2013, 19:02   #7
Aleksandr
Форумчанин
 
Регистрация: 22.05.2007
Сообщений: 511
По умолчанию

Спасибо действитльно забыл zQuery1.ExecSQL;
Aleksandr вне форума Ответить с цитированием
Старый 14.10.2013, 22:52   #8
Aleksandr
Форумчанин
 
Регистрация: 22.05.2007
Сообщений: 511
По умолчанию

А как добавить запись если дата и время берутся текущие. Пробовал с параметром, но чтото не получилось
Код:
var
d1,d2: TDateTime;
begin
zQuery1.SQL.Clear;
zQuery1.SQL.Add ('INSERT INTO base (Date_posting, Time_posting, num, Massa, Name, Image, Com, BaudRate, Organization, Location, IP, Note, Model, Equopment, Linkey, Stable_weight, Image_kamera)'+' Values (''2013-10-14 00:00:00'',''1899-12-30 22:39:00'', 1, 9600, ''gdfyd'',''image'', 4001, 9600, ''Организация'', ''ffff'', ''192.168.4.90'', ''erter'', ''ìrterte'', ''fdgf'', 3, 1, 1)');
d1:=Trunc(DateToStr(now));
d2:=frac(timeToStr(now));
zQuery1.Params.ParamByName('date1').Value:=d1;
zQuery1.Params.ParamByName('date2').Value:=d2;
zQuery1.ExecSQL;

Код:
var
d1,d2: TDateTime;
begin
zQuery1.SQL.Clear;
zQuery1.SQL.Add ('INSERT INTO base (Date_posting, Time_posting, num, Massa, Name, Image, Com, BaudRate, Organization, Location, IP, Note, Model, Equopment, Linkey, Stable_weight, Image_kamera)'+' Values (''2013-10-14 00:00:00'',''1899-12-30 22:39:00'', 1, 9600, ''gdfyd'',''image'', 4001, 9600, ''Организация'', ''ffff'', ''192.168.4.90'', ''erter'', ''ìrterte'', ''fdgf'', 3, 1, 1)');
//d1:=Trunc(DateToStr(now));
//d2:=frac(timeToStr(now));
//zQuery1.Params.ParamByName('date1').Value:=d1;
//zQuery1.Params.ParamByName('date2').Value:=d2;
zQuery1.ExecSQL;
Структура базы
Изображения
Тип файла: jpg база.jpg (109.2 Кб, 133 просмотров)
Aleksandr вне форума Ответить с цитированием
Старый 15.10.2013, 02:03   #9
Dozent
Форумчанин
 
Регистрация: 21.05.2008
Сообщений: 495
По умолчанию

НУ смотрите вы пытаетесь полю типа DateTime передать дату переделанную в строку, вот тут точно будет ошибка...

Код:
zQuery1.Params.ParamByName('date').Value:=Date;
zQuery1.Params.ParamByName('time').Value:=Time;
Вот так должно сработать...
НУ или в запросе написать вместо параметов

Код:
.., curentdate, curenttime
не пойму какую СУБД используется MySQL вроде?

http://dev.mysql.com/doc/refman/5.5/...nction_curdate
Dozent вне форума Ответить с цитированием
Старый 15.10.2013, 09:01   #10
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Код:
zQuery1.Params.ParamByName('date1').Value:=d1;
zQuery1.Params.ParamByName('date2').Value:=d2;
в строке запроса должны быть параметры
Код:
:date1 
:date2
иначе ничего не выйдет.
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Запись в базу dudeden PHP 2 06.07.2012 17:39
Запись в базу makcim-athlete PHP 6 26.08.2011 19:34
Немогу добавить даниэ в базу amator_roma Помощь студентам 2 25.11.2010 10:50
Добавить в автозапуск с помощью С++ urus-shaitan Помощь студентам 0 04.01.2010 14:28
Возникла проблема в программировании SQL запроса с помощью компонента TQuery Herly БД в Delphi 23 07.11.2009 18:16