Я имел в виду передачу строк в качестве дат в базу данных, потому что даты часто являются строками, происходящими из веб-формы. но, признался, я могу проверить это только для сервера SQL. При передаче строки данных в формате ISO в запросе SQL-сервер всегда будет интерпретировать ее правильно. Но вы совершенно правы, что команда cdate и ADODB - лучший путь.

я есть VBscript, который запрашивает базу данных, чтобы получить данные, которые основаны на смене EG. Кладбище, день и качели. Мне нужно отрегулировать время на час меньше только в дни, прошедшие 1-6-2019. Я новичок в программировании и мне нужна помощь с моей логикой.

Решением, которое я попробовал, является расширение моего оператора if и добавление функции AND, но это не сработает, потому что первый оператор if все еще имеет значение true.

dim intCoilCount, intTotalSeconds,intSeconds,strDate,strShift

'SQL="select timeStamp, coil_number, entry_gaptime,thickness,width_in,grade from TABLEEEE by timeStamp"
strShift=Request.Form("SHIFT")
strDate=Request.Form("StartDate")

'if date is greater than 2-22-2006 (switchover date) use SCALEFACTOR
'-----start-----------------
if datediff("d",strDate,cdate("2/22/2006")) <= 0 then
  SCALEFACTOR=30000.0 / 50.0
else
  SCALEFACTOR=1
end if

'-----end-----------------

'Fixed scale factor problem
'-----start-----------------
SCALEFACTOR=1
'-----end-----------------

SQL="select timeStamp, coil_number, entry_gaptime,thickness,width_in,grade from entryCoilData" 
if strShift="graveyard" then
    SQL = SQL & " where timestamp > '" & cdate(strDate)-1 & " " & "11:00PM" & "'" & _
                " and timestamp <= '" & strDate & " " & "7:00AM" & "'"

elseif strShift="graveyard" and strDate >= cdate(1-6-2019) then
    SQL = SQL & " where timestamp > '" & strDate & " " & "10:00AM" & "'" & _
                " and timestamp <= '" & strDate & " " & "2:00PM" & "'"

elseif strShift="day" then
    SQL = SQL & " where timestamp > '" & strDate & " " & "7:00AM" & "'" & _
                " and timestamp <= '" & strDate & " " & "3:00PM" & "'"

elseif strShift="day" and strDate >= cdate(1-6-2019) then
    SQL = SQL & " where timestamp > '" & strDate & " " & "7:00AM" & "'" & _
                " and timestamp <= '" & strDate & " " & "3:00PM" & "'"

else
    SQL = SQL & " where timestamp > '" & strDate & " " & "3:00PM" & "'" & _
                " and timestamp <= '" & strDate & " " & "11:00PM" & "'"
end if

Ответы на вопрос(1)

Ваш ответ на вопрос