Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - .NET

Страница: 1 |

 

  Вопрос: DD.MM.YYYY HH:MM:SS.msc как сохранить в SQL Добавлено: 26.08.06 14:39  

Автор вопроса:  student-uni
Дано


Dim myDat As DateTime = Now


Надо сохранить в MS-SQL как DD.MM.YYYY HH:MM:SS.msc

MSSQL понимает


" INSERT INTO myTab (myField) VALUES ( CONVERT(VARCHAR, '20060826 09:50:53.000', 13 ) ) "


то есть строку '20060826 09:50:53.000'
а в myDat есть дата типа #26/08/2006 09:50:53#

Вопрос:
как же преобразовать в строку ?
или
как записать дату в базу ?

Внизу моё решение, оно лобовое
Буду признателен если кто предложит что по проще

Спасибо


Dim myDat As DateTime = Now

        Dim strDat As String = myDat.Year.ToString
        Dim strMon As String = myDat.Month.ToString
        Dim strDay As String = myDat.Day.ToString
        Dim strHou As String = myDat.Hour.ToString
        Dim strMin As String = myDat.Minute.ToString
        Dim strSec As String = myDat.Second.ToString
        Dim strMsec As String = myDat.Millisecond.ToString

        If strMon.Length = 1 Then
            strMon = "0" + strMon
        End If

        If strDay.Length = 1 Then
            strDay = "0" + strDay
        End If

        Select Case strHou.Length
            Case 0
                strHou = "00"
            Case 1
                strHou = "0" + strHou
            Case 2

        End Select

        Select Case strMin.Length
            Case 0
                strMin = "00"
            Case 1
                strMin = "0" + strMin
            Case 2

        End Select

        Select Case strSec.Length
            Case 0
                strSec = "00"
            Case 1
                strSec = "0" + strSec
            Case 2

        End Select

        Select Case strMsec.Length
            Case 0
                strMsec = "000"
            Case 1
                strMsec = "00" + strMsec
            Case 2
                strMsec = "0" + strMsec
        End Select

        Dim strData As String = ""      
strData = strDat + strMon + strDay + " " + strHou + ":" + strMin + ":" + strSec + "." + strMsec


Ответить

  Ответы Всего ответов: 6  

Номер ответа: 1
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #1 Добавлено: 26.08.06 18:23
В MS SQL есть тип для даты datetime, почему не сохранять в него?

Если используешь DateTime, то дату проще всего вставить через параметры, никаких зависимостей от форматов представляения даты в дотнете и сиквеле.

Ответить

Номер ответа: 2
Автор ответа:
 student-uni



Вопросов: 122
Ответов: 257
 Профиль | | #2 Добавлено: 26.08.06 19:55

В MS SQL есть тип для даты datetime, почему не сохранять в него?



А как это делается ?
Не так :



" INSERT INTO myTab (myField) VALUES ( CONVERT(VARCHAR, '20060826 09:50:53.000', 13 ) ) "



Если используешь DateTime, то дату проще всего вставить через параметры, никаких зависимостей от форматов представляения даты в дотнете и сиквеле.


Параметры не получается
я использую интерфейсы IDBCONNECT, IDBCOMMAND итд
и в завсти от избранной при инсталляции базы
они подключают либо OLEDB либо SQL

Описать параметр через интерфейс не получается

Ответить

Номер ответа: 3
Автор ответа:
 sne



Разработчик Offline Client

ICQ: 233286456 

Вопросов: 34
Ответов: 5445
 Web-сайт: hw.t-k.ru
 Профиль | | #3
Добавлено: 27.08.06 13:31
"INSERT INTO myTab(myField) VALUES(DateValue(" & Now & ";))"

Ответить

Номер ответа: 4
Автор ответа:
 student-uni



Вопросов: 122
Ответов: 257
 Профиль | | #4 Добавлено: 27.08.06 15:20

"INSERT INTO myTab(myField) VALUES(DateValue(" & myDat & ";))"


Не - а !

Incorrect syntax near .2006


Dim myDat As DateTime = Now

"INSERT INTO Monitoring (StartTime) VALUES(DateValue(27.08.2006 13:12:52))"

Ответить

Номер ответа: 5
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #5 Добавлено: 27.08.06 18:18
См про тип полей в БД более подробно, должен быть тип который в определённое поле при инсерте автоматически записывает текущее время.

Ответить

Номер ответа: 6
Автор ответа:
 SHDZ



ICQ: 209382104 

Вопросов: 39
Ответов: 244
 Профиль | | #6 Добавлено: 30.08.06 15:45
ну не совсем тип полей а значение по умолчанию

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам