往数据库新增一条记录insert into之前,先查询判断一下字段里面是否有重复值,怎么实现?

如题,写到这里不知道怎么实现了,请各位大侠指点。
Private Sub Button13_Click(sender As Object, e As EventArgs) Handles Button13.Click
If TextBox1.Text = "" Then
MessageBox.Show("Please input code请输入编号")
Else
mycn.ConnectionString = "server=localhost;database=kos;uid=sa;pwd=0000;"
mycommand.CommandText = "SELECT goodsID from goods where goodsID = " & TextBox1.Text & " "
mycommand.Connection = mycn
Try
mycn.Open()
Dim mysqlreader As Data.SqlClient.SqlDataReader = mycommand.ExecuteReader
mysqlreader.Read()
If mysqlreader.GetInt32(0) = 0 Then
'怎么用插入语句实现?? 放到表GOODS里面,感谢!!!!
Else
MessageBox.Show("编号重复")
End If
Catch ex As Exception
Finally
mycn.Close()
End Try
End If
End Sub
End Class

自己找到了解决办法,,把MYCN.CLOSE ,就不会提示已经打开了。。。然后写入方法。。。。结贴了
If (mysqlreader.GetInt32(0)) = 0 Then
mycn.Close()
mycommand.CommandText = "insert into series(seriesid,treeid,name,des) values ('" & TextBox1.Text & "','10104','" & TextBox2.Text & "','" & TextBox3.Text & "')"
mycn.Open()
mycommand.ExecuteNonQuery()
If mycommand.ExecuteNonQuery > 0 Then
TreeView1.Refresh()
Else
MessageBox.Show("保存失败")

 INSERT INTO goods(goodsId,...)VALUES ...

把它写到Command里面。就可以了啊

直接用存储过程实现
先判断有没有重复值 有重复值不插入 没有重复值插入即可

已经试过了,提示COMMAND已经打开,前面的查询语句已经用到一次了,希望大家能够给出详细的实现语句,本人初学。谢谢

之前已经用了COMMAND 实现了查询 “select count (goodsid) from goods where goodsid = "&textbox1.text &"” 后面要在调用另外一个命令,另外一个插入语句时候,提示出错了。。。。请热心人给详细语句。。。。感谢!

Dim str = "select 字段 from 表 where ..."
SqlCommand cmd = bew SqlCommand(str, mycn)
Dim count = Val(cmd.ExecuteScalar().ToString())
if count > 0 Then
存在
else
不存在
end if

把对应字段设置成unique key。然后插入的时候用insert ignore into

谢谢大家的提点,查询判断我已经用 select count()实现了,返回0或者1,我的问题是,返回以后,用什么方法实现插入记录。请用代码诠释。谢谢。