如何在mysql中插入电话号码的检查约束



我有一个客户表,我希望电话号码的格式为"+906924679833",但每当我插入类似的内容时,我都会得到一个"检查约束"…'违反了"。

CREATE TABLE customer
(
AFM int(30) not null,
name varchar(30),
surname varchar(30),
phone char(13) not null,
address varchar(30),
DOY varchar(4),
constraint chk_phone check (REGEXP_LIKE(phone, '^+d{12}$')),
PRIMARY KEY(AFM)
);

我想插入以下值

INSERT INTO customer (AFM, name, surname, phone, address, DOY)
VALUES
(1023452569, 'Charlie', 'Hunnam', '+306943625956', 'California', 'A');

谢谢!!!

以正确的方式对数字、[0-9]和转义加号使用更简单的构造,或者i-如果有疑问-将其放入括号表达式中:

'^[+][0-9]{12}$'

最新更新