powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как вставить текущую дату в таблицу mssql?
6 сообщений из 6, страница 1 из 1
Как вставить текущую дату в таблицу mssql?
    #39256053
scorpy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Пытаюсь вставить в поле datetime Now

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
        Dim cn, s
        s = "INSERT INTO statistic ([date]) SELECT " & Now & " As 1;"
        cn = CreateObject("ADODB.Connection")
        cn.ConnectionString = "Provider=SQLOLEDB;Server=srv;Database=DB;Trusted_Connection=yes;Integrated Security=SSPI;Persist Security Info=False"
        cn.open
        cn.execute(s)
        cn.close



Выдается ошибка: неправильный синтаксис около конструкции "2016". Ну эта вечная проблема с датами. Пробую добавить параметр, вроде как с ним дата должна подставиться нормально. Но что-то не получается его создать, те параметры, что работают в Акцессе, в Студии 2015 не принимаются.

Код: vbnet
1.
cn.parameters.append(cn.СreateParameter("@dt", adDate,, Now))



Подчеркивается adDate, если вместо нее поставляю, нарытое в гугле System.Data.OleDb.OleDbType.DBDate, строку не подчеркивает, но при компиляции на ней выскакивает ошибка: "Аргументы имеют неверный тип, выходят за пределы допустимого диапазона или вступают в конфликт друг с другом".

Подскажите как создать правильный параметр, или что еще можно сделать, чтобы преобразовать дату для запроса.
...
Рейтинг: 0 / 0
Как вставить текущую дату в таблицу mssql?
    #39256071
INSERT INTO
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
scorpy, а если так
Код: sql
1.
s = "INSERT INTO statistic ([date]) SELECT getdate()"
...
Рейтинг: 0 / 0
Как вставить текущую дату в таблицу mssql?
    #39256075
Фотография HandKot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в MSSQL стандарт для записи даты YYYY-MM-DD

поэтому просто
Код: vbnet
1.
s = "INSERT INTO statistic ([date]) SELECT '" & format(now, "YYYYMMDD") & "' As 1;"


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

или сделайте как предложил INSERT INTO , только надо учесть, что это будет дата MS SQL сервера, а не дата локального компьютера
...
Рейтинг: 0 / 0
Как вставить текущую дату в таблицу mssql?
    #39256090
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
HandKotчто это будет дата MS SQL сервера, а не дата локального компьютераЧто в 99% случаев логичнее
...
Рейтинг: 0 / 0
Как вставить текущую дату в таблицу mssql?
    #39256100
scorpy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Большое спасибо! Вариант INSERT INTO подошел хорошо и все оказалось просто. Что-то про то, что дату можно выдернуть средствами SQL даже в голову не пришло)

Хоть и все заработало, подскажите еще, как все-таки реализовать это через параметры. Т.е. в каком виде правильно задать параметр в VB для моего случая?
...
Рейтинг: 0 / 0
Как вставить текущую дату в таблицу mssql?
    #39256116
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
scorpyреализовать это через параметры.гугли ADODB.Command
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как вставить текущую дату в таблицу mssql?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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