-
22-10-2011, 04:33 PM #1Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Mình bị lỗi "Must declare the scalar variable "@MaNV"
Mình đang tìm hiểu về SqlParameter nhưng khi insert dữ liệu thì bị lỗi
"Must declare the scalar variable "@MaNV"
Các bạn kiểm tra hộ mình xem đoạn code dưới có gì sai ko vậy. Thanks !
Mã:using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.Data.SqlClient; namespace sqlprm { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { string constr = "Data Source=POWERADMIN-PC;Initial Catalog=QLNS;Integrated Security=True"; //Khai báo và khởi tạo đối tượng Sqlconnection SqlConnection con = new SqlConnection(constr); //Mở kết nối con.Open(); string sql = "insert into TblSoBH (MaNV, MaLuong, MaSoBH) Values (@MaNV, @MaLuong, @MaSoBH)"; //Khai báo và khởi tạo đối tượng Sqlcommand SqlCommand cmd = new SqlCommand(sql, con); //Khai báo và khởi tạo đối tượng Sqlpara SqlParameter sqlpa = new SqlParameter(); //Khai báo thuộc tính Sqlpara ứng với tên tham số sqlpa.ParameterName = "@MaNV"; //Khai báo thuộc tính SqlValues ứng với giá trị truyền vào sqlpa.SqlValue = "049"; //Khai báo thuộc tính SqlDbType ứng với kiểu dữ liệu sqlpa.SqlDbType = SqlDbType.Char; //Khai báo thuộc tính kích thước ứng với chiều dài sqlpa.Size = 10; //Thêm dữ liệu vào Sqlcommand cmd.Parameters.Add(sqlpa); cmd.Parameters.Clear(); //Khai báo thuộc tính Sqlpara ứng với tên tham số sqlpa.ParameterName = "@MaLuong"; //Khai báo thuộc tính SqlValues ứng với giá trị truyền vào sqlpa.SqlValue = "LNV007"; //Khai báo thuộc tính SqlDbType ứng với kiểu dữ liệu sqlpa.SqlDbType = SqlDbType.Char; //Khai báo thuộc tính kích thước ứng với chiều dài sqlpa.Size = 10; //Thêm dữ liệu vào Sqlcommand cmd.Parameters.Add(sqlpa); cmd.Parameters.Clear(); //Khai báo thuộc tính Sqlpara ứng với tên tham số sqlpa.ParameterName = "@MaSoBH"; //Khai báo thuộc tính SqlValues ứng với giá trị truyền vào sqlpa.SqlValue = "BH007"; //Khai báo thuộc tính SqlDbType ứng với kiểu dữ liệu sqlpa.SqlDbType = SqlDbType.Char; //Khai báo thuộc tính kích thước ứng với chiều dài sqlpa.Size = 10; //Thêm dữ liệu vào Sqlcommand cmd.Parameters.Add(sqlpa); cmd.Parameters.Clear(); //Khai báo thuộc tính Connection cmd.Connection = con; //Khai báo phương thức thực thi SQL cmd.ExecuteNonQuery(); con.Close(); con.Dispose(); MessageBox.Show("Thành công"); } } }
View more random threads:
- Xóa cột trong SQL và cập nhật vào datagridview
- hỏi về socket
- các cao nhânchỉ giáo giùm
- Đưa Web ASP.NET MVC chạy trên IIS
- Giúp đỡ game lật hình
- Cần giúp đỡ load video bên user trong asp.net
- HELP lỗi Null Reference Exception !
- Làm sao set cố định port trong WCF service?
- Clipboard mới đây!!!!
- Xin hỏi đoạn code này:
-
23-10-2011, 05:39 PM #2Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
[IMG]images/smilies/1.gif[/IMG] èo! sao ko chơi thủ tục cho lành bạn? đã viết kiểu câu truy vấn như thế thì cho luôn giá trị vào chẳng nhàn hơn à. Ví dụ: sql="insert into tbl_test(ID,..) values('"+id+"','"+...)
-
23-10-2011, 05:59 PM #3Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Ok đã sửa dc rồi chỉ vì cái dòng parameter.clear ><
-
01-11-2012, 08:03 AM #4Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
command.Parameters.Add("@id", SqlDbType.VarChar).Value = id;
thế này nè bạn.
Còn về mrfour.it. Cách của bạn sẽ dính lỗi bảo mật của SQL: SQL Injection
-
01-11-2012, 07:04 PM #5Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
mình cũng bị vấn dề tương tự nhưng minh dùng lệnh select.
làm giống bạn ở trên thì bị lỗi:
Mã:Input string was not in a correct format.
Mã:protected void Page_Load(object sender, EventArgs e) { string sql = "SELECT * FROM [SANPHAM] WHERE ([MaLSP] = @MaLSP) ORDER BY NEWID()"; cmd = new SqlCommand(sql, cnn); SqlParameter sqp = new SqlParameter(); sqp.ParameterName = "@MaLSP"; sqp.Value = "MaLSP"; sqp.SqlDbType = SqlDbType.Int; cmd.Parameters.Add(sqp); da = new SqlDataAdapter(cmd); dt = new DataTable(); cnn.Open(); da.Fill(dt); cnn.Close(); CollectionPager1.PageSize = 12; //Số sản phẩm hiển thị trên một trang CollectionPager1.DataSource = dt.DefaultView; CollectionPager1.BindToControl = dtlsp; dtlsp.DataSource = CollectionPager1.DataSourcePaged; }
Trứng rung điều khiển từ xa Vibrator Spark Of Love Sản phẩm trứng rung bluetooth có điều khiển từ xa này được thiết kế với tông màu Rose Gold viền kim khí trải qua. kích tấc 7,4cm x 3,5cm giúp trứng...
TOP 3 trùy rung điều khiển từ xa...