webForumDet fria alternativet

UPDATE sats (får fel)

Databaser & SQLur Databashanterare & SQL

8 svar · 204 visningar · startad av LearningASP

Medlem sedan okt. 2001127 inlägg
Frågan#1

Får följande felmeddelande

sql:
UPDATE forsaljare SET Rs_Fornamn = 'Jonas', Rs_Efternamn = 'Olsson', Rs_Ort = '', Rs_Lan = 'Västra Götalands län', Rs_Epost = '', Rs_Riktnr1 = '031', Rs_tel1 = '962624', Rs_Riktnr2 = '', Rs_tel2 = '' WHERE Rs_forsalj_ID = '215'

Körningsfel i Microsoft VBScript fel '800a01a8' 

Objekt krävs.: '' 

/porsche/redigera/profil/red_form_ok.asp, line 76

Så här ser min SQL ut

Set objConn = Server.CreateObject("ADODB.Connection")
	objConn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=c:\crystal\databas\annonser.mdb" 
	SQL = "UPDATE forsaljare SET " &_
	" Rs_Fornamn = '" & strFornamn & "', " &_
	" Rs_Efternamn = '" & strEfternamn & "', " &_
	" Rs_Ort = '" & strOrt & "', " &_
	" Rs_Lan = '" & strLan & "', " &_
	" Rs_Epost = '" &strEpost & "', " &_
	" Rs_Riktnr1 = '" & strRiktnr1 & "', " &_
	" Rs_tel1 = '" & strTel1 & "', " &_
	" Rs_Riktnr2 = '" & strRiktnr2 & "', " &_
	" Rs_tel2 = '" & strTel2 & "' "
	SQL = SQL & " WHERE Rs_forsalj_ID = '" & strProfilid & "'"

	Response.Write "sql:<br> " & SQL & "<br><br>"			
	

	databas.Execute(SQL)

Vad är det som är felet????

------------------
Varje dag är en ny lektion ;)

Medlem sedan dec. 19998 577 inlägg
#2

Vilken rad är 76?

Du har antagligen inte öppnat databasen...

------------------
Doesn't 'expecting the unexpected' make the unexpected expected?
webeye.nu

[Redigerat av Vide den 22 okt 2001]

Medlem sedan juni 200032 969 inlägg
#3

Hej!

Du kallar ditt connectionobjekt för objConn när du skapar det, och försöker sedan använda ett objekt som heter databas. Ändra det till objConn.

Set objConn = Server.CreateObject("ADODB.Connection")
...
databas.Execute(SQL)

Mvh,

------------------
All your base are belong to me.

Medlem sedan dec. 200012 464 inlägg
#4

byt databas.execute till objconn.execute

------------------
essentitia preter non sans multiplicandum

Medlem sedan okt. 2001127 inlägg
#5

Jag e så J**LA dum, tack grabbar

------------------
Varje dag är en ny lektion ;)

Medlem sedan okt. 2001127 inlägg
#6

Jag får detta nu

sql:
UPDATE forsaljare SET Rs_Fornamn = 'Jonas', Rs_Efternamn = 'Olsson', Rs_Ort = '', Rs_Lan = 'Västra Götalands län', Rs_Epost = '', Rs_Riktnr1 = '031', Rs_tel1 = '962624', Rs_Riktnr2 = '', Rs_tel2 = '' WHERE Rs_forsalj_ID = '215'

Microsoft OLE DB Provider for ODBC Drivers fel '80040e07' 

[Microsoft][Drivrutin för ODBC Microsoft Access] Typblandningsfel i villkorsuttryck. 

/porsche/redigera/profil/red_form_ok.asp, line 76

------------------
Varje dag är en ny lektion ;)

Medlem sedan juni 200032 969 inlägg
#7

Då är det apostrofer någonstans där det inte ska vara det.

Du skall inte ha apostrofer runt värden om fältet är av typen tal / räknare.

Jag skulle gissa på att det är din ID-kolumn. Alltså:

...WHERE Rs_forsalj_ID = 215

Mvh,

------------------
All your base are belong to me.

Medlem sedan dec. 200012 464 inlägg
#8

och vilken datatyp har Rs_forsalj_ID

Om det är tal så ta bort '

SQL = SQL & " WHERE Rs_forsalj_ID = " & strProfilid

------------------
essentitia preter non sans multiplicandum

Medlem sedan okt. 2001127 inlägg
#9

Tackar, det är något jag brukar glömma.

Ooo måste lägga mig tidigare så man kan vara mer skärpt....

Tack för all hjälp

------------------
Varje dag är en ny lektion ;)

135 ms totalt · 3 externa anrop · v20260731065814-full.55e59744
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)