Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / смена формата даты в vb 6.0 / 7 сообщений из 7, страница 1 из 1
18.05.2011, 00:26
    #37266116
epifreezz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
смена формата даты в vb 6.0
Работаю с бд на MYSQL используя VB 6.0

В общем я использую элемент Datapicker. При помощи него я передаю выбранную дату в текстовое поле, а уже из текстового поля
дата записывется в бд.

В принципе вроде как настроил отображемый формат даты в Datapicker (yyyy-mm-dd) , но переданная дата в тексовом поле всеравно отображается в стандартном формате (dd.mm.yyyy)

Проблема в том что в формат даты в MYSQL таков (yyyy-mm-dd). И при записи в бд даты формата (dd-mm-yyyy) дата записывается не правильно.К примеру записываю в Бд такую дату(17.05.2011), там же (в БД) этаже дата записывается в виде (20.05.2004 или 2008 или другой год)


[1] Коректное отображение даты можно сделать выполнив настройку в панеле управления / язык и региональные стнадарты
После этой настройки вроде как всё нормально.


Так вот сам вопрос: можно как-то программным спсобом сменить формат даты в VB 6.0.Тоесть что б в тектовом поле (при передачe даты с datapicker )дата отображлась в фомате (yyyy-mm-dd) ? Тоесть не используя пункт [1]
Коректное отображение даты можно сделать выполнив настройку в панеле управления / язык и региональные стнадарты
...
Рейтинг: 0 / 0
18.05.2011, 00:33
    #37266120
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
смена формата даты в vb 6.0
Имеет место быть неправильное понимание сути типов данных. Датапикер возвращает данные не в виде String, а в виде Date - это вообще не текстовый, а числовой формат. Если ты пытаешь каким-то образом посмотреть дату, то (если ты не используешь принудительного форматирования), она у тебя отображается так, как настроено в панели управления в региональных настройках (то есть на разных компах по-разному). Таким образом, нельзя полагаться на автоматическое форматирование даты - нужно форматировать ее принудительно, для этого есть функция Format$. Ты не привел фрагмент кода, иначе бы я тебе сразу дал конечный вариант.
...
Рейтинг: 0 / 0
18.05.2011, 00:37
    #37266128
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
смена формата даты в vb 6.0
Для понимания набери в Immediate:

Код: plaintext
1.
2.
?Now
?Format$(Now, "yyyy-mm-dd")
?Format$(Now, "yyyy hh:nn dd")
...
Рейтинг: 0 / 0
18.05.2011, 01:12
    #37266143
epifreezz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
смена формата даты в vb 6.0
Если под фрагментом кода подразумевалось передача "даты" из datapicker в текстовое поле, то:
Код: plaintext
1.
2.
3.
4.
Private Sub DTPicker1_CloseUp() ' при закрытии DTPicker1 Дата передаётся в тектовое поле
Text1.Text = DTPicker1.Value
End Sub



Shocker.ProДля понимания набери в Immediate:

Код: plaintext
1.
2.
?Now
?Format$(Now, "yyyy-mm-dd")
?Format$(Now, "yyyy hh:nn dd")


а можно пример,а то я не много не понял как использовать функцию Format$ для смены формата отображемой даты в текстовом поле
...
Рейтинг: 0 / 0
18.05.2011, 01:16
    #37266146
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
смена формата даты в vb 6.0
epifreezz
Код: plaintext
1.
2.
Private Sub DTPicker1_CloseUp() ' при закрытии DTPicker1 Дата передаётся в тектовое поле
Text1.Text = Format$(DTPicker1.Value, "yyyy-mm-dd")
End Sub

не очень понятно, правда, причем тут текстовое поле, если ты говоришь о запросе к БД

epifreezzShocker.ProДля понимания набери в Immediate:
Код: plaintext
1.
2.
?Now
?Format$(Now, "yyyy-mm-dd")
?Format$(Now, "yyyy hh:nn dd")


а можно пример,а то я не много не понял как использовать функцию Format$ для смены формата отображемой даты в текстовом полеА это тебе чем не пример?
...
Рейтинг: 0 / 0
18.05.2011, 01:20
    #37266150
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
смена формата даты в vb 6.0
Попробуй понять раз и навсегда:
Ты присваиваешь строковому значению (Text1.Text) значение типа Дата (DTPicker1.Value). VB делает преобразование (а лучше бы он этого не делал, а ругался на тебя за неверное использование типов данных) на свое усмотрение. Если тебе надо КАК ТЫ ХОЧЕШЬ, то выполняй преобразование САМ. Это касается любых разнородных типов данных.
...
Рейтинг: 0 / 0
18.05.2011, 01:39
    #37266161
epifreezz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
смена формата даты в vb 6.0
Shocker.Pro

Спасибо за помошь !
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / смена формата даты в vb 6.0 / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]