sql 2000,要求限制电话号码十一位,只能是数字~数据类型char(12),约束表达式怎么写

sql 2000,要求限制电话号码十一位,只能是数字~数据类型char(12),约束表达式怎么写,第1张

SQL Server 2000 没有, 就拿个 SQL Server 2005 的来凑个数。

不大清楚 SQL Server 2000 里面,有没有 PATINDEX 函数了。

CREATE TABLE #temp(

test char(12)

CONSTRAINT chk_test

CHECK (

LEN(RTRIM(test)) = 11 AND

PATINDEX('%[^0-9]%', RTRIM(test)) = 0)

);

-- 失败 长度不符合,且是英文

INSERT INTO #temp VALUES ('a');

-- 失败 长度不符合

INSERT INTO #temp VALUES ('1');

-- 失败 长度不符合

INSERT INTO #temp VALUES ('123456789012');

-- 失败 长度符合 但是英文

INSERT INTO #temp VALUES ('1234567890a');

-- 成功

INSERT INTO #temp VALUES ('12345678901');

数据库中约束一个密码的长度分两种情况,一种是表还未建,在建立过程中约束;另一种是表已存在,在此基础上约束。 工具:sqlserver 2008 R2 第一种情况(创建表过程中创建约束): 1、语句如下: create table [user](id int,pwd varchar(20) ch

什么数据库 普通的 Oracle , DB2, SQL Server 的话, 简单。 例如: CHECK ( 性别 IN ( '男' , '女', '不明' ) ) 如果是 Mysql 的话, 使用 enum 也就是建表的时候指定。 例如: mysql> CREATE TABLE test_create_tab5 ( -> id INT PRIMARY KEY

可用check约束来实现。 如,创建测试表: create table test(id varchar(10) check (len(id)>=6));测试方法: 1、插入一个不足6位长的字符,会报如下错误: 2、插入一个大于等于6位长的字符,会提示成功:

ALTER TABLE 表名 ADD CONSTRAINT CK_约束名 CHECK(len(列名)>=6)

年龄 > 18

只能约束位数 CONSTRAINT cCusAbbName CHECK (cCusAbbName LIKE '%[a-zA-Z]%') and LENGTHB(cCusAbbName) > 6)

alter table Table add constraint CN_Column1 check (len(Column1)>6) 替换掉Table和Column1即可

check 约束里面 设置 一般是在表设置列名 后面 写上 check(len(Password)>=6 and len(Password)

检查约束首字母为s: check(col1 like 's%') 检查约束前3位和后8位均为数字字符: check(col2 like '[0-9][0-9][0-9]%[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]')

create table aa( , pwd varchar(32), , check(len(pwd) > 6) --用check约束,pwd字段长度必须要6位以上)

建表时直接创建约束

create  table 表名

(字段名 int check (字段名 in (0,1,2)))

表已存在后创建

alter table 表名 add constraint 约束名 check(字段名  in (0,1,2))

约束类型

总的来说有五种:唯一性和主键约束、外键约束、检查约束、空值约束、默认值约束,约束的简介

数据的完整性是指数据的正确性和一致性,可以通过定义表时定义完整性约束,也可以通过规则,索引,触发器等。约束分为两类:行级和表级,处理机制是一样的。行级约束放在列后,表级约束放在表后,多个列共用的约束放在表后。

完整性约束是一种规则,不占用任何数据库空间。完整性约束存在数据字典中,在执行SQL或PL/SQL期间使用。用户可以指明约束是启用的还是禁用的,当约束启用时,他增强了数据的完整性,否则,则反之,但约束始终存在于数据字典中。

有五大关键词,UNIQUE和PrimaryKey,ForeignKey,CHECK,NOTNULL,DEFAULT

以上就是关于sql 2000,要求限制电话号码十一位,只能是数字~数据类型char(12),约束表达式怎么写全部的内容,包括:sql 2000,要求限制电话号码十一位,只能是数字~数据类型char(12),约束表达式怎么写、在数据库(Sql)中要check 约束一个密码的长度表达式怎么写的、sql2008如何约束指定三个数字,只能输入0.1.2这三个数等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10186994.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-06
下一篇 2023-05-06

发表评论

登录后才能评论

评论列表(0条)

保存