sql >> Database >  >> RDS >> Mysql

null-waarde uitzondering bij het invoeren van de database

U moet een geparametriseerde query gebruiken om de fouten te voorkomen, aangezien u expliciete tekenreekswaarden aaneenvoegt. Ook uw logica is verkeerd, als u dit doet, zullen niet-genormaliseerde gegevens ontstaan ​​die voor elke DB-beheerder afschuwelijk zijn om te sorteren. Ik zou overwegen om dit in plaats daarvan te gebruiken:

SqlConnection conn = new SqlConnection(@"Data Source=(LocalDB)\v11.0;AttachDbFilename=C:\Users\rnawa_000\Documents\Visual Studio 2013\Projects\Random\Random\sales.mdf;Integrated Security=True");

SqlCommand cmd = new SqlCommand();

cmd.Connection = conn;
conn.Open();

foreach (string item in listBox1.Items)
{
    cmd.CommandText = "insert into salesTB (Date,Time,Name,Quantity,Cost,Purchase) values (@date, @time, @name, @quantity, @cost, @purchase)";

    cmd.Parameters.Add(new SqlParameter("date", date.Text));
    cmd.Parameters.Add(new SqlParameter("time", time.Text));
    cmd.Parameters.Add(new SqlParameter("name", txtName.Text));
    cmd.Parameters.Add(new SqlParameter("quantity", listBox1.Items.Count));
    cmd.Parameters.Add(new SqlParameter("cost", txtCost.Text));
    cmd.Parameters.Add(new SqlParameter("purchase", item.Substring(0,10)));

    cmd.ExecuteNonQuery();
    cmd.Clone();
}

conn.Close();

Het is niet getest, maar je snapt het idee.



  1. Oracle - Welk TNS Names-bestand gebruik ik?

  2. Hoe een Excel-bestand te importeren in een MySQL-database

  3. PGError:ERROR:aggregaties niet toegestaan ​​in WHERE-clausule op een AR-query van een object en zijn has_many objecten

  4. Selecteer alle rijen die ten minste een lijst met functies hebben