webForumDet fria alternativet

SQL och datum?

3 svar · 661 visningar · startad av Quid

QuidMedlem sedan juni 20004 270 inlägg
#1

Jag sitter och försöker få datum att fungera med SQL, jag har ett fält där jag skriver "2009-02-30", som jag sen vill ha in i databasen. Fältet i databasen är av typen "SmallDateTime", men jag får inte det att funka.

Min fråga ser ut så här nu:

SQL = "INSERT INTO Account (f_CustomerID, f_AccountID, f_Server, f_Login, f_Password, f_BillingPeriod, f_BillingNext, f_Active)
VALUES ('"& Request.Form("i_CustomerID") &"', '"& Request.Form("i_AccountID") &"', '"& Request.Form("i_Server") &"','"& Request.Form("i_Login") &"', '"& Request.Form("i_Password") &"', '"& Request.Form("i_BillingPeriod") &"', '#"& Request.Form("i_BillingNext") & " 00:00:00"  &"#', 'yes')"

Felet jag får är:
[Microsoft][ODBC SQL Server Driver][SQL Server]Conversion failed when converting character string to smalldatetime data type.

Ska det vara # runt? Måste jag konvertera det på något sätt? Jag har väl fält-typ i databasen? Jag blir galen :)

@ndersMedlem sedan juni 200026 914 inlägg
#2

När man använder SQL Server ska det vara apostrofer runt datum. Det är bara Access som vill ha brädgårdar.

.... '"& Request.Form("i_BillingNext") & " 00:00:00' ....

Glöm inte sql injections...

QuidMedlem sedan juni 20004 270 inlägg
#3

Tack, saken blev ju inte lättare av att jag testade med "2009-02-30" som inte ens finns :D

LarsGMedlem sedan dec. 200012 465 inlägg
#4

Flyttad från ASP

Genererad på 383 ms · cache AV · v20260730165559-full.f96bc7eb