Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

ngoại lệ giá trị null khi nhập vào cơ sở dữ liệu

Bạn cần sử dụng truy vấn được tham số hóa để tránh lỗi, vì bạn đang nối các giá trị chuỗi rõ ràng. Ngoài ra, logic của bạn cũng sai, làm điều này sẽ gây ra dữ liệu chưa chuẩn hóa, điều này sẽ khiến cho bất kỳ Quản trị viên DB nào phải sắp xếp. Tôi sẽ cân nhắc sử dụng cái này để thay thế:

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();

Nó không được thử nghiệm, nhưng bạn có ý tưởng.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bảng được đánh dấu là bị rơi và cần được sửa chữa

  2. PHP / MYSQL Thêm nút vào cột

  3. Làm cách nào để tôi chỉ chèn vào cơ sở dữ liệu nếu một giá trị đã thay đổi?

  4. Nhập cơ sở dữ liệu MySQL vào MS SQL Server

  5. Laravel:PDOException:không thể tìm thấy trình điều khiển