Indsættelse i Access-DB - Number of Query Values
Hej,Prøver at indsætte en record i en Access-DB med følgende kode:
public void Opret(object Sender, EventArgs e)
{
OleDbConnection MyConnection;
OleDbCommand MyCommand;
MyConnection = new OleDbConnection();
MyConnection.ConnectionString = ConfigurationManager.ConnectionStrings["ReservationConnection"].ConnectionString;
string strSQL = System.Configuration.ConfigurationManager.AppSettings.Get("SQLInsertString");
MyCommand = new OleDbCommand(strSQL, MyConnection);
try
{
MyConnection.Open();
MyCommand.Parameters.Add("@datDato", OleDbType.Date);
MyCommand.Parameters.Add("@strArrangement", OleDbType.VarChar);
MyCommand.Parameters.Add("@strReserveretAf", OleDbType.VarChar);
MyCommand.Parameters.Add("@datReserveretDato", OleDbType.Date);
MyCommand.Parameters.Add("@strBemaerk", OleDbType.VarChar);
MyCommand.Parameters["@datDato"].Value = DateTime.Today;
MyCommand.Parameters["@strArrangement"].Value = "JagtMiddag";
MyCommand.Parameters["@strReserveretAf"].Value = "Søren Sømand";
MyCommand.Parameters["@datReserveretDato"].Value = DateTime.Today;
MyCommand.Parameters["@strBemaerk"].Value = "Ingen";
MyCommand.ExecuteNonQuery();
}
catch (Exception exept)
{
lblFejlmeddelelse.Text = Convert.ToString(exept);
}
MyConnection.Close();
Får følgende fejl:
System.Data.OleDb.OleDbException: Number of query values and destination fields are not the same. at System.Data.OleDb.OleDbCommand.ExecuteCommandTextForSingleResult(tagDBPARAMS dbParams, Object& executeResult) at System.Data.OleDb.OleDbCommand.ExecuteCommandText(Object& executeResult) at System.Data.OleDb.OleDbCommand.ExecuteCommand(CommandBehavior behavior, Object& executeResult) at System.Data.OleDb.OleDbCommand.ExecuteReaderInternal(CommandBehavior behavior, String method) at System.Data.OleDb.OleDbCommand.ExecuteNonQuery() at Tilfoej.Opret(Object Sender, EventArgs e) in c:\SletMig\kalender\Tilfoej.aspx.cs:line 46
Min INSERT string ser således ud, og er placeret i web.config:
<appSettings>
<add key="SQLInsertString"
value = "INSERT INTO Reservation VALUES (@datDato,@strArrangement,@strReserveretAf,@datReserveretDato,@strBemaerk)" />
</appSettings>
Mit databaselayout er således:
Nr Autonummerering
Dato Dato og klokkeslæt
Arrangement Tekst
ReserveretAf Tekst
ReserveretDato Dato og klokkeslæt
Bemaerk Tekst
Det eneste felt jeg ikke indsætter noget i, er autonummereringen, hvilket ikke plejer at være nødvendigt.
Hvad er der galt?