Форум программистов, компьютерный форум, киберфорум
Наши страницы
Java и базы данных
Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 18, средняя оценка - 4.67
3Gern
4 / 4 / 4
Регистрация: 20.12.2010
Сообщений: 117
#1

java, mysql и дата - Java БД

03.05.2013, 18:16. Просмотров 3016. Ответов 12
Метки нет (Все метки)

не могу записать корректную дату, после записи сегодняшняя дата в таблице выглядит вот так 20.05.2003? пробовал с JFormattedTextField так:
Java
1
db.setDate(1, (Date)textField.getValue());
так:
http://www.cyberforum.ru/java-database/thread670470.html
Java
1
db.setString(1, textField.getText());
и так с помощью сторонних библиотек(JDatePicker):
Java
1
db.setString(1, ((JTextField)jDataChooser.getDateEditor().getUiComponent()).getText();
но все равно результат один не корректно записанная дата.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.05.2013, 18:16
Я подобрал для вас темы с готовыми решениями и ответами на вопрос java, mysql и дата (Java БД):

Java + дата
Допустим пишу программу расписания для андроид, как лучше сделать чтобы прога...

Java and SQLite (дата)
Привет всем, бьюсь над одной проблемой. Начну сначала. Создаю БД в ней создаю...

Java и MySQL
Здравствуйте! подскажите пожалуйста, почему не удается выбрать БД строчкой use...

Java-интерфейс к БД MySQL
нужно написать интерфейс на java к бд(mysql) с чего мне начать? какие...

Подключение mysql к java
Добрый день, пытаюсь подключить mysql к java и ловлю ошибку на следующей...

12
AckiyBolt
649 / 398 / 35
Регистрация: 19.02.2013
Сообщений: 1,072
Записей в блоге: 2
03.05.2013, 18:20 #2
а какой тип у вас имеет столбец в БД?
1
3Gern
4 / 4 / 4
Регистрация: 20.12.2010
Сообщений: 117
03.05.2013, 18:25  [ТС] #3
Цитата Сообщение от AckiyBolt Посмотреть сообщение
а какой тип у вас имеет столбец в БД?
извиняюсь забыл написать, тип date
1
AckiyBolt
649 / 398 / 35
Регистрация: 19.02.2013
Сообщений: 1,072
Записей в блоге: 2
03.05.2013, 18:29 #4
а. ну так оно и сохраняет то что и должно)
поставьте тип колонки DATETIME и будет вам счастье =)

http://phpclub.ru/mysql/doc/datetime.html первые абзацы

апд. если я конечно правильно врубился в проблему
0
3Gern
4 / 4 / 4
Регистрация: 20.12.2010
Сообщений: 117
03.05.2013, 18:34  [ТС] #5
Цитата Сообщение от AckiyBolt Посмотреть сообщение
а. ну так оно и сохраняет то что и должно)
поставьте тип колонки DATETIME и будет вам счастье =)

http://phpclub.ru/mysql/doc/datetime.html первые абзацы

апд. если я конечно правильно врубился в проблему
так тоже не получилось пробовал, только что еще раз попробовал не получилось, выдает вот это 20.05.2003 13:00:00 вместо 03.05.2013
1
AckiyBolt
649 / 398 / 35
Регистрация: 19.02.2013
Сообщений: 1,072
Записей в блоге: 2
03.05.2013, 18:37 #6
а-а... это уже интересней

поменяйте вот это:
Java
1
db.setDate(1, (Date)textField.getValue());
на вот такое:
Java
1
2
3
System.out.println(textField.getValue());
System.out.println((Date)textField.getValue());
db.setDate(1, (Date)textField.getValue());
запостите то, что вводите, что появилось в консоли и что записалось в БД
1
3Gern
4 / 4 / 4
Регистрация: 20.12.2010
Сообщений: 117
03.05.2013, 19:05  [ТС] #7
Цитата Сообщение от AckiyBolt Посмотреть сообщение
а-а... это уже интересней

поменяйте вот это:
Java
1
db.setDate(1, (Date)textField.getValue());
на вот такое:
Java
1
2
3
System.out.println(textField.getValue());
System.out.println((Date)textField.getValue());
db.setDate(1, (Date)textField.getValue());
запостите то, что вводите, что появилось в консоли и что записалось в БД
странно теперь выдает что не может перевести дату java.util.Date cannot be cast to java.sql.Date, щяс погуглю.

Добавлено через 14 минут
все решил проблему.
1
AckiyBolt
649 / 398 / 35
Регистрация: 19.02.2013
Сообщений: 1,072
Записей в блоге: 2
03.05.2013, 19:12 #8
так а в чем она была?
0
3Gern
4 / 4 / 4
Регистрация: 20.12.2010
Сообщений: 117
03.05.2013, 19:24  [ТС] #9
Цитата Сообщение от AckiyBolt Посмотреть сообщение
так а в чем она была?
собственно вот ошибка: java.util.Date cannot be cast to java.sql.Date mysql
сделал вот так:
java.util.Date date = (java.util.Date) txt_dateDocIssue.getValue();
java.sql.Date mySqlDate = new java.sql.Date(date.getTime());
pst.setDate(1, mySqlDate);
если я правильно понял то mysql не понимал тот формат которую записываю нужно было ее перевести.
0
AckiyBolt
649 / 398 / 35
Регистрация: 19.02.2013
Сообщений: 1,072
Записей в блоге: 2
03.05.2013, 19:37 #10
так а в базу то пишется?
1
3Gern
4 / 4 / 4
Регистрация: 20.12.2010
Сообщений: 117
03.05.2013, 19:59  [ТС] #11
Цитата Сообщение от AckiyBolt Посмотреть сообщение
так а в базу то пишется?
то что нужно пишется (03.05.2013), тип оставил date.
0
mutagen
2564 / 2237 / 257
Регистрация: 14.09.2011
Сообщений: 5,185
Записей в блоге: 18
03.05.2013, 23:05 #12
проблема в смешивании 2 классов java.sql.Date и java.util.Date с ними надо работать через метод getTime который вернёт милисекунды и конструировать из них явно нужный тип а не пытаться кастить
http://www.cyberforum.ru/java/thread458505.html

Не по теме:

думаю надо это в FAQ вкинуть

0
AckiyBolt
649 / 398 / 35
Регистрация: 19.02.2013
Сообщений: 1,072
Записей в блоге: 2
04.05.2013, 03:41 #13
Цитата Сообщение от mutagen Посмотреть сообщение
думаю надо это в FAQ вкинуть
ага. в ждбс
0
04.05.2013, 03:41
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.05.2013, 03:41
Привет! Вот еще темы с решениями:

Java+mySQL+russian
традиционная тема. пересмотрел кучу постов на форумах. решение с set names ни...

JAVA+Glasfish+MySQL
Вот код : package testjdbc; import java.sql.Connection; import...

Java и mysql, connection
Всем привет. Собственно подключил через идею мускул, все ок , таблицы видит (...

Коннект с MySQL из Java
Доброго времени суток! Скачал коннектор MySQL с оф. сайта, подключил, имеется...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru