一个winform当向数据库写入的时候,如果插入的值在数据库已经存在的时候,就不插入。
应该怎么写呢?是不是首先读取数据库,判断是否重复?               OleDbConnection conn = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=db1.mdb");
                    conn.Open();
                    string insert = "insert into shoukuanren (编码,名称) values ('" + bianma_txt.Text + "','" + mingchen_txt.Text + "')";
                    OleDbCommand comm = new OleDbCommand(insert, conn);
                    comm.ExecuteNonQuery();
                    conn.Close();

解决方案 »

  1.   

    if not exists(select * from XX where xx=xx)
    insert into xx
      

  2.   

    要判断。先搜素数据库数据,我用 SqlDataAdapter 
      

  3.   

    我是用access做数据库的
    存储过程怎么写呢??
      

  4.   

    嗯,还是先判断一下吧~![align=center]*********************************************************** 
                      欢迎使用 CSDN 小秘书
                  CSDN 小秘书下载
    ***********************************************************[/align]
      

  5.   


                       OleDbConnection conn = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=db1.mdb");
                        conn.Open();
                        if not exists(select * from shoukuanren "编码" =bianma_txt.Text)
                        {
                            string insert = "insert into shoukuanren (编码,开户名称) values ('" + bianma_txt.Text + "','" + mingchen_txt.Text + "')";
                            OleDbCommand comm = new OleDbCommand(insert, conn);
                            comm.ExecuteNonQuery();
                            conn.Close();
                            MessageBox.Show("插入成功!");
                        }
     这样写不对啊??该怎么写呢
      

  6.   


    我说过我的程序是winform啊 数据库是access
    不连接网络的。所以你说的问题都不会出现吧