呵呵,最近在学MySQL,遇到一个问题搞不定,百度谷歌也没结果,上这里请教各位大牛,忘不吝赐教,谢谢大家!问题如下:
1.MySQL是否支持check语句?如果支持,麻烦给个例子。
2.怎样使MySQL的中输入的值满足一定的规则?
如:在表test中怎样使column1的值的范围是在100-2000间,而使column2的字符串满足第一个字符为‘n’,后面的字符为随着插入的记录数从0开始递增的数字?create table test
(
column1 int,
column2 varchar(20)
);
1.MySQL是否支持check语句?如果支持,麻烦给个例子。
2.怎样使MySQL的中输入的值满足一定的规则?
如:在表test中怎样使column1的值的范围是在100-2000间,而使column2的字符串满足第一个字符为‘n’,后面的字符为随着插入的记录数从0开始递增的数字?create table test
(
column1 int,
column2 varchar(20)
);
解决方案 »
- 这个还可以优化吗
- 这条mysql语句explain看起来已经很优化的了,但是执行起来要十几秒
- windows下的mysql配置应该如何设置
- 弱问关于MYSQL commandline的问题
- mysql储存量的问题
- 我从没接触过数据库,今天问一个很菜的问题,大家不要笑话我,就是怎样用MYSQL建立.sql数据库?
- 请问如何写一个写shell文件,从mysql数据库中读取数据?
- 什么错误信息,如何改正,mysql中create table错误
- PHP中mysql_data_seek函数做什么的????
- 有谁知道为什么mysql导入csv文件总是不成功吗?
- 急求:在Linux(redhat9.0)下以非ROOT用户安装MYSQL方法
- 两个小问题。
没有好办法,其中的一种做法就是用触发器。但个人认为得不偿失,不如直接在你的程序中来实现。在触发器中对 new.column1 , new.column2 进行检查,如不符合则中断执行。
参见
MySQL 中如何在触发器里中断记录的插入或更新?
http://blog.csdn.net/ACMAIN_CHM/archive/2009/07/25/4380183.aspx
真的就没其他办法了么?
1、支持CHECK的写法,但没有用(至少目前版本是这样)
2、在数据库中用TRIGGER实现,也可以在语言中用代码实现。