[.NET] 新增資料進資料庫卻拿不到值?

看板Visual_Basic作者 (遊)時間17年前 (2008/05/14 01:35), 編輯推噓0(003)
留言3則, 2人參與, 最新討論串1/1
各位大大好~ 我之前使用SQL SERVER去連2005,用以下的語法是可以新增,我只是將 原有的SQL元件更換成MYSQL的元件,執行後可以新增資料,可是拿到的 值卻是有拿跟沒拿一樣,例如我應該輸入的病歷號碼為'1234567',而 存進去的值是'0',該存入名稱的地方,存進去的是'@name'...等等 手邊只有連SQL SERVER的書,不知道是否MYSQL用法上會有差別?? 語法: Dim ConnString As String = "Data Source=XX.XX.XX.XX;uid=XX;pwd=XX;Initial Catalog=mt;CharSet=big5;" Dim conn As MySqlConnection = New MySqlConnection(ConnString) conn.Open() instsql = "INSERT INTO mt.patient (annum,name,vidate,birdate,sex,tel) values ('@annum','@name','@vidate','@birdate','@sex','@tel')" Dim instcmd As MySqlCommand = New MySqlCommand(instsql, conn) instcmd.Parameters.Add(New MySqlParameter("@annum", MySqlDbType.Int16, 7)) instcmd.Parameters.Add(New MySqlParameter("@name", MySqlDbType.VarChar, 50)) instcmd.Parameters.Add(New MySqlParameter("@vidate", MySqlDbType.Date)) (省略...) instcmd.Parameters("@annum").Value = TextBox1.Text instcmd.Parameters("@name").Value = TextBox2.Text instcmd.Parameters("@vidate").Value = DateTimePicker2.Value (省略...) Try Dim i As Integer = instcmd.ExecuteNonQuery() MsgBox("新增" & i & "資料成功") Catch ex As Exception MsgBox("新增資料失敗,錯誤訊息:" & ex.Message) Finally conn.Close() End Try 有勞各位大大解題~OTL -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.127.83.53

05/14 09:16, , 1F
把參數(@開頭的那些)前後的單引號拿掉
05/14 09:16, 1F

05/14 10:08, , 2F
我拿掉之後他錯誤訊息為欄位'annum'不能為空值,annum是PK
05/14 10:08, 2F

05/14 10:08, , 3F
但是我textbox1確定是有值在上面。不知為何?
05/14 10:08, 3F
文章代碼(AID): #18AT5_x6 (Visual_Basic)