Avatar billede kim_85 Nybegynder
14. marts 2006 - 05:16 Der er 5 kommentarer

Fejlmeddelelse i database skrivning

Hej, jeg har lavet en form det skal skrive data ned i en access database, men får hele tiden følgende fejlmeddelelse:

--------------------------------
Der er en syntaksfejl i INSERT INTO-sætningen.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.Data.OleDb.OleDbException: Der er en syntaksfejl i INSERT INTO-sætningen.

Source Error:


Line 27:        myConnection.Open();
Line 28:        OleDbCommand myCommand = new OleDbCommand( strSQL, myConnection );
Line 29:        myCommand.ExecuteNonQuery();
Line 30:        myConnection.Close();
Line 31:        lblBesked.Text= "Posten er oprettet!";


------------------------------------------------------------


Her er min kildekode:



<%@ Page Language="C#" ContentType="text/html" Debug="true" %>
<%@ import Namespace="System.Data" %>
<%@ import Namespace="System.Data.OleDb" %>
<script runat="server">

    void Indtast(Object Sender, EventArgs e)
    {
        string strFornavn, strEfternavn, strAdresse, strPostnr, strBy, strTelefon, strEmail;
        string strSQL;
        strFornavn = tbFornavn.Text;
        strEfternavn = tbEfternavn.Text;
        strAdresse = tbAdresse.Text;
        strPostnr = tbPostnr.Text;
        strBy = tbBy.Text;
        strTelefon = tbTelefon.Text;
        strEmail = tbEmail.Text;
        strSQL = "Insert INTO Database ( Fornavn, Efternavn, Adresse, Postnr, By, Telefon, Email) Values ('";
        strSQL += strFornavn + "', '";
        strSQL += strEfternavn + "','";
        strSQL += strAdresse + "','";
        strSQL += strPostnr + "','";
        strSQL += strBy + "','";
        strSQL += strTelefon + "','";
        strSQL += strEmail + "','";
        Response.Write(strSQL);
        OleDbConnection myConnection = new OleDbConnection( "PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA Source=c:\\database\\Database.mdb" );
        myConnection.Open();
        OleDbCommand myCommand = new OleDbCommand( strSQL, myConnection );
        myCommand.ExecuteNonQuery();
        myConnection.Close();
        lblBesked.Text= "Posten er oprettet!";
        btIndtast.Enabled=false;
    }
    void Rens(Object Sender, EventArgs e)
    {
        tbFornavn.Text="";
        tbEfternavn.Text="";
        tbAdresse.Text="";
        tbPostnr.Text="";
        tbBy.Text="";
        tbTelefon.Text="";
        tbEmail.Text="";

        btIndtast.Enabled=true;

        Response.Redirect("Repeater.aspx");
    }

</script>
<html>
<head>
    <title>Indtastning af navneoplysninger</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
    <h1>Kontaktformular
    </h1>
    <form runat="server">
        <table cellspacing="2" cellpadding="2" width="50%" border="1">
            <tbody>
                <tr bgcolor="#cc3333">
                    <td bgcolor="#cccccc">
                        Indtastning af Navneoplysninger</td>
                    <td bgcolor="#cccccc">
                        &nbsp;
                    </td>
                </tr>
                <tr>
                    <td>
                        <strong>Fornavn</strong></td>
                    <td>
                        <asp:textbox id="tbFornavn" runat="server" Width="150"></asp:textbox>
                    </td>
                </tr>
                <tr>
                    <td>
                        <strong>Efternavn</strong></td>
                    <td>
                        <asp:textbox id="tbEfternavn" runat="server" Width="150"></asp:textbox>
                    </td>
                </tr>
                <tr>
                    <td>
                        <strong>Adresse</strong></td>
                    <td>
                        <asp:textbox id="tbAdresse" runat="server" Width="400"></asp:textbox>
                    </td>
                </tr>
                <tr>
                    <td>
                        <strong>Postnr</strong></td>
                    <td>
                        <asp:textbox id="tbPostnr" runat="server" Width="40"></asp:textbox>
                    </td>
                </tr>
                <tr>
                    <td>
                        <strong>By</strong></td>
                    <td>
                        <asp:textbox id="tbBy" runat="server" Width="200"></asp:textbox>
                    </td>
                </tr>
                <tr>
                    <td>
                        <strong>Telefon:</strong></td>
                    <td>
                        <asp:textbox id="tbTelefon" runat="server" Width="75"></asp:textbox>
                    </td>
                </tr>
                <tr>
                    <td>
                        <strong>Email</strong></td>
                    <td>
                        <asp:textbox id="tbEmail" runat="server" Width="150"></asp:textbox>
                    </td>
                </tr>
                <tr>
                    <asp:requiredfieldvalidator id="RequiredFieldValidator1" runat="server" ControlToValidate="tbFornavn" ErrorMessage="Udfyld venligst fornavn!<br>"></asp:requiredfieldvalidator>
                    <asp:requiredfieldvalidator id="RequiredFieldValidator2" runat="server" ControlToValidate="tbEfternavn" ErrorMessage="Udfyld venligst efternavn!"></asp:requiredfieldvalidator>
                    <asp:requiredfieldvalidator id="RequiredFieldValidator3" runat="server" ControlToValidate="tbEmail" ErrorMessage="Udfyld venligst din email adresse!"></asp:requiredfieldvalidator>
                    <td>
                        &nbsp;
                    </td>
                </tr>
            </tbody>
        </table>
        <asp:button id="btIndtast" onclick="Indtast" runat="server" Text="Opret en post"></asp:button>
        <asp:button id="btRens" onclick="Rens" runat="server" Text="Slet indtastningsfelter"></asp:button>
        <asp:Label id="lblBesked" runat="server" font-bold="true"></asp:Label>
    </form>
</body>
</html>


----------------------------------------------------


Hvis nogen vil kunne komme med en løsning vil jeg være virkelig taknemmelig!
Avatar billede arne_v Ekspert
14. marts 2006 - 05:24 #1
strSQL += strEmail + "','";

skal vel være

strSQL += strEmail + "')";

for at få afsluttet rigtigt
Avatar billede kim_85 Nybegynder
14. marts 2006 - 05:46 #2
Ok det gjorde jeg, men får stadig samme fejlmeddelelse. :/
Avatar billede hmortensen Nybegynder
14. marts 2006 - 07:19 #3
Og By skal vel lige ha [] om, da det er et reserveret ord.
Avatar billede arne_v Ekspert
22. april 2006 - 21:58 #4
tid at få afsluttet her ?
Avatar billede arne_v Ekspert
05. oktober 2006 - 03:24 #5
all set ??
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