SQL SERVER 试题解答:
1:SQLSERVER2005有哪几种约束,有哪些区别2;where语句与having语句的异同...
1:SQL SERVER 2005有哪几种约束,有哪些区别
2;where语句 与 having语句的异同 展开
2;where语句 与 having语句的异同 展开
1个回答
展开全部
1、SQL SERVER 2005约束:主键约束,唯一约束,默认值约束,check约束,外键约束
a)主键约束实际上与唯一约束类似,都是通过唯一索引限制数据的唯一性,
但是一个表中主键只能有一个,唯一键则可以有多个
另外主键默认是聚集唯一索引,如果表中已有聚集索引,则是非聚集唯一索引。
b)默认值约束顾名思义,就是当不显示给列插入值时,会提供一个默认值
c)check约束,检查数据是否符合约束中的条件规则,验证数据的准确性
d)外键约束,一般引用其他表的主键或唯一键作为外键,外键值必须是引用表中存在的,若引用表数据不存在,则违反外键约束
2、where语句与having语句的异同:
相同:都是通过条件筛选数据
不同:where是在group by分组前筛选,having则在group by分组后筛选
where条件中不能出现聚合函数,having中则可以使用聚合函数,并且非聚合函数列必须是group by列表中的列
a)主键约束实际上与唯一约束类似,都是通过唯一索引限制数据的唯一性,
但是一个表中主键只能有一个,唯一键则可以有多个
另外主键默认是聚集唯一索引,如果表中已有聚集索引,则是非聚集唯一索引。
b)默认值约束顾名思义,就是当不显示给列插入值时,会提供一个默认值
c)check约束,检查数据是否符合约束中的条件规则,验证数据的准确性
d)外键约束,一般引用其他表的主键或唯一键作为外键,外键值必须是引用表中存在的,若引用表数据不存在,则违反外键约束
2、where语句与having语句的异同:
相同:都是通过条件筛选数据
不同:where是在group by分组前筛选,having则在group by分组后筛选
where条件中不能出现聚合函数,having中则可以使用聚合函数,并且非聚合函数列必须是group by列表中的列
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询