如下所示,新建一个表:
create table if not exists student (
id int primary key auto_increment,
name varchar(20),
user_id varchar(20)
)charset=utf8;
建了一个学生表,往里面插入两条数据看看,其中user_id是身份证号的意思。
insert into student (name, user_id) values(lixiaolong, x20123255455);
会报错。
如果我们都插入纯数字:
insert into student (name, user_id) values(123, 1236);
是没有问题的。
插入一个字符串,一个纯数字:
insert into student (name, user_id) values(abc, 123);
会报错。
前面加个单引号:
insert into student (name, user_id) values('李小龙', 123); 这是正常的!
如果将123前面加个字母:
insert into student (name, user_id) values('李小龙', x123);
报错!
总结:保险起见,给varchar或text赋值时一定要带上单引号!