如何知道数据库中是否已存在给定数据?

时间:2014-09-08 11:58:36

标签: mysql .net vb.net

我使用VB 2008作为我的语言,使用MySQL作为数据库服务器。

我试图做的是一个注册表单,它会让用户知道他们输入的ID是否已被删除。我已经可以在数据库中添加数据,唯一的问题是,如果我的数据库中已经存在ID,我似乎无法拒绝输入的数据。

我已经尝试过谷歌了,但是他们给的只是PhP代码,有人可以给我这个条件的具体代码吗?

这是我到目前为止所尝试的内容:

    Dim DV As String = "Select PATIENTNO From PATIENTINFO Where ='" & text_PNo.Text & "'"

    Try
        MysqlConn.Open()
        With SqlCommand
            .CommandText = sqlquery
            .Connection = MysqlConn
            If DV = text_PNo.Text Then
               MsgBox("ID already exists")
            Else
             'This is where inserting data in database will take place,
            End If

        End With
        SqlCommand.ExecuteNonQuery()

    Catch myerror As MySqlException
        MessageBox.Show("Cannot connect to database: " & myerror.Message)

    Finally
        MysqlConn.Dispose()
    End Try

1 个答案:

答案 0 :(得分:1)

尊重,你不是很亲密。

首先,您的查询扩展为

Select PATIENTNO From PATIENTINFO Where ='12345'

这不是一个有效的MySQL查询。你需要这样的东西。

Select PATIENTNO From PATIENTINFO Where PATIENTNO ='12345'

其次,您必须在连接到数据库后实际运行查询。以下是MySQL文档http://dev.mysql.com/doc/refman/5.0/es/connector-net-examples-mysqldatareader.html

中的示例

最后,您可以尝试使用INSERT查询将id号插入表中。如果INSERT在重复键冲突时失败,则表示该ID已存在。