2013-11-15 5 views
0

저장 프로 시저를 호출하여 SQL Server에 데이터를 삽입하려고했지만 오류가 발생합니다.Vb.net에서 저장된 프로 시저 사용

프로 시저 또는 함수 'USP_InsertNguoiDung'에 제공되지 않은 '@idND'매개 변수가 필요합니다. '나', 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() 
SQL 서버

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 

간부 USP_InsertNguoiDung에서

내 저장 프로 시저

제발 도와주세요. 감사 사전

+0

당신이, 당신은 귀하의 질문에 포함 된 것을, 같은 저장 프로 시저를 호출 코멘트를 한 세트처럼 보이는 실제 VB 코드를 포함 할 수 있습니다 :당신은 당신의 매개 변수와의 sproc 이름의 철자가 틀리. 그것은 잘못된 저장 프로 시저를 호출합니다. 예를 들어 ... – dav1dsm1th

답변

0
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() 
+0

제 질문에 답장을 보내 주시면 감사하겠습니다. 그러나 매개 변수를 올바르게 작성한다고 생각합니다. – MremTy

+0

@MremTy : ** no **, ** 매개 변수를 정확하게 입력하지 않았습니다. 귀하의 VB.NET 코드. 다시 확인하십시오. 스토어드 프로 시저의 첫 번째 매개 변수로'@ idnd'가 있지만 VB.NET 코드에서는'@ id'를 사용합니다 - ** NOT ** correct -'@ idND' 여야합니다 ... –

관련 문제