Avatar billede bramsing Nybegynder
27. maj 2004 - 11:16 Der er 23 kommentarer og
1 løsning

Insert MySQL

Hejsa...
Jeg er lidt ny i MySQL, så bær lige over med mig ;o)

Jeg skal have en ny post ind i MySQL-databasen via ASP... og jeg kan ikke helt få skidtet til at virke....

Koden ser således ud:
set conn = server.createobject("ADODB.connection")
conn.Open "DRIVER={MySQL ODBC 3.51 Driver};SERVER=db.min-server.com; DATABASE=dbmysql; UID=dbmysql; PWD=passmysql;"

strSQL = "INSERT INTO 'freeware'('title','appl','authors','cat','subcat','authorswebsite','about','by','added','accept')"

ofc = "Nej"

strSQL = strSQL & "VALUES(,'"&Request.form("title")&"','"&Request.form("appurl")&"','"&Request.form("author")&"','"&Request.form("txtCat")&"','"&Request.form("txtSubCat")&"','"&Request.form("authorurl")&"','"&Request.form("description")&"','"&Request.form("rb")&"','"&date&"','"&ofc&"');"

response.Write(strSQL)

Outputtet ser således ud:
INSERT INTO 'freeware'('title','appl','authors','cat','subcat','authorswebsite','about','by','added','accept')VALUES(,'aaaaaa','aaaaaa','aaaaaa','internet','','asaaaa','aaaaaa','FREEWARE patrol','5/27/2004','Nej');

Jeg får ingen fejlmeddelser men den opdatere ikke MySQL DB'en...

Er der en forglemmelse et sted eller en fejl i koden ???
Avatar billede erikjacobsen Ekspert
27. maj 2004 - 11:18 #1
strSQL = "INSERT INTO `freeware`(`title`,`appl`,`authors`,`cat`,`subcat`,`authorswebsite`,`about`,`by`,`added`,`accept`)"
Avatar billede bramsing Nybegynder
27. maj 2004 - 11:28 #2
Ved at sætte koden som du viser
strSQL = "INSERT INTO `freeware`
(`title`,`appl`,`authors`,`cat`,`subcat`,`authorswebsite`,`about`,`by`,`added`,`accept`)"
får jeg følgende fejl....
Microsoft VBScript compilation error '800a0409'

Unterminated string constant

/add.asp, line 264

