SQL SERVER2008脚本运行所遇问题及解决方法

Q1、CASCADE附近有语法错误

A1:SQL SERVER没有cascade或者RESTRICt这一项,直接用drop

Q2:怎样以交互式方式编写SQL脚本文件

Q3:SQL 语言分大小写吗

A3:分的情况“UNIQUE

Q4:执行时显示“xx语句必须是首行“;

A4:在上一段命令后输入go,再执行

--截止到5/7

 Q5:重命名索引时出错,代码:alter index sno rename to SSno

A5:SQL SERVER 2008没有此类语法,修改程序为:sp_rename '<被修改索引名>' ,'<修改后索引名>';

A6:SQL SERVER 2008 用drop关键词删除索引,索引前必须加文件名,如 drop index Student.Sno;

Q7:向表内插入语句时,显示“INSERT 语句与 FOREIGN KEY 约束"XXX"冲突。该冲突发生于数据库"XXX",表"XXX", column 'XXX"。

A7:A表中A1列是B表中的外键,然而在A表中插入数据C,数据C的A1列并不在现在的B表中存在,这便是与外键约束发生。详细原理:https://blog.csdn.net/chenxiaochan/article/details/43730769

A8:可以不存在的列,查询结果是查询语句中的列名。

A9:SQL SERVER2008 通过指定别名来改变插叙结果的列标题用 select as 语句 

https://zhidao.baidu.com/question/535642525.html

A10:sql server 不分大小写,列名、列值、表名、关键字等等通通不分

Q11:查询语句时,显示列名无效

A11:原因:修改表结构后,SQL Server的intellisense(智能感知功能)需要重新整理一下,解决方法:数据库企业管理器——编辑——intellisence——清楚缓存

不懂:并没有修改设计表结构,或者说什么是修改设计表结构

A12:SQL SERVER2008好像默认进行外链接(为空值的数据也显示)

Q12:红色波浪形怎么去除(A11不能消除红色波浪线)

 A13:where语句不能用聚集函数作为条件表达式的,where子句作用与基本表或图,从中选择满足条件的元组。having短语作用于组,从中选择满足条件的组。

A14:一句话解释相关子查询:子查询语句中含有父查询语句中的表【from语句中】

A15:SQL SERVER2008建立新表设定各列时,各列间要用逗号连接,如create table dept_age(Sdept char(15),avg_age SMALLINT);

--截止到5/8

Q16:多层(三层)相关子查询数据传送

查询选修了全部课程的学生姓名

select sname from Student where not exists(select * from Course where not exists(select* from SC where Sno=student.Sno and Cno =course.Cno));

每次传送的数据是第一层(最外层)中的一个学生,第二层的所有课程传送给最内层吗

A17:group by 聚集函数和having 在一起,不能和where在一起用

A18:为防止用户通过试图对数据进行增加、删除、修改时,有意无意地对不属于视图范围内的基本表数据进行操作,可在定义视图时加上 WITH CHECK OPTION子句。这样在仕途上增、删、改数据时,关系数据库关系系统会检查视图定义中的条件,若不满足条件则拒绝执行该操作。

--截止到5/9

--5月10号画第三章思维导图

A19.日期操作函数,只有oracle有

posted @ 2019-05-07 17:45  甜汤  阅读(1048)  评论(0编辑  收藏  举报