vbscript с использованием date () для получения текущей даты выпуска - PullRequest
0 голосов
/ 22 марта 2012

Привет! Я использую в своем скрипте функцию date (), чтобы автоматически получать текущую дату. На форме это показывает отлично, однако, когда это поле со значением даты сохраняется в базе данных MS Access, значение меняется на 6.77751671787457E-05 .... Итак, чтобы заключить в форму, это выглядит так: 22.03.2012 (правильно) и при сохранении в базе данных это выглядит так: 6.77751671787457E-05 (неправильно) .. Любая помощь будет очень признательна.

Ответы [ 4 ]

2 голосов
/ 22 марта 2012

Отформатируйте дату так, чтобы она выглядела так: # гггг-мм-дд чч: мм: сс #, поскольку это единственный формат, который Access может понять:

accessDate="#" &  right("00" & year(date()), 4) & "-" & right("0" & month(date()), 2) & "-" & right("0" & day(date()), 2) & "#"
1 голос
/ 22 марта 2012

Почему бы и нет:

cADO.Execute "INSERT INTO tblmdfUK (txtDateReg, txtCompany) VALUES (Date(), " & truncForm("txtCompanyName") & ")"

Или, лучше, использовать параметры, хотя в этом случае для параметра date не требуется указывать только название компании.

1 голос
/ 22 марта 2012

Если вы сохраняете данные в текстовом поле, перед сохранением лучше использовать cstr ().

0 голосов
/ 23 марта 2012

Это должно работать (обратите внимание на одинарные кавычки, окружающие дату)

cADO.Execute "INSERT INTO tblmdfUK (txtDateReg, txtCompany) VALUES ('" & CStr(date()) & "', " & truncForm("txtCompanyName") & ")"

Я использую этот метод для now () успешно без CStr.Поместите оператор SQL в переменную, чтобы вы могли видеть его в ближайшем окне, и вы увидите проблему:

INSERT INTO tblmdfUK (txtDateReg, txtCompany) VALUES (3/22/2012,
...