Avatar billede brian-johansen Nybegynder
17. maj 2006 - 16:27 Der er 4 kommentarer og
1 løsning

Insæt i DB c#

Hej,

Af en eller anden mærkelig årsag kan jeg ikke få lov at indsætte i min database. Hver gang jeg prøver at oprette nogen i den får jeg at vide at der er en syntakstfejl i min Insert into sætning.

Det underlige er bare at det virker fint hvis man køre den igennem Acces. Er der nogen der kan se hvad der er galt ?

mvh Brian

---------- Koden ---------------


public void opretNyMedarbejder(string navn,string bruger, string kode, string status)
    {
        string myConnStr = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\Inetpub\\wwwroot\\becklaw\\App_Data\\beck.mdb";
        OleDbConnection myConn = new OleDbConnection(myConnStr);

        string myInsertSQL = "INSERT INTO brugere (navn, bruger, password, status) VALUES ('"+navn+"','"+bruger+"', '"+kode+"', '"+status+"')";
        OleDbCommand myInsertCmd = new OleDbCommand(myInsertSQL, myConn);
      /*
        myInsertCmd.Parameters.Add("@navn", OleDbType.VarChar, 50).Value = navn;
        myInsertCmd.Parameters.Add("@bruger", OleDbType.VarChar, 50).Value = bruger;
        myInsertCmd.Parameters.Add("@password", OleDbType.VarChar, 50).Value = kode;       
        myInsertCmd.Parameters.Add("@status", OleDbType.VarChar, 50).Value = status;
      */
        myConn.Open();
        myInsertCmd.ExecuteNonQuery();
        myConn.Close();
    }

mvh Brian
Avatar billede arne_v Ekspert
17. maj 2006 - 16:34 #1
password er nok et reserveret ord

proev

        string myInsertSQL = "INSERT INTO brugere (navn, bruger, [password], status) VALUES ('"+navn+"','"+bruger+"', '"+kode+"', '"+status+"')";

eller bedre: find et andet felt navn
Avatar billede brian-johansen Nybegynder
17. maj 2006 - 18:24 #2
Det gjorde lige forskellen, Mange tak for det !

Ligger du lige et svar ?

mvh Brian
Avatar billede brian-johansen Nybegynder
17. maj 2006 - 18:38 #3
Hej Arne_v ?

Kan du så umiddelbart se hvad der er galt med denne ?
myCmd.CommandText = "UPDATE brugere SET navn=?, bruger=?,[password]=? where id=" + id + "";

                myCmd.Parameters.Add("@navn", OleDbType.Char).Value = txtNavn.Text;
                myCmd.Parameters.Add("@bruger", OleDbType.Char).Value = bn.Text;
                myCmd.Parameters.Add("@password", OleDbType.Char).Value = txtPass.Text;

                myConn.Open();
                myCmd.ExecuteNonQuery();
                myConn.Close();

mvh Brian
Avatar billede arne_v Ekspert
17. maj 2006 - 18:54 #4
svar
Avatar billede arne_v Ekspert
17. maj 2006 - 19:43 #5
og proev med OleDbType.VarChar and a max length instead of OleDbType.Char
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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