建表时check邮箱格式怎么写?

来源:百度知道 编辑:UC知道 时间:2024/07/01 02:04:59
CREATE TABLE mytable
(
Email VARCHAR(??) CHECK( ???? )
)
求个严谨的写法

SQL Server 2005 对正则表达式支持,因此如果您是使用的是它,那么可以写成
CREATE TABLE [Account]
(
[AccountNumber] nvarchar(20) CHECK (dbo.RegexMatch(
[AccountNumber], '^[A-Z]{3,5}\d{5}-\d{3}$' ) = 1),
[PhoneNumber] nchar(13) CHECK (dbo.RegexMatch(
[PhoneNumber], '^\(\d{3}\)\d{3}-\d{4}$' ) = 1),
[Email] nvarchar(500) CHECK (dbo.RegexMatch(
[Email], '^[a-zA-Z0-9_\.]+@[a-zA-Z0-9-]+[\.a-zA-Z]+$') = 1)
)