strSQL = "INSERT INTO `freeware`
--------------------------------^
Avatar billede bramsing Nybegynder
27. maj 2004 - 11:29 #3
^ er lige efter `
Avatar billede ellebaek Nybegynder
27. maj 2004 - 12:09 #4
skal der være '' omkring når det er feltnavne..?

strSQL = "INSERT INTO freeware(title, appl, authors, cat, subcat, authorswebsite, about, by, added, accept)"
Avatar billede erikjacobsen Ekspert
27. maj 2004 - 12:10 #5
Der skal blot ikke være et linieskift i strengen.
Avatar billede ellebaek Nybegynder
27. maj 2004 - 12:11 #6
erik -> ok.. Vidste jeg ikke :-)
Avatar billede bramsing Nybegynder
27. maj 2004 - 12:21 #7
Når den står sådan her:
strSQL = "INSERT INTO `freeware`(`title`,`appl`,`authors`,`cat`, `subcat`,`authorswebsite`,`about`,`by`,`added`,`accept`)"
Kommer der ikke noget ind i DB'en....

Kan det have noget med values at gøre ???
Avatar billede ellebaek Nybegynder
27. maj 2004 - 12:32 #8
Der er da et eller andet i vejen i den her linie:
strSQL = strSQL & "VALUES(,'"&Request.form("title")&"','"&Request.form("appurl")&"','"&Request.form("author")&"','"&Request.form("txtCat")&"','"&Request.form("txtSubCat")&"','"&Request.form("authorurl")&"','"&Request.form("description")&"','"&Request.form("rb")&"','"&date&"','"&ofc&"');"

Du har et komma for meget i starten..
strSQL = strSQL & "VALUES('"&Request.form("title")&"','"&Request.form("appurl")&"','"&Request.form("author")&"','"&Request.form("txtCat")&"','"&Request.form("txtSubCat")&"','"&Request.form("authorurl")&"','"&Request.form("description")&"','"&Request.form("rb")&"','"&date&"','"&ofc&"');"
Avatar billede bramsing Nybegynder
27. maj 2004 - 12:35 #9
Den er fjernet nu... Men det ændre ikke resultatet :o(
Sådan ser outputtet ud nu:
INSERT INTO `freeware`(`title`,`appl`,`authors`,`cat`,`subcat`,`authorswebsite`,`about`,`by`,`added`,`accept`)VALUES(sssssss,ssssssss,ssssssss,chat,client,ssssssss,sdsssdsds,FREEWARE patrol,27-05-2004,Nej);

Skal der være et ; til slut ??
Avatar billede ellebaek Nybegynder
27. maj 2004 - 12:38 #10
ja, det gør ikke noget..

Men nu er der ikke '' omkring dine variable..?
altså inde i values().
Slettede du dem?
Avatar billede bramsing Nybegynder
27. maj 2004 - 12:41 #11
Jeg har prøvet

INSERT INTO `freeware`(`title`,`appl`,`authors`,`cat`,`subcat`,`authorswebsite`,`about`,`by`,`added`,`accept`)VALUES(sssssss,ssssssss,ssssssss,chat,client,ssssssss,sdsssdsds,FREEWARE patrol,27-05-2004,Nej);

og

INSERT INTO `freeware`(`title`,`appl`,`authors`,`cat`,`subcat`,`authorswebsite`,`about`,`by`,`added`,`accept`)VALUES(`sssssss`,`ssssssss`,`ssssssss`,`chat`,`client`,`ssssssss`,`sdsssdsds`,`FREEWARE patrol`,`27-05-2004`,`Nej`);

og

INSERT INTO `freeware`(`title`,`appl`,`authors`,`cat`,`subcat`,`authorswebsite`,`about`,`by`,`added`,`accept`)VALUES('sssssss','ssssssss','ssssssss','chat','client','ssssssss','sdsssdsds','FREEWARE patrol','27-05-2004','Ja');

uden held :o(

Jeg ved ikke hvilke jeg skal bruge....
Avatar billede ellebaek Nybegynder
27. maj 2004 - 12:45 #12
den her vil jeg mene du skal bruge..
INSERT INTO `freeware`(`title`,`appl`,`authors`,`cat`,`subcat`,`authorswebsite`,`about`,`by`,`added`,`accept`)VALUES('sssssss','ssssssss','ssssssss','chat','client','ssssssss','sdsssdsds','FREEWARE patrol','27-05-2004','Ja');

får du stadig ingen fejl ?
Avatar billede bramsing Nybegynder
27. maj 2004 - 12:50 #13
Ikke én.... Koden er følgende:

set conn = server.createobject("ADODB.connection")
conn.Open "DRIVER={MySQL ODBC 3.51 Driver};SERVER=db.min-server.com; DATABASE=dbmysql; UID=dbmysql; PWD=passmysql;"
strSQL = "SELECT * FROM freeware"
strSQL = "INSERT INTO `freeware`(`id`,`title`,`appl`,`authors`,`cat`,`subcat`,`authorswebsite`,`about`,`by`,`added`,`accept`)"
ofc = "Nej"
strSQL = strSQL & "VALUES('','"&Request.form("title")&"','"&Request.form("appurl")&"','"&Request.form("author")&"','"&Request.form("txtCat")&"','"&Request.form("txtSubCat")&"','"&Request.form("authorurl")&"','"&Request.form("description")&"','"&Request.form("rb")&"','"&date&"','"&ofc&"');"
response.Write(strSQL)

response.Write(strSQL) giver følgende udskrift:

INSERT INTO `freeware`(`id`,`title`,`appl`,`authors`,`cat`,`subcat`,`authorswebsite`,`about`,`by`,`added`,`accept`)VALUES('','sssssss','ssssssss','ssssssss','chat','client','ssssssss','sdsssdsds','FREEWARE patrol','27-05-2004','Nej');

Ingen error eller anden form for fejl.... Men den vil simpelt hen ikke opdatere DB'en
Avatar billede erikjacobsen Ekspert
27. maj 2004 - 12:52 #14
Det ser ikke ud til at du udfører din sql-sætning.
Avatar billede ellebaek Nybegynder
27. maj 2004 - 12:52 #15
ofc = "Nej"
strSQL = "INSERT INTO `freeware`(`title`,`appl`,`authors`,`cat`,`subcat`,`authorswebsite`,`about`,`by`,`added`,`accept`) VALUES('"&Request.form("title")&"','"&Request.form("appurl")&"','"&Request.form("author")&"','"&Request.form("txtCat")&"','"&Request.form("txtSubCat")&"','"&Request.form("authorurl")&"','"&Request.form("description")&"','"&Request.form("rb")&"','"&date&"','"&ofc&"');"

Hmm... er din id autonummerering, for så tror jeg det skal se ud som det her..
Har lige fjernet den del hvor du splitter sql'en
Avatar billede bramsing Nybegynder
27. maj 2004 - 12:56 #16
Jeg har før prøvet uden id feltet og ja, det er et autonummererings felt...

Erik jeg er ikke helt med... Er der en linie der mangler eller ???
Avatar billede ellebaek Nybegynder
27. maj 2004 - 12:58 #17
har du en set rs = rs.execute(strSQL)
et sted i din kode..?
Avatar billede bramsing Nybegynder
27. maj 2004 - 12:59 #18
Øhh... nej...
Avatar billede bramsing Nybegynder
27. maj 2004 - 13:02 #19
DOH !!!! Det virkede.... Jeg tror jeg havde gloet mig blind på koden og overset den lille deltalje....

Hvis I smider et svar smider jeg nogle point.... :o)
Avatar billede bramsing Nybegynder
27. maj 2004 - 13:02 #20
Og mange tak for "kampen" ;o)
Avatar billede erikjacobsen Ekspert
27. maj 2004 - 13:03 #21
Altid en fornøjelse, men ingen point til mig, tak.
Avatar billede bramsing Nybegynder
27. maj 2004 - 13:03 #22
Er du sikker Erik ???
Avatar billede ellebaek Nybegynder
27. maj 2004 - 13:04 #23
så smider jeg et svar ;-)
Avatar billede ellebaek Nybegynder
27. maj 2004 - 13:04 #24
dooh..
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