【问题标题】:vb.net save in phpmyadmin null values returnvb.net 保存在 phpmyadmin 中返回空值
【发布时间】:2012-07-24 14:36:11
【问题描述】:

我是 vb.net、sql 的新手,甚至在 phpmyadmin 中记录数据。当我使用我的界面添加记录时,我检查了我的 phpmyadmin,它表明表中有一个条目,这意味着我的 vb.net 和 phpmyadmin 已连接,但值返回 NULL。我怎样才能使它不为NULL?相反,记录所需的数据?

这是我的代码:

Dim ServerString As String = "Server=localhost; database=patientinfo;user id=root;password=" 
Dim SQLConnection As New MySqlConnection()

Public Sub SaveInfos(ByRef SQLStatement As String)
    Dim cmd As MySqlCommand = New MySqlCommand

    With cmd
        .CommandText = SQLStatement
        .CommandType = CommandType.Text
        .Connection = SQLConnection
        .ExecuteNonQuery()

    End With
    SQLConnection.Close()

    'MsgBox("Successfully Added!")
    MsgBox("Successfully Saved")
    Me.Visible = False
    Mainform.Show()

    SQLConnection.Dispose()
End Sub

 Private Sub cmdSave_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdSave.Click
    Try
        '===========================Add New Patient========================================
        bednumber = txtbednum.Text
        patient_name = txtName.Text
        patient_age = Convert.ToInt32(txtAge.Text)
        date_of_confinement = Date.Parse(dtpDate.Value)
        type_of_sickness = txtSickness.Text
        type_of_IV_fluid = txtFluid.Text
        number_of_bottles = Convert.ToInt32(txtBottle.Text)
        drop_rate = Convert.ToInt32(txtDrop.Text)

        'To check if all values have been filled up
        If patient_name = "" Or patient_age = "" Or date_of_confinement = "" _
        Or type_of_sickness = "" Or type_of_IV_fluid = "" Or number_of_bottles = "" Or drop_rate = "" _
        Then

            MsgBox("Please Complete All the Required Fields")

        Else

            Dim SQLStatement As String = "INSERT INTO patient(bednumber, name, age, date_of_confinement,type_of_sickness, type_of_IV_fluid, number_of_bottles, drop_rate) VALUES(@bednumber, @name, @age, @date_of_confinement, @type_of_sickness, @type_of_IV_fluid, @number_of_bottles, @drop_rate)"
            SaveInfos(SQLStatement)

这是我的表格在 phpmyadmin 中的样子:

http://i1182.photobucket.com/albums/x454/catherinefbalauro/Untitled.png

任何帮助将不胜感激。谢谢! :)

【问题讨论】:

  • 我已经解决了 :)) [关闭]

标签: mysql vb.net phpmyadmin


【解决方案1】:

做这样的事情:

' Assuming that your SQLStatement is as follow
' INSERT INTO MyTableName 
' VALUES (  @bednumber, @name, @age, 
'           @date_of_confinement,@type_of_sickness,
'           @type_of_IV_fluid, @number_Of_Bottles,
'           @drop_rate
'        )
With cmd
    .CommandText = SQLStatement
    .CommandType = CommandType.Text
    .Connection = SQLConnection

    .Parameters.AddWithValue("@bednumber", txtbednum.Text)
    .Parameters.AddWithValue("@name", txtName.Text)
    .Parameters.AddWithValue("@age", txtAge.Text)
    ' dothe same until
    ' you have added allthe parameter
    ' with values

    SQLConnection.Open()
    .ExecuteNonQuery()
End With

【讨论】:

  • vb.net 不能接受 .addwithvalue,因为它说它不是 MySqlParameterCollection o.o 的成员
  • 不,应该有工作..看看这段代码stackoverflow.com/a/10524452/491243
  • C#和vb的语法不一样吧?当我尝试你的建议时,它说它不是 mysqlparameter 的成员。我的代码接受的是这样的: .Parameters.Add(New MySqlParameter("@bednumber", txtbednum.Text)) 但仍然为 NULL
猜你喜欢
  • 1970-01-01
  • 2012-02-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-11-20
  • 2014-04-05
  • 1970-01-01
  • 2011-01-10
相关资源
最近更新 更多