数据库中一张表格是存客户信息的,然后我想在客户注册时,传进来一个字符串,看看与表格中当前ID有没有重复的,请问高手怎么解答?我的想法是:把表格中已有的数据先取出来放在一个数组中,然后再把传进来的这个字符串与数组中的字符串逐个比对,不知道怎么写代码,望高手解答!

解决方案 »

  1.   


    你为什么不用sql语句呢,如果客户不存在,则返回空记录。
    select 客户名字 from 客户表 where 客户名字='新的客户名字'
      

  2.   

    1楼是个办法;
    同时也可以把这个字段设置成主键,直接插入,try{comm.execute();}catch{messagebox("已存在");
    }主键效率高
      

  3.   


    using(SqlConnection con = new SqlConnection("Data Source=.;Initial Catalog=你的数据库名称;uid=sa;pwd=sa;"))
    {
        con.Open();
        string strSQL = "select * from CustomerInfo where CustomerName='"+this.tbCustomerName.Text.Trim()+"'";
       using(SqlCommand cmd = new SqlCommand(strSQL,con))
       {
           int retNum = (int)cmd.ExecuteScalar();   
           if(retNum!=0)
           {
                 //说明数据库客户表中已经存在同名的客户了
              
           }
           else
           {
                  //没有同名的客户,插入注册客户信息
                  strSQL2 = "insert into CustomerInfo values('"+this.tbCustomerName.Text.Trim()+"')"; //其他字段自己加
                 cmd.ExecuteNonQuery();
           }
      
       }
    }
      

  4.   

    这是个很明显的问题
    用sql语句直接就可以实现了
      

  5.   

    C/S还是B/S的,可以在打开软件时将数据库中数据读出来放在一个DataTable中,或者是什么List中,也就是放在内存中做临时文件用,然后每次注册时去判断是否在列表中出现!这样能提高速度!否则每次访问数据库的话会很耗资源