还剩2页未读,继续阅读
文本内容:
、如何创建表、修改表、删除表?1表名Create table表名Alter table表名Drop table、存储过程的优点是什么?2存储过程的优点)提高性能1)减轻网络拥塞2)一致性较好3)改善安全机制
4、什么是触发器?触发器有哪几种?触发器有什么优点?3一个触发器是由语句集组成的代码块,在响应某些动作时激活该语句集T-SQL有触发器insert,delete,update它防止了对数据的不正确、未授权的和不一致的改变、常见的几种约束有哪些?分别代表什么意思?如何使用?4主键约束,外键约束,检查约束,唯一约束,默认约束约束在或时加约束Create tablealter table⑴主键(主键字段)保证了实体完整性,一个表只有一个主键,但一个主键可有PRIMARY KEY包含多个字段,主键字段不能为空⑵唯一(约束字段)保证了实体完整性,一个表只有多个唯一约束,一个唯一约束可UNIQUE有包含多个字段()外键(外键字段)主键表(主键字段)保证了引用完整性,一3FOREIGN KEYREFERENCES个表可以有多个外键⑷检查(检查表达式)保证了域完整性,一个表中可以有多个检查性约束CHECK⑸默认值(默认值的表达式或)字段名保证了域完整性,一个表可以有多DEFAULT NULLfor个默认值约束,但是一个字段只有一个默认值、什么是数据库的安全性?5数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄露、更改或破坏、简要说明事务的原子性6事务的所有操作必须完成,否则事务将被撤消也就是说,事务是作为一个整体的单位处理,不可以被分割、事务中的提交和回滚是什么意思?7事务中的提交()是提交事务的所有操作具体说就是将事务中所有对数据库的更新COMMIT写回到磁盘上的物理数据库中去,事务正常结束事务中的回滚()是数据库滚回到事务开始时的状态具体地说就是,在事务运行的ROLLBACK过程中发生了某种故障,事务不能继续执行,系统将事务中对数据库的所有已完成的更新操作全部撤消,使数据库回滚到事务开始时的状态、优化具体指的是什么?)升级硬件8sql a)根据查询条件,建立索引,优化索引、优化访问方式,限制结果集的数据量b)扩大服务器的内存C)增加服务器个数d CPU)对于大的数据库不要设置数据库自动增长,它会降低服务器的性能e)在查询语句中用字句限制返回的行数,避免表扫描,如果返回不必要的数据,f SelectWhere浪费了服务器的资源,加重了网络的负担降低性能如果表很大,在表扫描的期间将I/表锁住,禁止其他的联接访问表,后果严重)查询时不要返回不需要的行、列g)用来限制用户返回的行数或者h selecttop100/10Percent SET来限制操作的行ROWCOUNT)在后面值的列表中,将出现最频繁的值放在最前面,出现得最少的放在最后面,减少i IN判断的次数)一般在个字句之前就能剔除多余的行,所以尽量不要用它们来做剔除j GROUPBY HAVING行的工作他们的执行顺序应该如下最优的字句选择所有合适的行,用来分组个统计行,字句
1.select WhereGroup ByHaving用来剔除多余的分组这样个的开销小,查询快.对于大的数据Group ByHaving行进行分组和十分消耗资源如果的目的不包括计算,只是分Having GroupBY组,那么用更快Distinct)一次更新多条记录比分多次更新每次一条快,就是说批处理好k、死锁产生的原因及四个必要条件9产生死锁的原因主要是()因为系统资源不足1()进程运行推进的顺序不合适2()资源分配不当等3如果系统资源充足,进程的资源请求都能够得到满足,死锁出现的可能性就很低,否则就会因争夺有限的资源而陷入死锁其次,进程运行推进顺序与速度不同,也可能产生死锁产生死锁的四个必要条件()互斥条件一个资源每次只能被一个进程使用1()请求与保持条件一个进程因请求资源而阻塞时,对已获得的资源保持不放2()不剥夺条件:进程已获得的资源,在末使用完之前,不能强行剥夺3()循环等待条件:若干进程之间形成一种头尾相接的循环等待资源关系4这四个条件是死锁的必要条件,只要系统发生死锁,这些条件必然成立,而只要上述条件之一不满足,就不会发生死锁死锁的解除与预防理解了死锁的原因,尤其是产生死锁的四个必要条件,就可以最大可能地避免、预防和解除死锁所以,在系统设计、进程调度等方面注意如何不让这四个必要条件成立,如何确定资源的合理分配算法,避免进程永久占据系统资源此外,也要防止进程在处于等待状态的情况下占用资源因此,对资源的分配要给予合理的规划、为什么要创建索引呢?这是因为,创建索引可以大大提高系统的性能10第一,通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性第二,可以大大加快数据的检索速度,这也是创建索引的最主要的原因第三,可以加速表和表之间的连接,特别是在实现数据的参考完整性方面特别有意义第四,在使用分组和排序子句进行数据检索时,同样可以显著减少查询中分组和排序的时间第五,通过使用索引,可以在查询的过程中,使用优化隐藏器,提高系统的性能虽然,索引有许多优点,但是,为表中的每一个列都增加索引,是非常不明智的这是因为,增加索引也有许多不利的一个方面第一,创建索引和维护索引要耗费时间,这种时间随着数据量的增加而增加第二,索引需要占物理空间,除了数据表占数据空间之外,每一个索引还要占一定的物理空间,如果要建立聚簇索引,那么需要的空间就会更大第三,当对表中的数据进行增加、删除和修改的时候,索引也要动态的维护,这样就降低了数据的维护速度内连接和外连接的区别是什么?11)内连接就是左表和右表相同的数据1)外连接分为左外连接、右外连接、全外连接2)左外连接就是以左表为准,去匹配右表,左表有多少条数据,结果就是多少条数据a)右外连接就是与左外连接反之,以右表为准,去匹配左表,右表有多少条数据,结果b就是多少条数据)全外连接数据条数不一定,相当与是左外连接和右外连接的综合c设计题、学生表学生表(学号,姓名,性别,年龄,组织部门)1Student课程表(编号,课程名称)Course选课表(学号,课程编号,成绩)Sc表结构如下⑴.写一个语句,查询选修了计算机原理的学生学号和姓名SQL()写一个语句,查询‘周星驰同学选修了的课程名字
2.SQL()写一个语句,查询选修了门课程的学生学号和姓名
3.SQL5select snosnamezfrom student(where sno inselect snofromsc(where eno=select enofromcourse计算机原理,where cname=))select cnamefromcourse(where enoinselect enofromscwhere sno=select snofromstudent周星驰where sname=()2select sno,snameFrom studentWheresnoinselect snofromscgroup bysno havingcountsno=
5、用语句删除表中字段的重复数据2SELECT B=E。
个人认证
优秀文档
获得点赞 0