Re: Nybörjare
Daniel78 skrev:
INSERT INTO tblLogg ( Datum, Refer, IP, Klient, Host )
VALUES ([@loggDatum], '[@loggRefer', '@loggIP', '@loggKlient', '@loggHost');
Ska den vara där? I så fall fattas det en ]
8 svar · 425 visningar · startad av Daniel78
Ok, detta kanske är ett enkelt problem men jag behöver lite hjälp med detta nu. Jag lägger in värden i en Access med en lagrad procedur(spNewLogg):
INSERT INTO tblLogg ( Datum, Refer, IP, Klient, Host )
VALUES ([@loggDatum], '@loggRefer', '@loggIP', '@loggKlient', '@loggHost');
Min VB kod ser ut så här:
'Lagra ny statistik i db
Dim objCmd As New OleDbCommand("spNewLogg", myConnection)
objCmd.CommandType = CommandType.StoredProcedure
Dim objParam As New OleDbParameter("@loggDatum", OleDbType.Char)
objParam.Value = Date.Now
objCmd.Parameters.Add(objParam)
objParam = New OleDbParameter("@loggRefer", OleDbType.Char)
objParam.Value = Request.ServerVariables("REMOTE_REFERER")
objCmd.Parameters.Add(objParam)
objParam = New OleDbParameter("@loggIP", OleDbType.Char)
objParam.Value = Request.ServerVariables("REMOTE_ADDR")
objCmd.Parameters.Add(objParam)
objParam = New OleDbParameter("@loggKlient", OleDbType.Char)
objParam.Value = Request.ServerVariables("REMOTE_USER_AGENT")
objCmd.Parameters.Add(objParam)
objParam = New OleDbParameter("@loggHost", OleDbType.Char)
objParam.Value = Request.ServerVariables("REMOTE_HOST")
objCmd.Parameters.Add(objParam)
myConnection.Open()
objCmd.ExecuteNonQuery()
Men det enda värde som blir riktigt i databasen är datumet, de övriga blir @loggRefer, @loggIP ... etc! Och så vill jag ju inte ha det! :r
Re: Nybörjare
Daniel78 skrev:
INSERT INTO tblLogg ( Datum, Refer, IP, Klient, Host )
VALUES ([@loggDatum], '[@loggRefer', '@loggIP', '@loggKlient', '@loggHost');
Ska den vara där? I så fall fattas det en ]
Faktiskt aldrig sysslat med parameters i SQL Sats men min vilda gissning är denna.
INSERT INTO tblLogg ( Datum, Refer, IP, Klient, Host )
VALUES (@loggDatum, @loggRefer, @loggIP, @loggKlient, @loggHost);
- M
Till att börja med så skulle [-tecknet inte vara där, det är redigerat nu.
Till din lösning Gladh, när jag plockar bort enkelfnuttarna från proceduren så får jag ett felmedelande av typen
Parametern [@loggRefer] har inget standardvärde.
Annars om någon vet hur jag ska lägga in värden genom en lagrad procedur så får ni gärna hjälpa mig. Ovanstående lösning hittade jag på nätet som jag sen har modifierat, kanske är denna inte bra då? :r
Har du kollat så att Request.ServerVariables("REMOTE_REFERER") innehåller ett värde så att det inte är NULL. Om det är NULL så kanske den vill ha ett standard värde.
Detta är dock en gissning, eftersom det borde gå att skicka in NULL till parametern.
Du pratar om SP's men vill ändå ha parameterna i din SQL Sats. Har du tillgång till SP's ?
- M
Ingen som vet hur man gör en Insert till en Access db genom en lagrad procedur? :q
Problemet är löst nu! :birp Fick lägga till "" & framför request.servervariables eftersom vissa av requesten blir tomma/Null när man kör på den lokala servern och det klarar inte parametrarna.
"" & Request.ServerVariables("REMOTE_REFERER")