呵呵,最近在学MySQL,遇到一个问题搞不定,百度谷歌也没结果,上这里请教各位大牛,忘不吝赐教,谢谢大家!问题如下:
1.MySQL是否支持check语句?如果支持,麻烦给个例子。
2.怎样使MySQL的中输入的值满足一定的规则?
  如:在表test中怎样使column1的值的范围是在100-2000间,而使column2的字符串满足第一个字符为‘n’,后面的字符为随着插入的记录数从0开始递增的数字?create table test
(
column1 int,
column2 varchar(20)
);

解决方案 »

  1.   


    没有好办法,其中的一种做法就是用触发器。但个人认为得不偿失,不如直接在你的程序中来实现。在触发器中对 new.column1 , new.column2 进行检查,如不符合则中断执行。 
    参见
    MySQL 中如何在触发器里中断记录的插入或更新? 
    http://blog.csdn.net/ACMAIN_CHM/archive/2009/07/25/4380183.aspx
      

  2.   

    谢谢ACMAIN_CHM触发器太麻烦了
    真的就没其他办法了么?
      

  3.   


    1、支持CHECK的写法,但没有用(至少目前版本是这样)
    2、在数据库中用TRIGGER实现,也可以在语言中用代码实现。