往数据库里添加‘用户名’,同时判断数据库中‘用户名’是否已经存在,如果存在提示“用户名已存在”如果不存在,往数据库中添加,在delphi中怎么实现

解决方案 »

  1.   

    以‘用户名’作为查询条件,查询该用户名,如果记录>0,则表明存在,如果=0,则执行你的insert语句。
      

  2.   

    Select U_Name from UserTable
    if Query.RecordCount >0 then
       MessgeBox('用户名已存在')
    else
       Query.Insert;
       ......
       Query.Post;
      

  3.   

    假如在delphi开发平台利用ADO数据连接,可以用如下代码:
    其中假设UserName为所定义的变量,UserName可以由外值传来,如UserName:=trim(Edit1.text);
      with ADOQuery1 do
      begin
        close;
        sql.Clear;
        sql.Add('select * from User where U_Name=:a');
        parameters.ParamByName('a').Value:= UserName;
        open;
      end;
      if not ADOQuery1.eof then
      begin
        showmessage('此用户名已存在!');
      end
     else
      begin
        with ADOQuery1 do
        begin
          close;
          sql.Clear;
          sql.Add('insert into User(U_Name,....) values(:a,....) ');
          parameters.ParamByName('a').Value:= UserName;
          ..................;
          ExecSQL;
        end;    
      end
      

  4.   

    数据库用的是sql server 2000 ;
    delphi平台是用ADO连接的数据库;
    在上面回复中:
    sql.Add('select   *   from   User   where   U_Name=:a'); 
            parameters.ParamByName('a').Value:=   UserName; 
    中 “a” 是什么意思呀???
      

  5.   

    如果判断用户名存在的话,假设用ado
    可以这样试验一下啊,借用楼上大哥的例子
        with   ADOQuery1   do 
        begin 
            close; 
            sql.Clear; 
            sql.Add('select   *   from); 
            parameters.ParamByName('a').Value:=   UserName; 
            open; 
        end; 
      if not locate('a',UserName,[]) then
        showmessage('此用户名已存在!')
      else
        begin
            with   ADOQuery1   do 
            begin 
                close; 
                sql.Clear; 
                sql.Add('insert   into   User(U_Name,....)   values(:a,....)   '); 
                parameters.ParamByName('a').Value:=   UserName; 
                ..................; 
                ExecSQL; 
            end;    
        end;
      

  6.   

    数据库用的是sql   server   2000   ; 
    delphi平台是用ADO连接的数据库; 
    在上面回复中: 
    sql.Add('select       *       from       User       where       U_Name=:a');   
                    parameters.ParamByName('a').Value:=       UserName;   
    中   “a”   是什么意思呀???  a 就是你传入的用户名