webForumDet fria alternativet

Sql-sats

Databaser & SQLur Databashanterare & SQL

16 svar · 311 visningar · startad av dahlgren

Medlem sedan aug. 20011 946 inlägg
Frågan#1

Får inte följande kod att funka det är vid Godkand = '"Ja"' som det gör ihop sig. Vad är det som är fel?

strSQL = strSQL & "SELECT MedID FROM Medlemmar "
strSQL = strSQL & "WHERE Namn= '" & Namn & "' AND Losen = '" & Losen & "'" 
strSQL = strSQL & " AND Godkand = '"Ja"' "
Medlem sedan juni 200032 967 inlägg
#2

Lite mycket citationstecken.

strSQL = strSQL & " AND Godkand = 'Ja' "
Medlem sedan aug. 20011 946 inlägg
#3

Då får jag
Feltyp:
Körningsfel i Microsoft VBScript (0x800A01A8)
Objekt krävs.: ''
På den aktuella raden

Medlem sedan dec. 200012 464 inlägg
#4

Då får du visa den aktuella raden + lite omkring. T.ex. så kan du använda fel variabelnamn i din execute.

Medlem sedan aug. 20011 946 inlägg
#5
<!--#include file="../koppla.asp" -->
strSQL = ""
strSQL = strSQL & "SELECT MedID FROM Medlemmar "
strSQL = strSQL & "WHERE Namn= '" & Namn & "' AND Losen = '" & Losen & "'" 
strSQL = strSQL & " AND Godkand = 'Ja' "
RS.Open strSQL, Conn, 3, 3

Och databas anslutiningen i koppla.asp

<% 
Conn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("/hem/hemoskola.mdb") 
Set RS = Server.CreateObject("ADODB.Connection") 
Conn.Open RS 
%>
Medlem sedan dec. 200012 464 inlägg
#6

i koppla.asp

sConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("/hem/hemoskola.mdb") 
Set Conn = Server.CreateObject("ADODB.Connection") 
Conn.Open sConn

och

set rs = server.createobject("adodb.recordset")
RS.Open strSQL, Conn, 3, 3
Medlem sedan aug. 20011 946 inlägg
#7

Då får jag detta felmedelande istället
ADODB.Recordset (0x800A0BB9)
Parametrarna är felaktiga, ligger utanför tillåtet intervall eller skapar en inbördes konflikt.
På raden som kör sqlsatsen

Medlem sedan dec. 20003 887 inlägg
#8

Är kolumnen Godkand en strängtyp? Är det en Ja/Nej kan du testa den med att bara använda

strSQL = strSQL & " AND Godkand"
Medlem sedan aug. 20011 946 inlägg
#9

Det är en sträng som inehåller ordet Ja eller Nej

Medlem sedan dec. 20003 887 inlägg
#10

Felet får du därför att en av dina variabler Namn, Losen eller Ja har felaktigt värde. I någon av dina kolumner har du antagligen satt en begränsning som orsakar problemet.

Skriv ut sqlsatsen och kontrollera mot databasen.

Medlem sedan apr. 20003 174 inlägg
#11

Engine^ skrev:

Felet får du därför att en av dina variabler Namn, Losen eller Ja har felaktigt värde. I någon av dina kolumner har du antagligen satt en begränsning som orsakar problemet.

Skriv ut sqlsatsen och kontrollera mot databasen.

Hmm.. är du säker på det?
Jag tror snarare att det har med cursortype´n att göra.

Nåväl, testa istället att använd execute-modellen och se om samma fel framkommer.

ex.

[red]<!--#include file="../koppla.asp" -->
strSQL = "SELECT MedID FROM Medlemmar WHERE Namn='"& Namn &"' AND Losen='"& Losen &"' AND Godkand='Ja'"
Set RS = Conn.Execute(strSQL)[/red]
Medlem sedan aug. 20011 946 inlägg
#12

Då får jag
Feltyp:
Körningsfel i Microsoft VBScript (0x800A01A8)
Objekt krävs.: '' på execute raden

Medlem sedan apr. 20003 174 inlägg
#13

*gha!* :q

Du har inte ändrat nått i din koppla.asp?
..för den koden ska fungera! ;)

Medlem sedan aug. 20011 946 inlägg
#14

Har endast ändrat till det som LarsG föreslog.

<% 
sConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("/hem/hemoskola.mdb") 
Set Conn = Server.CreateObject("ADODB.Connection") 
Conn.Open sConn
%>
Medlem sedan apr. 20003 174 inlägg
#15

Labbade ihop detta, fungerar bra:

[red]Set Conn = Server.CreateObject("ADODB.Connection") 
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& Server.MapPath("test_dahlgren.mdb") 

strSQL = "SELECT MedID FROM Medlemmar WHERE Namn='"& Namn &"' AND Losen='"& Losen &"' AND Godkand='Ja'"
Set RS = Conn.Execute(strSQL)[/red]

Notera att jag har ett annat db-namn i detta exempel

 

Medlem sedan aug. 20011 946 inlägg
#16

Tack för all hjälp nu börjar det mesta fungera.

Medlem sedan apr. 20003 174 inlägg
#17

dahlgren skrev:

Tack för all hjälp nu börjar det mesta fungera.

:bire

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