如果楼主只是考虑下这样做,无妨,有想法。但是这样做,个人认为劳时劳力,但结果还不会很理想,因为数据库本来就是对插入数据进行存储和管理,但是现在楼主试图让其对数据插入进行筛选,貌似越权了。这些操作应该时数据库操作的逻辑代码来做的,数据库来做会降低开发效率。
其他数据库记得可以用check来做,但是mysql好像check没作用
尝试 CHECK 来处理
例如下面的 建表语句。
mysql> CREATE TABLE test_create_tab4 (
-> id INT PRIMARY KEY,
-> val VARCHAR(10) NOT NULL,
-> val2 INT
-> CHECK(val2 >= 0 AND val2 <= 100)
-> );
-> //
Query OK, 0 rows affected (0.06 sec)
对于 email 字段,@163.com结尾的
可以 CHECK ( RIGHT(email , 8) = '@163.com')
PS:
折腾好了以后,最好测试测试看看,CHECK 不一定 有效。
-----
悲剧,刚才又去查询了一下,原来 mysql 不支持 CHECK ...
能编译成功,但是check约束不起作用
WHERE emailAddress LIKE '%@163.com%
先把@163.com的结果筛选出来再插入不就得了
还是在输入窗口判断吧。那样出错了,可以实时提醒输入者!