Avatar billede pfp Nybegynder
13. december 2001 - 12:06 Der er 15 kommentarer og
1 løsning

Tjek om IP allerede er i db?

Hej

Jeg har en kolonne i min tabel som indeholder IP adresser. Jeg vil gerne tjekke om en IP adresse allerede eksisterer i kolonnen.

Jeg havde forestillet mig noget lignende:

<%
Dim IP
IP = Request.ServerVariables(\"REMOTE_HOST\")

\'her skal der oprettes forbindelse til min tabel i databasen.

If NOT IP already exist in rs(\"IP\") then
\' her skal IP\'en så tilføjes til databasen.
%>

Jeg ved ikke lige helt hvordan jeg skal stykke det sammen.

/pfp
%>
Avatar billede tmceu Praktikant
13. december 2001 - 12:12 #1
Du kan lave flg. som betyder at du ikke behøver at hente et recordset først

IF NOT EXISTS (SELECT * FROM Tabel WHERE IpAdresse=\' & Request.ServerVariables(\"REMOTE_HOST\") & \"\')\" & vbCrLf & \"INSERT INTO Tabel(IpAdresse) VALUES(\'\" & Request.ServerVariables(\"REMOTE_HOST\") & \"\')\"
Avatar billede freedom Nybegynder
13. december 2001 - 12:13 #2
kan når jeg kommer hjem. ca. kl. 18.00
Avatar billede sone Nybegynder
13. december 2001 - 12:36 #3
IP = Request.ServerVariables(\"REMOTE_HOST\")
SQL=\"SELECT COUNT(*) FROM Tabel WHERE IpAdresse=\' & IP & \"\')\"
SET RS = Conn.Execute(SQL)
IF RS(0) = \"0\" THEN
  SQL=\"INSERT INTO tabel (IpAdresse) VALUES (\'\"\" & IP & \')\"
  Conn.execute(SQL)
END IF
Avatar billede pfp Nybegynder
13. december 2001 - 19:42 #4
sone >>

I dit script får jeg følgende fejl i SQL sætningen:

Syntax error in string in query expression \'IPadresse=\' & IP &\'.
Avatar billede tmceu Praktikant
14. december 2001 - 07:10 #5
Der mangler en \" i sone\'s eksempel, prøv med denne:

IP = Request.ServerVariables(\"REMOTE_HOST\")
SQL=\"SELECT COUNT(*) FROM Tabel WHERE IpAdresse=\'\" & IP & \"\')\"
SET RS = Conn.Execute(SQL)
IF RS(0) = \"0\" THEN
  SQL=\"INSERT INTO tabel (IpAdresse) VALUES (\'\"\" & IP & \')\"
  Conn.execute(SQL)
END IF
Avatar billede sone Nybegynder
14. december 2001 - 10:53 #6
tmceu >>

Du mangler da også en \"    :)

SQL=\"INSERT INTO tabel (IpAdresse) VALUES (\'\"\" & IP & \"\')\"
Avatar billede tmceu Praktikant
14. december 2001 - 12:20 #7
Jeg manglede da vist et par stykker :-)

\"IF NOT EXISTS (SELECT * FROM Tabel WHERE IpAdresse=\'\" & Request.ServerVariables(\"REMOTE_HOST\") & \"\')\" & vbCrLf & \"INSERT INTO Tabel(IpAdresse) VALUES(\'\" & Request.ServerVariables(\"REMOTE_HOST\") & \"\')\"
Avatar billede sone Nybegynder
17. december 2001 - 08:03 #8
tmceu >>
Din syntaks er vist ikke helt korrekt...
Avatar billede tmceu Praktikant
17. december 2001 - 10:38 #9
Det vi jeg nu mene at den er, men det betyder måske ikke så meget - spørgeren har ikke ladet høre fra sig i 4 dage, så det er måske ikke så vigtigt alligevel.
Avatar billede sone Nybegynder
17. december 2001 - 10:54 #10
\"IF NOT EXISTS (SELECT...
er det direkte i SQL du bruger IF ?
Avatar billede pfp Nybegynder
17. december 2001 - 11:33 #11
ja i må undskylde jeg ikke lige har været aktiv de sidste par dage...men jeg syntes ikke rigtigt at jeg kan få det til at virke. Jeg bliver ved med at få syntax error?

/pfp
Avatar billede tmceu Praktikant
17. december 2001 - 12:50 #12
sone >> Ja. Men nu skulle jeg måske lige have sagt at jeg bruger SQL Server, og da der er forskel mellem IF syntaksen eks. mellem SQL Server og MySQL, virker det jo nok ikke på alle databaser :-)

pfp >> hvilken database bruger du ? der er syntaksforskelle mellem alle databaser (selv om alle tager udgangspunkt i ANSI SQL).
Avatar billede pfp Nybegynder
17. december 2001 - 13:54 #13
Jeg bruger Access
Avatar billede pfp Nybegynder
22. december 2001 - 14:07 #14
Hallo er i der endnu?
Avatar billede sone Nybegynder
28. december 2001 - 10:30 #15
Jep...
Da du bruger Access er det nok nemmest at bruge den løsning jeg skrev 13/12 2001 12:36:29 + lidt rettelser.
Avatar billede pfp Nybegynder
13. januar 2002 - 10:51 #16
Det kan jeg altså ikke få til at virke...
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
Kurser inden for grundlæggende programmering

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