My code
Dim connectionString As String = ConfigurationManager.ConnectionStrings("ConString").ConnectionString
Dim conn As New SqlConnection(connectionString)
Dim cmd As New SqlCommand(query, conn)
cmd.CommandType = CommandType.StoredProcedure
cmd.Parameters.AddWithValue("@fName", txtFirstName.Text)
cmd.Parameters.AddWithValue("@Lname", txtLName.Text)
cmd.Parameters.AddWithValue("@Sex", CBSex.SelectedItem.ToString)
cmd.Parameters.AddWithValue("@DOB", Convert.ToDateTime(DTDOB.Text))
cmd.Parameters.AddWithValue("@Age", txtAge.Text)
cmd.Parameters.AddWithValue("@Address", txtAddress.Text)
cmd.Parameters.AddWithValue("@phno", txtPhNo.Text)
cmd.Parameters.AddWithValue("@Email", txtEmail.Text)
cmd.Parameters.AddWithValue("@IdNo", txtIDNo.Text)
cmd.Parameters.AddWithValue("@contactPerson", txtContactPerson.Text)
cmd.Parameters.AddWithValue("@Relation", txtRelation.Text)
cmd.Parameters.AddWithValue("@claimid", SqlDbType.VarChar)
cmd.Parameters("@claimid").Direction = ParameterDirection.Output
cmd.Parameters.AddWithValue("@cpPhno", txtCPPhno.Text)
cmd.Parameters.AddWithValue("@Photo", profilepicture)
cmd.Parameters.AddWithValue("@ID", idorpassport)
Dim a As Integer
conn.Open()
a = cmd.ExecuteNonQuery()
If a > 0 Then
MessageBox.Show("Data Added successfully and your clientID is :" & cmd.Parameters("@claimid").Value.ToString())
Else
MessageBox.Show("Please try Again")
End If
My storedprocedure
@fName varchar(50),
@Lname Varchar(50),
@Sex varchar(2),
@DOB date,
@Age int,
@Address varchar(500),
@phno varchar(15),
@Email Varchar(100),
@IdNo varchar(30),
@contactPerson varchar(50),
@Relation Varchar(50),
@claimid varchar(30)output,
@cpPhno varchar(15),
@Photo image,
@ID image
AS
BEGIN
if @Sex='Male'
begin
set @Sex='M'
end
if @Sex='Female'
begin
set @Sex='F'
end
insert into Client(FirstName,LastName,Sex,DOB,Age,[Address],PhNo,email,[IDCard/passNumber],ContactPerson,Relation,TelephoneNOContact,Created_date,photo,
[pass/idcard]) values(@fName,@Lname,@Sex,@DOB,@Age,@Address,@phno,@Email,@IdNo,@contactPerson,@Relation,@cpPhno,GETDATE(),@Photo,@ID)
set @claimid='CT-00000'+convert(varchar,SCOPE_IDENTITY())
update Client set ClientID=@claimid where ClientCode=SCOPE_IDENTITY()
return @claimid
END
What I have tried:
I am getting the error cannot convert varchar to type int please solve this