0

ストアド プロシージャを呼び出して SQL Server にデータを挿入しようとしましたが、エラーが発生しました。

プロシージャーまたは関数 'USP_InsertNguoiDung' は、指定されていないパラメーター '@idND' を予期しています。

SQL Server のストアド プロシージャ

create proc USP_InsertNguoiDung
    @idND nvarchar(20),
    @tenND nvarchar(100),
    @matkhauND nvarchar(100),
    @phanquyenND nvarchar(100)
as
begin
    insert into nguoidung values(@idND, @tenND, @matkhauND, @phanquyenND)
end

exec USP_InsertNguoiDung '私', N'Mẹ', '123','NguoiDung'

ストアド プロシージャを呼び出すコード

 'Dim con As SqlConnection = _db.Getcon()
    'con.Open()
    'Cmd = New SqlCommand("USP_InsertPeople", con)
    'Cmd.CommandType = CommandType.StoredProcedure
    'Cmd.Parameters.Add(New SqlParameter("@id", ndDTO.NguoiDungID))
    'Cmd.Parameters.Add(New SqlParameter("@hoten", ndDTO.Hoten))
    'Cmd.Parameters.Add(New SqlParameter("@matkhau", ndDTO.Matkhau))
    'Cmd.Parameters.Add(New SqlParameter("@phanquyen", ndDTO.PhanQuyen))
    'Cmd.ExecuteReader()
    'con.Close()
4

1 に答える 1

0

パラメータと sproc 名のスペルが間違っています。

Dim con As SqlConnection = _db.Getcon()
con.Open()
Cmd = New SqlCommand("USP_InsertNguoiDung", con)
Cmd.CommandType = CommandType.StoredProcedure
Cmd.Parameters.Add(New SqlParameter("@idND", ndDTO.NguoiDungID))
Cmd.Parameters.Add(New SqlParameter("@tenND", ndDTO.Hoten))
Cmd.Parameters.Add(New SqlParameter("@matkhauND", ndDTO.Matkhau))
Cmd.Parameters.Add(New SqlParameter("@phanquyenND", ndDTO.PhanQuyen))
Cmd.ExecuteReader()
con.Close()
于 2013-11-15T04:23:21.160 に答える