作者JoeHorn (每天都在公司玩OLG)
看板Database
标题Re: [SQL ] 怎麽Check没有作用?
时间Thu Jun 5 17:45:51 2008
※ 引述《Biboy (栗子)》之铭言:
: create table ordered
: ( mem_id char(10) not null,
: ordered_album char(30) not null,
: price integer,
: check(price>0)
: );
: 这是我create的table
: 如果输入的金额为0以下就不能新增
: 可是我输入下面那行指令时,还是可以输入,不会有error出现
: insert into ordered values('AK123','New World',-20);
: 如果依造限制条件,应该是不能输入阿
: 请问这是哪里出了问题??
http://forums.mysql.com/read.php?35,48832,48832#msg-48832
如果只是要求大於零,可以考虑用 UNSIGNED 。
老实说,用程式先做好判断会比较好,错误发生时,显示的页面跟讯息能自行控制。
--
╓╥╥╖╓─╥╖ ╓─╥╖ ╓ ╓╖ ╓─╥╖ ╓─╥╖ ╓╖╓╖
╟╢ ║ ╟╢ ║ ╙╜ ║ ╟╢ ║ ╟╢ ║ ╟╢ ║║╟╢
╟╢ ║ ╟╢ ╟─ ╟─╫╢ ║ ╟╢ ╟─╫╜ ║║╟╢
╟╢ ║ ╟╢ ║ ╓╖ ║ ╟╢ ║ ╟╢ ║ ║ ║║╟╢
╙╨╜ ╙─╨╜ ╙─╨╜ ╙ ╙╜ ╙─╨╜ ╙ ╙╜ ╙╙╨╜
狮子男
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 163.18.56.221
1F:推 Biboy:请问型态就是 "unsigned" 吗? 我刚刚测试会出错~ 06/06 20:52