只是尋求答案,爲什麼我的更新聲明將無法按預期執行。我在SQL Server中創建了一個名爲'Update_Employee'的存儲過程,然後我調用VB.Net中的過程來更新記錄。這是我迄今所做的:更新聲明將不會按預期執行
VB.net
Dim con As New SqlConnection(ConfigurationManager.ConnectionStrings("conEmployee").ConnectionString)
Dim cmd As New SqlCommand
cmd.CommandType = CommandType.StoredProcedure
cmd.CommandText = "Update_Employee"
cmd.Parameters.AddWithValue("@empID", SqlDbType.Int).Value = lblIDNum.Text.Trim
cmd.Parameters.AddWithValue("@empName", SqlDbType.VarChar).Value = txtName.Text.Trim
cmd.Parameters.AddWithValue("@empAdd", SqlDbType.VarChar).Value = txtAddress.Text.Trim
cmd.Parameters.AddWithValue("@empPhone", SqlDbType.VarChar).Value = txtPhone.Text.Trim
cmd.Parameters.AddWithValue("@empEmail", SqlDbType.VarChar).Value = txtEmail.Text.Trim
cmd.Connection = con
Try
con.Open()
cmd.ExecuteNonQuery()
Catch ex As Exception
Throw ex
Finally
con.Close()
con.Dispose()
End Try
存儲過程腳本:
USE [Company]
GO
/****** Object: StoredProcedure [dbo].[Update_Employee] Script Date: 08/20/2015 11:20:27 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[Update_Employee]
@empID int,
@empName varchar(50),
@empAdd varchar(50),
@empPhone nchar(11),
@empEmail varchar(50)
AS
BEGIN
SET NOCOUNT ON;
UPDATE tbl_EMPLOYEE SET EMP_NAME = @empName, EMP_ADD = @empAdd, EMP_PHONE = @empPhone, EMP_EMAIL = @empEmail
WHERE EMP_ID = @empID
END
問題是什麼? – Sherlock
有沒有錯誤? – Dnyanesh
請永遠不要編碼'趕上例外拋出前'。那隻會讓你悲傷。至於'Try'塊的其餘部分,您應該使用'Using'來代替。 – Enigmativity