Ahoj, kód je následující:
private void SaveRace(object sender, System.Windows.RoutedEventArgs e)
{
Connect();
string strDatum = DatePck.Text;
string strTrasa = ChooseTrackCB.Text;
string strPodminky = ChooseWeatherCB.Text;
string strTeplota = TXTTeperature.Text;
string strCas = TXTTime.Text;
string strJizda = ChooseTrackTypeCB.Text;
string strKolo = ChooseBikeTypeCB.Text;
string strMax = TXTMaxSpeed.Text;
string strAv = TXTAvSpeed.Text;
OleDbDataAdapter insda = new OleDbDataAdapter();
string insertAddStatement = "INSERT INTO Jizdy(datum, trasa, podminky, teplota, cas, jizda, kolo, max, av)VALUES(?,?,?,?,?,?,?,?,?)";
insda.InsertCommand = new OleDbCommand(insertAddStatement, myConnection);
insda.InsertCommand.Parameters.Add("@datum", OleDbType.VarChar).Value = strDatum;
insda.InsertCommand.Parameters.Add("@trasa", OleDbType.VarChar).Value = strTrasa;
insda.InsertCommand.Parameters.Add("@podminky", OleDbType.VarChar).Value = strPodminky;
insda.InsertCommand.Parameters.Add("@teplota", OleDbType.VarChar).Value = strTeplota;
insda.InsertCommand.Parameters.Add("@cas", OleDbType.VarChar).Value = strCas;
insda.InsertCommand.Parameters.Add("@jizda", OleDbType.VarChar).Value = strJizda;
insda.InsertCommand.Parameters.Add("@kolo", OleDbType.VarChar).Value = strKolo;
insda.InsertCommand.Parameters.Add("@max", OleDbType.VarChar).Value = strMax;
insda.InsertCommand.Parameters.Add("@av", OleDbType.VarChar).Value = strAv;
try
{
insda.InsertCommand.ExecuteNonQuery();
MessageBox.Show("Trasa úspěšně uložena");
}
catch (Exception error)
{
MessageBox.Show("Chyba: " + error.ToString(), "Chyba při ukládání", MessageBoxButton.OK, MessageBoxImage.Error);
}
finally
{
myConnection.Close();
}
}
Při spuštění fce mi vyskočí ten MessageBox a v něm je chyba: Syntax error in INSERT INTO statement.....
ještě pro úplnost:
DatePck = DatePicker
to co začíná TXT = TextBox
a to co Choose = ComboBox
Připojení funguje a chyba v SQL syntaxi mě nepřipadá :(
ještě mě napadlo, že by to mohlo být tím, že špatně získávám hodnotu z DatePickeru nebo ComboBoxu