Я довольно новичок в кодировании и SQL. У меня есть следующий (часть) кода, который работает, но даты должны передаваться как параметр. Как мне это сделать?Дата передачи SQL в качестве параметра?
sqlStr = "DECLARE @MYDATE DATETIME, @MYDATE2 DATETIME"
sqlStr &= " SET @MYDATE = '" & fromDate.ToString("MM-dd-yyyy") & "'" & ""
sqlStr &= " SET @MYDATE2 = '" & toDate.ToString("MM-dd-yyyy") & "'" & ""
Dim da As New SqlDataAdapter(sqlStr, conn)
ds = New DataSet
da.Fill(ds, "DevLog")
da.Dispose()
Return ds
мне нужно сделать что .ToString
операцию, так как даты, поступающие от системы являются xx.xx.xxxx (fi-FI)
и не xx-xx-xxxx (en-US)
, как SQL хотят это их (черт ... :) американцев).
Итак, я хочу передать эти даты как параметр SQL, например @fromDate = fromDate
, но поскольку я новичок в кодировании и SQL вообще, мне нужна помощь. Где и как вставить?
command.parameters.Add(@fromDate, DATETIME)
command.parameters.Add(@toDate, DATETIME)
EDIT: Извините, я допустил ошибку. На самом деле то, что я Мента сказать было:
command.parameters.Add("@toDate", SqlDbType.DateTime).Value = toDate
я должен каким-то образом передать FromDate и Todate, как правильные параметры DATETIME образуют в SQL строку (@fromdate и @toDate), а не так, как я делаю это сейчас ... как преобразование ToString.
@Saagar Элиас Jacky
sqlStr = "DECLARE @MYDATE DATETIME, @MYDATE2 DATETIME"
sqlStr &= " SET @MYDATE = '" & fromDate.ToString("MM-dd-yyyy") & "'" & ""
sqlStr &= " SET @MYDATE2 = '" & toDate.ToString("MM-dd-yyyy") & "'" & ""
sqlStr &= " SELECT FixedDate, persons.FirstName, persons.lastName, TimeStampRecord, HoursSpent, HoursSpentRow, HoursSpentType"
sqlStr &= " FROM DevLog"
sqlStr &= " INNER JOIN Persons ON DevLog.OwnerUserID=Persons.UserID"
sqlStr &= " WHERE TimeStampRecord=1"
sqlStr &= " AND FixedDate BETWEEN @MYDATE AND @MYDATE2"
Почему вы используете DECLARE заявление и где эти переменные используются в БД? –
Даты не имеют формата, американского или иного. Однако они отображаются людям в различных форматах. Большей проблемой будет то, что SQL вы добавляете или вставляете? – Plutonix
Вот вся строка SQL: – finjay