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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 22.04.2013, 20:04   #1
Ardarik
Пользователь
 
Регистрация: 16.01.2011
Сообщений: 80
По умолчанию Запись строки и датой

Код:
DateSeparator := '-';
  ShortDateFormat := 'yyyy-mm-dd';
Edit1.Text:= DateToStr(Now);
...
procedure TForm3.Button1Click(Sender: TObject);
begin
ADOQuery1.Close;
ADOQuery1.SQL.Text := ('INSERT INTO invoice(`Поставщик`, `Дата`)  VALUES('+(IntToStr(ComboBox1.ItemIndex+1))+', '+Edit1.Text+');');
ADOQuery1.ExecSQL;
ShowMessage('Добавлено');
Form3.close;
end;
Вместо даты 0000-00-00 в базу записывается
Что не так?
Ardarik вне форума Ответить с цитированием
Старый 22.04.2013, 22:02   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Код:
+QuotedStr(Edit1.Text)+
А вообще СУБД укажи. Все зависит от того с чем работаешь.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 22.04.2013, 22:08   #3
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Судя по обратным кавычкам MySQL. А почему бы дату параметризировано не загнать?
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 23.04.2013, 18:32   #4
Ardarik
Пользователь
 
Регистрация: 16.01.2011
Сообщений: 80
По умолчанию

Верно MySQL.
Цитата:
А почему бы дату параметризировано не загнать?
Как?
Ardarik вне форума Ответить с цитированием
Старый 24.04.2013, 08:16   #5
superedward
Форумчанин
 
Аватар для superedward
 
Регистрация: 27.11.2012
Сообщений: 190
По умолчанию

Код:
ADOQuery1.Close;
ADOQuery1.SQL.Text := 'INSERT INTO invoice(`Поставщик`, `Дата`)  VALUES(:fProvider,:fDate)';
ADOQuery1.ParamByName('fProvider').AsInteger:=ComboBox1.ItemIndex+1;
ADOQuery1.ParamByName('fDate').AsDate:=StrToDate(Edit1.Text);
ADOQuery1.Prepare;
ADOQuery1.ExecSQL;
superedward вне форума Ответить с цитированием
Старый 24.04.2013, 17:11   #6
Ardarik
Пользователь
 
Регистрация: 16.01.2011
Сообщений: 80
По умолчанию

необъявленный идентификатор: 'ParamByName' пишет
Ardarik вне форума Ответить с цитированием
Старый 24.04.2013, 17:23   #7
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

А мозгой чуть пошевелить? Используй
ADOQuery.Parameters.ParamByName('им я параметра').Value
Да и вообще на форуме наверно тысяч 10 тем по параметризированным запросам
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 24.04.2013, 18:17   #8
Ardarik
Пользователь
 
Регистрация: 16.01.2011
Сообщений: 80
По умолчанию

Код:
ADOQuery1.Close;
ADOQuery1.SQL.Text := 'INSERT INTO invoice(`Поставщик`, `Дата`)  VALUES(:fProvider,:fDate)';
ADOQuery1.Parameters.ParamByName('fProvider').Value:=ComboBox1.ItemIndex+1;
ADOQuery1.Parameters.ParamByName('fDate').Value:=StrToDate(Edit1.Text);
//ADOQuery1.Parameters.Prepare;
ADOQuery1.ExecSQL;
На AsInteger, AsDate и Prepare, ругался. Дату пишет почему то 2024-04-20
Ardarik вне форума Ответить с цитированием
Старый 25.04.2013, 19:00   #9
Ardarik
Пользователь
 
Регистрация: 16.01.2011
Сообщений: 80
По умолчанию

Почему у меня не правильную дату записывает?
Ardarik вне форума Ответить с цитированием
Старый 25.04.2013, 19:31   #10
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

А как надо?
eval вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
отсутствует взаимосвязь между датой поступления товара и датой отгрузки Forget Microsoft Office Access 0 13.02.2011 14:10
как выбрать строки с пустой датой UNToxa БД в Delphi 2 22.01.2011 16:59
Как реализовать заполнение в ячейке датой последнего редактирования строки? nixelent Microsoft Office Excel 3 15.11.2010 10:22
Как выбрать запись с последней датой? Какой это запрос? Bendebej SQL, базы данных 3 23.03.2010 12:17