要SQL Server 中约束字段LoginName 只能为英文字符,check 语句怎么写?哪位高手指点一下,

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了要SQL Server 中约束字段LoginName 只能为英文字符,check 语句怎么写?哪位高手指点一下,相关的知识,希望对你有一定的参考价值。

LoginName 为登录名,类型为nvarchar(20),Name为姓名,类型为nvarchar(50)
要求 LoginName 只能为英文字符,且不能与Name 相同。

* 在CHECK约束的表达式中必须引用到表中的一个或多个字段,并且表达式的计算结果必须是一个布尔值
* 可以在表级或字段级定义
* 对同一个字段可以定义多个CHECK约束,同时也可以定义NOT NULL约束
 
create table abc
( LoginName nvarchar(20),
Name nvarchar2(50),
)

create table name
(sal name(7,2)
constraint emp_sal_ck1 check (sal > 0)
)
alter table name add CONSTRAINT LoginName check(isstring(LogingName) And !=Name)
参考技术A 试试 updateupdate 表明 set 带撇字段=substring(2,len(带撇字段)-1) 参考技术B IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tblEmployee_LoginName_rule')
ALTER TABLE tblEmployee
DROP CONSTRAINT tblEmployee_LoginName_rule
ALTER TABLE tblEmployee
WITH NOCHECK
ADD CONSTRAINT tblEmployee_LoginName_rule CHECK (LoginName <> [Name] AND LoginName <> '')
GO
参考技术C CHECK([COL_NAME] IN [A-Z])

以上是关于要SQL Server 中约束字段LoginName 只能为英文字符,check 语句怎么写?哪位高手指点一下,的主要内容,如果未能解决你的问题,请参考以下文章

SQL Server中有关约束(constraint)的一些细节

SQL server约束

sql server 多字段约束不能完全一样

SQL server中某个表的字段值为啥不能修改?

SQL Server 中系统视图sysobjects中type字段的说明

SQL Server中的六种约束:主键约束,外键约束,唯一约束,非空约束,检查约束,默认约束