Avatar billede saudoo Nybegynder
20. januar 2007 - 14:40 Der er 8 kommentarer og
1 løsning

Syntax error in date

Hej eksperten.dk

Jeg har et lille problem, som sikkert er meget simpelt. :)

Jeg har prøvet at skrive en dato med funktionen Now() til en kolonne i min Access database, men på min server hos NeedHost.dk gider den ikke rigtigt. Modsat på min egen computer kommer den med en fejl.

Min SQL ser således ud:
strSQL = "INSERT INTO tblOrdrer " & _
        "(fldNavn, fldAdresse, fldPostNr, fldBy, fldTlf, fldEmail, fldSet, fldAfsendt, fldDato) " & _
        "Values" & _
        "('" & Pro.Navn & "','" & Pro.Adresse & "'," & Pro.PostNr & ",'" & Pro.By & "'," & Pro.Tlf & ",'" & Pro.Email & "',0,0,#" & Now() & "#)"


Jeg håber i kan hjælpe mig. :)
Tak
Avatar billede kalp Novice
20. januar 2007 - 15:06 #1
hvis det er mssql så skal jeg se din connection, sqlcommand og i hvertfald lidt mere kode.. så kan jeg hjælpe dig..

men i hvertfald skal du helt ellers må du forsøge dig med denne

strSQL = "INSERT INTO tblOrdrer " & _
        "(fldNavn, fldAdresse, fldPostNr, fldBy, fldTlf, fldEmail, fldSet, fldAfsendt, fldDato) " & _
        "Values" & _
        "('" & Pro.Navn & "','" & Pro.Adresse & "'," & Pro.PostNr & ",'" & Pro.By & "'," & Pro.Tlf & ",'" & Pro.Email & "',0,0,'" & Now() & "')"
Avatar billede saudoo Nybegynder
20. januar 2007 - 15:18 #2
Der gøres brug af en oleDb..

Dette er min forbindelse til databasen som ligger i filen DataAccess.vb:
Public Sub ModifyData(ByVal SQL As String, ByVal DataBasePath As String)
    Dim objConn As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & DataBasePath)
    Dim objCMD As New OleDbCommand(SQL, objConn)

    objConn.Open()
    objCMD.ExecuteNonQuery()
    objConn.Close()
End Sub

Og min funktion til at skrive til databasen..

Dim objData As New DataAccess
Dim strSQL As String

strSQL = "INSERT INTO tblOrdrer " & _
        "(fldNavn, fldAdresse, fldPostNr, fldBy, fldTlf, fldEmail, fldSet, fldAfsendt, fldDato) " & _
        "Values" & _
        "('" & Pro.Navn & "','" & Pro.Adresse & "'," & Pro.PostNr & ",'" & Pro.By & "'," & Pro.Tlf & ",'" & Pro.Email & "',0,0,#" & Now() & "#)"

objData.ModifyData(strSQL, _strDb)
Avatar billede saudoo Nybegynder
20. januar 2007 - 15:23 #3
Det virkede sørme at smide det i situationstegn istedet for #.. Men hvorfor? # plejer da at angive at det nu er en dato. " derimod, at det er en streng.. Syntes ikke rigtig det giver nogen mening. :S

Nå.. Men det virkede. Hvis du kan forklare mig det, ville jeg sætte stor pris på det. Ellers må du meget gerne ligge et svar. :)
Avatar billede kalp Novice
20. januar 2007 - 15:44 #4
det er jo kun access db som benytter # som jeg kender i hvertfald.
:O)
Avatar billede saudoo Nybegynder
20. januar 2007 - 15:51 #5
Heh.. okay. Men det virkede i hvert fald. :) mange tak for hjælpen.. ;)
Avatar billede kalp Novice
20. januar 2007 - 15:53 #6
ingen årsag:)
Avatar billede arne_v Ekspert
20. januar 2007 - 16:18 #7
parameters løser problemet helt generelt

now() er iøvrigt en VBS'isme
Avatar billede saudoo Nybegynder
20. januar 2007 - 16:25 #8
Hehe.. ja.. men det er nu noget nemmere end at skrive noget i denne retning:
FormatDateTime(Now.Date, DateFormat.LongDate)

:)
Avatar billede kalp Novice
20. januar 2007 - 16:45 #9
arne_v >> det var også det jeg ville have implementeret i hans kode... bruger det desuden selv næsten altid til alle parameter type.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester