A. 1.sql数据库,CHECK约束密码长度怎么写(假设password>=6) 2.设置默认密码为“123456”
ALTER TABLE 表名
ADD CONSTRAINT CK_约束名 CHECK(len(列名)>=6)
B. 怎么编写sql2005的约束条件,我要的条件是密码不能小于6个字符,且不能为汉字。好心人谢谢了!!
alter table z_register add constraint ck_password check (len(z_password)>=6);
区分汉字只有一个思路,就是用substring,用字节模式计算的时候可以区分,汉字是2个字节
然后这个最大位数不等于len()的长度就说明有汉字
C. SQL 中如何批量添加约束(主要是默认值约束)
晕。没这么一说吧,,编程基本都是用的英文的。我给你看下我写的约束:/*--添加BBsDBD表的各列的约束--*/alter
table
BBsusersadd
constraint
pk_uid
primary
key
(uid),
--主键
constraint
df_upassword
default
(888888)
for
upassword,
--密码的默认值为6个8
constraint
df_usex
default
(1)
for
usex,
--性别默认为男(1)
constraint
df_uclass
default
(1)
for
uclass,
--级别默认为1星级
constraint
df_regdate
default
(getdate())
for
uregdate,
--日期默认为当前日期
constraint
df_ustate
default
(0)
for
ustate,
--状态默认为离线
constraint
df_upoint
default
(20)
for
upoint,
--积分默认为20点
constraint
ck_uemail
check
(uemail
like
'%@%'),
--邮箱地址必须包含‘@’字符
constraint
ck_upassword
check
(len(upassword)>=6)
--密码至少6位数GO注:--密码至少6位数(是这行约束的注释)
答案补充
现在编程的工具用的都是英文的。不支持中文编程SQL2005没有中文编程的,包括约束。
答案补充
我晕。。没有这个的。你所看到的中文是在数据库查询的时候用
AS关键字重新命名的,例如:selsct
name
as
姓名,age
as
年龄
from
stuInfo.这样查询出来的结果就是表头是中文的。。另外。你想插入中文数据就比如:insert
into
c
(cid,cn)values('s001','税收基础')那么表建立好了之后,就是cid列:s001,cn列:
税收基础(中文的现实)。
答案补充
说真的,我也不知道,这个约束是你们规定必须要的,还是你自己想去尝试。。说真的,SQL2005里面不需要加这个约束的。。也没有用字节或者Unicode码
加这方面的约束的方法。我工作了2年多了,从来没有在这数据库方面有这个要求的。。真的是不需要。。
D. 在数据库中如何编写check约束实现密码的六个数字不能相同
可用check约束来实现。
如,创建测试表:
createtabletest(idvarchar(10)check(<a href="https://www..com/s?wd=len&tn=44039180_cpr&fenlei=-bIi4WUvYETgN-TLwGUv3En1n1P10YPjbL"target="_blank"class="-highlight">len</a>(id)>=6));
测试方法:
1、插入一个不足6位长的字符,会报如下错误:
E. SQL 约束 怎样写能吧密码长度必须大于6吗。 Password>=6 and Password<=50;
check 约束里面 设置 一般是在表设置列名 后面 写上 check(len(Password)>=6 and len(Password)<=50) 注意 这个是sqlserver 里面这样设置的 其他数据库我就不知道了
F. 在数据库(Sql)中要check 约束一个密码的长度表达式怎么写的
比如字段已经创建好,可以写如下语句进行长度限制
alter table xxx add constraint ck_len_pass check(length(password)=16)
这样就限定了密码为16位
G. sql server 2008中怎么约束一个密码的长度必须大于6
--创建表
CREATE TABLE [dbo].[tb_e_User](
[UserID] [varchar](50) NOT NULL,
[UserPassword] [varchar](50) NOT NULL,
CONSTRAINT [PK_tb_e_User] PRIMARY KEY CLUSTERED
(
[UserID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
SET ANSI_PADDING OFF
GO
--约束规则
ALTER TABLE [dbo].[tb_e_User] WITH CHECK ADD CONSTRAINT [CK_tb_e_User_PasswordLen] CHECK ((len([UserPassword])>(6)))
GO
--添加约束
ALTER TABLE [dbo].[tb_e_User] CHECK CONSTRAINT [CK_tb_e_User_PasswordLen]
GO
/*
然后再试试,输入数据,小于6位的密码是不被保存的
*/
H. SQL密码的check约束怎么写 要约束密码是字母数字钱时6-10位之间 谢谢。。
alter table t add constraint ck_pass check(PATINDEX('%[^a-zA-Z0-9]%',password)=0 and len(password) between 6 and 10)
这样可以 呵呵
I. SQL中,假设有一张表,有列名“UPassword”,要求约束条件为:UPassword字段至少包含6个字符,应该怎么写
createtableTable_1(
avarchar(50)check(LEN(a)>=6)
)
或者你在sql server 的对应字段的约束表达式里面写上LEN(字段名称)>=6