Форум: "Базы";
Текущий архив: 2004.12.26;
Скачать: [xml.tar.bz2];
Внизформат DateTime в MySQL5 и в Delphi5.5. Найти похожие ветки
← →
Chery (2004-11-26 19:28) [0]Что-то не сопоставляются форматы DateTime в MySQL5 и в Delphi5.5.
Там где использую DateTime не идет транзакция, как только убираю DateTime - все нормально.
← →
Артем1 (2004-11-28 12:24) [1]в МайсСкл дата хранится в формате ГГГГ-ММ-ДД, а в Д по умолчанию ДД-ММ-ГГГГ, нужно использовате преобразование дат, с пом функций форматдате или датеформат, преобразование даты в строку...
← →
Term (2004-11-28 19:42) [2]ты дату в запрос через параметры передаеШ??? тогда никаких проблем не должно быть,
> нужно использовате преобразование дат, с пом функций форматдате
> или датеформат, преобразование даты в строку...
а это если ты дату пишеш в самом запросе тогда да иначе будут вылетать эксэпшэны
← →
Chery (2004-11-29 10:28) [3]Ага, спасибо. А как в Делфи перевисти Дату в 32-битное целое число в виде Unix timestamp.
← →
Chery (2004-11-29 11:52) [4]Я задаю в Делфи дату (дд.мм.гггг) и сохраняю ее в базу МуСКЛ, ApplyUpdates(-1); На сервере:
insert into Prikaz_Student
(Kod_Stud, N_Prikaza, Dte_Prikaza, Kod_Prikaza)
values
(:Kod_Stud, :N_Prikaza, :Dte_Prikaza, :Kod_Prikaza)
И из-за даты не апдейтит. Формат даты в базе DATETIME.
← →
Chery (2004-11-29 12:24) [5]Артем1,
Пробовал явно задать (ГГГГ-ММ-ДД):
clPrikaz_Student.FieldByName("Dte_Prikaza").AsVariant:="2004.01.11";
Но тоже самое - не апдейтит.
И второй вопрос: Можно ли средствами Делфи перевести дату в Unix timestamp (удобный для МуСКЛ и ПХП формат)? Может я так решу этот трабл.
← →
Chery (2004-11-29 13:19) [6]FormatDateTime - возвращает Стринг. А мне надо дата, только в формате ГГГГ-ММ-ДД.
← →
sniknik © (2004-11-29 13:59) [7]> А мне надо дата, только в формате ГГГГ-ММ-ДД.
ктото просто бредит...
неужели нельзя посмотреть исходный тип дататайма? и какой такой у него формат задаваемый строкой? люди!!! ну попытайтась понять, число это не строка у него нет формата! есть только форма представления/преобразования (из той же строки). не можете понять ну хоть поверьте на слово, не врут же вам.
http://delphimaster.net/view/3-1101467614/
какой формат у числа 1000000 например?
а если я его задам строкой?
так 1 000 000 или так 1000000.00 или так 1.000.000,00 или еще както, ну число то от этого не изменится...
или вы о том в каком типе представлено? тогда другое дело double от extended отличаются (если не было переопределения типов), но речь о количестве байт в типе а не о формате! (минусов или точек между байтами нет!!! верьте мне)
← →
Chery (2004-11-29 18:52) [8]Хорошо, дело не в типах. Дело в том почему у меня не апдейтится?
Я уже пробывал с ГГГГ-ММ-ДД. Разницы никакой.
Вобщем вот:
ДБГрид, DataSource1, ClientDataSet1.
После Пост делаю апдейт: clPrikaz_Student.ApplyUpdates(-1);
На сервере вставляю:
insert into Prikaz_Student
(Kod_Stud, N_Prikaza, Dte_Prikaza, Kod_Prikaza)
values
(:Kod_Stud, :N_Prikaza, :Dte_Prikaza, :Kod_Prikaza)
Не работает (не добавляет), но когда в BeforePost пишу
clPrikaz_Student.FieldByName("Dte_Prikaza").AsVariant:=Null;
То работает. Формат поля даты в базе DATETIME. СУБД: MySQL5, драйвер MyODBC-3.51.10.
← →
sniknik © (2004-11-29 20:55) [9]> Хорошо, дело не в типах
именно в типах... и очень плохо что их не различаеш, строку с датой путаеш.
> Я уже пробывал с ГГГГ-ММ-ДД. Разницы никакой.
забудь про ГГГГ-ММ-ДД и про ММ-ДД-ГГГГ и про .... остальное того же плана... плана (? хм. ну если только план хороший ;о)))
> Не работает (не добавляет), но когда в BeforePost пишу
> clPrikaz_Student.FieldByName("Dte_Prikaza").AsVariant:=Null;
> То работает. Формат поля даты в базе DATETIME.
раз так работает то и так должно
clPrikaz_Student.FieldByName("Dte_Prikaza").AsDate[Time]:= переменная DateTime;
← →
Chery (2004-11-30 10:30) [10]Нет, не хочет так:
clPrikaz_Student.FieldByName("Dte_Prikaza").AsDateTime:= 11/11/2004;
← →
sniknik © (2004-11-30 11:11) [11]11 деленное на 11 и деленное на 2004... с чего бы ему хотеть? (кстати вполне легальная дата будет гдето в районе 30.12.1899 0:00:43)
я же ясно написал "переменная DateTime" а не то что ты под этим желаеш видеть (то строку, то бред какойто), не находиш что надо бы книжек почитать? по основам хотябы.
← →
Chery (2004-11-30 11:37) [12]clPrikaz_Student.FieldByName("Dte_Prikaza").AsDateTime:=Now;
А так?
← →
sniknik © (2004-11-30 12:21) [13]вот так должно работать, эта (!!! только эта) строчка правильная.
но подозреваю у тебя и оно не работает, судя по некоторым признакам (очень уж после ответа "да так", напрашивается фраза "а вот и нет, так тоже не хочет", зачем этот вопрос нужен вместо проверки), но раз так то виноват в этом уже другой код. (!!!)
вообше непонятно что и как ты делаеш, зачем к примеру инсерт в BeforePost ([8]), какая связь, какие компоненты, зачем ClientDataSet и сервер(упоминалось), трехзвенка? но тогда где его код и структура? и почему нет провайдера данных в списке используемого.
неясностей много, а ты даже сообщение об ошибке не приводиш ("Нет, не хочет так:" это извини еще один бред, кто не хочет? чего не хочет? кого? и почему?)...
еще раз, возми книгу по базам, почитай (хотя бы для того чтобы вопросы осмыссленно задавать).
← →
Chery (2004-11-30 14:16) [14]Ошибки не выдает, все нормально, тока не записывается в базу. Я подключаюсь к БД в Access (анологичная БД) - все работает. Я думал, может что-то с MySQL - ничего не могу понять, может у кого-то подобное было уже.
← →
Anatoly Podgoretsky © (2004-11-30 14:56) [15]Что-то не сопоставляются форматы DateTime в MySQL5 и в Delphi5.5.
А никак они и сопостовлять не могут, поскольку такого продукта, как Delphi5.5 просто не существует в природе.
← →
Chery (2004-11-30 16:59) [16]Хорошо, не правильно оперирую понятиями. Но проблема осталась.
← →
sniknik © (2004-11-30 20:38) [17]ну так научись правильно оперировать, а то ведь не понять тебя.
← →
Chery (2004-12-02 13:53) [18]Значит Вы с таким не сталкивались?
В БД MySQL, в ячейки (поля) формата DateTime, Date, TimeStamp не могу вставить данные с Делфы. Ошибки не выдает. Как мне хотя бы отловить эту "непонятку" ?
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2004.12.26;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.047 c