如何使用约束为计划

制冷设备2021年09月06日

你可能认为简单的数据错误并不特别重要,但即使一个小错误也可能造成许多破坏。例如,一个邮政编码错误似乎不是太严重——直到一位新客户的订单无法到达。

或者想象一下,如果你的最优秀的销售员收到的佣金支票只有预期的一半,他所表现出的诧异程度。无疑,错误的数据可能造成严重的后果。

约束任何域,或栏可以接受的数据,开发者帮助保证应用程序保存了适当的数据。执行域完整性仅表示某一栏只接受应用程序的业务规则所规定的有效数据。

执行数据完整性的第一个步骤是设定栏的数据类型,但你的工作并不仅限于此。你还可以使用约束决定栏内所允许的实际值。约束指定义SQL Server如何执行数据完整性的规则。

你可能已经熟悉它们——你可以对一个栏应用PRIMARY KEY、NOT NULL、UNIQUE、FROEIGH KEY和CHECK这些约束。在本文中,我们将使用CHECK约束来执行业务规则,保护数据完整性。

一看站更是大相径庭啊。为什么还会有这么多相同的名字的站了 应用一个简单的CHECK约束

定义一个栏的数据类型是执行域完整性的第一步。例如,一个数字栏不能接受alpha字符,一个比特栏只能接受0和1这两个值,等等。设定正确的数据类型可以发现一些数据输入错误,但一般来说,它无法执行给数据施加更多限制的业务规则。

CHECK约束在设定栏数据类型之上更进了一步。它们使用一个决定数据是否有效的布尔表达式限制一个栏可以接受的实际值。例如,你可以使用CHECK约束保证佣金比例总在5%到8%之间:

commission = .05 AND commission = .08

如果你输入0.06这个值,CHECK表达式将返回TRUE(真)并接受这个值。否则,表达式将返回FALSE(假)并拒绝0.01这个值。

用CHECK表达式求值时,出现NULL值的情况无法预料,且CHECK也不会明确拒绝NULL值。SQL Server具有足够的灵活性,允许在同一个栏中使用几个约束。(如果你试图建立一个与现有的约束或属性相冲突的约束,SQL Server将显示错误信息。)

为说明如何使用CHECK约束限制数据,我们建立一个限制输入仅为数字的约束,即使这个栏的数据类型为字符(文本)数据类型。这种情况在保存邮政编码时经常遇到。一个字符栏接受alpha字符,但邮政编码中只包含数字。使用Management Studio和SQL Server 2005 Express Edition,我手动建立一个只允许邮政编码栏接受五个数字的约束。

济南卵巢炎治疗多少钱
淮北看白癜风哪家医院专业
合肥白癜风医院有哪些
相关阅读
中国电信小数点智能科技分公司正式成立 构建更繁荣的大数据和AI产业生态

5月19日,中国电信数字智能新技术分支机构成立(以下通称“智能新技术分支...

2024-12-27
长宁此处的“街头该博物馆”,居民很喜欢!

行丢下在大公报七区,毫无疑问你不知不觉地一抬眼,就亦会看到街旁一幅幅...

2024-12-09
3-2!保罗摊牌了,22+6+11重回颠峰,可太阳被黑8也越来越近了

上两场输给小牛不久,似乎越来越多的球员,也是大失所望小牛能进行完胜,...

2024-12-03
投资者提问:请上市公司对应国资委要求,不要纯粹口号。要深入对应行动方案全面...

高盛回答:请央企对应上市公司要求,不要纯粹口号。要深入折衷行动拟议全...

2024-11-19
多达一个月股价跌多达50%,傲农生物:4月份起生猪销售头均毛利较一季度已明显改善

傲农生物5年初20日公告,现在,的公司各项主要业务产出经营均保持但会稳健...

2024-11-18
涉酒吧非典已致287人感染!感染者活动范围广,多区风险点位汇总——

6同年14日0在此之前15时,成都新增本土新冠胃癌病毒猫狗30实有,朝阳区20实...

2024-11-17
友情链接