Avatar billede danm Nybegynder
30. oktober 2007 - 00:06 Der er 3 kommentarer og
1 løsning

Parametre med ODBC driver og MySql database duer ikke

Jeg har lige skiftet fra access til MySql i mit VB program. Jeg kan dog ikke få parametrene til at virke nu i mine Insert sætninger.
Jeg har installeret ODBC driveren fra Mysql, og alle forbindelser og Select sætninger virker fint.
Ved Insert beskeder med parametre får jeg så bare fejl beskeden at feltet ikke kan indeholde Null, hvilket må betyde at parametren ikke får nogen værdi..

Jeg skriver det sådan:
Dim con As New ADODB.Connection
con.ConnectionString = constring
con.Open
Dim cmd As New ADODB.Command
cmd.ActiveConnection = con
cmd.CommandText = sql
cmd.CommandType = adCmdText
 
Dim par As ADODB.Parameter
Set par = cmd.CreateParameter("@Navn", adVarChar, adParamInput, 50, txtNavn.Text)
cmd.Parameters.Append par
cmd.Execute
con.Close

Og jeg har prøvet at bytte "@" ud med "?" men det gav ingen forskel udover en fejlbesked.. Nogen der har prøvet dette før?
Avatar billede nielle Nybegynder
30. oktober 2007 - 06:51 #1
Hvordan ser dit sql ud?
Avatar billede nielle Nybegynder
30. oktober 2007 - 10:07 #2
Efter min erfaring skal man bruge '?' når det er MySQL.

Endvidere skal man ikke bruge den notation man ellers er vant til med navngivne parametre i selve SQL-sætningen:

SELECT * FROM dinTabel WHERE navne = ?navn

- men derimod blot '?':

SELECT * FROM dinTabel WHERE navne = ?

Hvis der er brug for flere parametre, i en given SQL sætning, kan man selvfølgelig blive i tvivl om hvilket '?' som referere til hvilken parameter. Men her er det simpelthen rækkefølgen som du tilføjer dine parameter med der er den afgørende.
Avatar billede danm Nybegynder
30. oktober 2007 - 13:14 #3
Super, det virker når jeg ikke navngiver parametrene og blot skriver ?. Smid endelig svar Nielle, og tak for hjælpen..
Avatar billede nielle Nybegynder
30. oktober 2007 - 14:54 #4
Svar :^)
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