作者b8888 (b8888)
看板Visual_Basic
標題[.NET] 必須宣告純量變數
時間Fri Jan 4 09:51:14 2013
請輸入專案類型(網站專案或者應用程式專案):ASP.NET
各位好
請問我在執行下列指令時會出現
必須宣告純量變數 "@id_no"。
的錯誤訊息,請問該如何修正??
(以"純"的sql指令執行是OK的)
先謝謝大家
Protected Sub Button2_Click(ByVal sender As Object, ByVal e As
System.EventArgs) Handles Button2.Click
Try
Dim Conn As SqlConnection = New SqlConnection
Conn.ConnectionString =
WebConfigurationManager.ConnectionStrings
("SqlConn").ConnectionString
Conn.Open()
Dim cmd As SqlCommand = New SqlCommand("insert into
FileStore(id_no,title_nm,file_nm,class_no,user_no) values
(@id_no,@title_nm,@file_nm,@class_no,@user_no)", Conn)
Dim sqlPara As New SqlParameter()
'id_no nchar 20 , tabl 欄位layout
sqlPara.ParameterName = "@id_no"
sqlPara.SqlDbType = SqlDbType.Char
sqlPara.Value = "A111"
sqlPara.Size = 20
'title_nm nchar 50 , tabl 欄位layout
sqlPara.ParameterName = "@title_nm"
sqlPara.SqlDbType = SqlDbType.Char
sqlPara.Value = "222"
sqlPara.Size = 50
'file_nm nchar 20 , tabl 欄位layout
sqlPara.ParameterName = "@file_nm"
sqlPara.SqlDbType = SqlDbType.Char
sqlPara.Value = "3333"
sqlPara.Size = 50
'class_no nchar 10 , tabl 欄位layout
sqlPara.ParameterName = "@class_no"
sqlPara.SqlDbType = SqlDbType.Char
sqlPara.Value = "222"
sqlPara.Size = 10
'user_no nchar 10 , tabl 欄位layout
sqlPara.ParameterName = "@user_no"
sqlPara.SqlDbType = SqlDbType.Char
sqlPara.Value = "222"
sqlPara.Size = 10
'==此段為先前執行 insert 測試,是OK的
'Dim cmd As SqlCommand = New SqlCommand("insert into
'FileStore(id_no,title_nm,file_nm,class_no,user_no) values
'('111','222','33','44','55')", Conn)
'=================================================
cmd.Parameters.Add(sqlPara)
cmd.ExecuteNonQuery()
Conn.Dispose()
Catch ex As Exception
Response.Write(ex.Message)
End Try
End Sub
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.40.197.169
推 fumizuki:每一個參數定義前都要 New SqlParameter 01/05 13:08
推 fumizuki:不然就是一直在設定同一個參數的屬性.. 01/05 13:09
→ fumizuki:每一個參數定義完成後也都要Parameters.Add... 01/05 13:10