update 表 set 密码字段=left(newid(),6)

解决方案 »

  1.   

    update 表 set 密码字段=STUFF(RAND(),1,2,'')
      

  2.   

    update tttt passp=left(newid(),6)
      

  3.   

    --生成随机编号的函数
    CREATE FUNCTION f_RANDBH(@BHLen int)
    RETURNS varchar(50)
    AS
    BEGIN
    DECLARE @r varchar(50)
    IF NOT(ISNULL(@BHLen,0) BETWEEN 1 AND 50)
    SET @BHLen=10lb_bh: --生成随机编号的处理
    SELECT @r=re FROM (SELECT re=STUFF(RAND(),1,2,'')) a
    WHILE LEN(@r)<@BHLen
    SELECT @r=@r+re FROM v_RAND
    SET @r=LEFT(@r,@BHLen) --检查编号在基础数据表中是否存在
    IF EXISTS(SELECT * FROM tttt WITH(XLOCK,PAGLOCK) WHERE passp=@r)
    GOTO lb_bh RETURN(@r)
    END
    GOupdate tttt set passp=dbo.f_randbh(6)
      

  4.   

    如果密码是纯数字组成:update 表 set 密码字段=substring(convert(varchar,rand(checksum(newid()))),3,6)
      

  5.   

    使用left(newid(),6)是有可能产生重复数据的。
      

  6.   

    vivianfdlpw() ( ) 信誉:100 
    你这个有4位和5位的呀
      

  7.   

    update 表 set 密码字段=replace(substring(convert(char(10),rand(checksum(newid()))),3,6),' ','0')