MySQL属性范围是指在创建数据库表时,为某个字段设置的取值范围,这样可以保证数据的合法性,防止插入不合理的数据,在MySQL中,可以使用CHECK约束来规定字段的属性范围。
成都创新互联公司不只是一家网站建设的网络公司;我们对营销、技术、服务都有自己独特见解,公司采取“创意+综合+营销”一体化的方式为您提供更专业的服务!我们经历的每一步也许不一定是最完美的,但每一步都有值得深思的意义。我们珍视每一份信任,关注我们的成都做网站、成都网站设计质量和服务品质,在得到用户满意的同时,也能得到同行业的专业认可,能够为行业创新发展助力。未来将继续专注于技术创新,服务升级,满足企业一站式全网营销推广需求,让再小的品牌网站建设也能产生价值!
1、创建表时添加CHECK约束
在创建表时,可以在字段定义后面添加CHECK约束,用于规定字段的属性范围,下面的代码创建了一个名为students的表,其中age字段只能是0到150之间的整数:
CREATE TABLE students ( id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(50) NOT NULL, age INT CHECK (age >= 0 AND age <= 150) );
2、在已存在的表上添加CHECK约束
如果需要在已存在的表上添加CHECK约束,可以使用ALTER TABLE语句,下面的代码为已存在的students表的age字段添加了CHECK约束:
ALTER TABLE students ADD CONSTRAINT chk_age CHECK (age >= 0 AND age <= 150);
如果需要删除某个字段上的CHECK约束,可以使用ALTER TABLE语句配合DROP CONSTRAINT子句,下面的代码删除了students表的age字段上的CHECK约束:
ALTER TABLE students DROP CONSTRAINT chk_age;
1、如何为多个字段设置不同的属性范围?
可以在每个字段的定义后面分别添加CHECK约束,或者在一个ALTER TABLE语句中为多个字段添加或删除CHECK约束。
-为name和age字段分别设置不同的属性范围 ALTER TABLE students ADD CONSTRAINT chk_name CHECK (name IS NOT NULL AND name <> ''), ADD CONSTRAINT chk_age CHECK (age >= 0 AND age <= 150);
2、如何为一个字段设置多个属性范围?
可以使用OR连接多个条件,
ALTER TABLE students ADD CONSTRAINT chk_age_range CHECK (age >= 0 AND age <= 150 OR age >= 151 AND age <= 200);
3、如果没有找到符合条件的记录怎么办?
如果插入或更新的数据没有满足CHECK约束的条件,MySQL会抛出一个错误,可以通过设置IGNORE参数来忽略这个错误,
ALTER TABLE students ADD CONSTRAINT chk_age_ignore_error CHECK (age >= 0 AND age <= 150) IGNORE;
当前名称:如何规定mysql的属性范围大小
网站链接:http://www.shufengxianlan.com/qtweb/news23/87273.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联