资源描述:
《sql部分重点总结》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、SQLi•什么情况下建立索引什么情况下不见索引(1)考虑建索引的列:如果在一个列上创建索引,该列就称为索引列。索引列中的值称为关键字值。考虑建索引的列有如下这些:濛主键:通常,检索、存取表是通过主键来进行的。因此,应该考虑在主键上建立索引。*连接中频繁使用的列:用于连接的列若按顺序存放,系统可以很快地执行连接。如夕卜键,除用于实现参照完整性外,还经常用于进行表的连接。*在某一范围内频繁搜索的列和按排序顺序频繁检索的列。(2)不考虑建索引的列:建立索引需要产生一定的存储开销,在进行插入和更新数据的操作时,维护索引也要花费时间和空间,因此,没有必要对表中的
2、所有列都建立索引。一般来说,如下一些列不考虎建立索引:*很少或从来不在查询中引用的列,因为系统很少或从来不根据这个列的值去查找数据行。*只有两个或很少几个值的列(如性别,只有两个值"男"或"女”),以这样的列创建索引并不能得到建立索引的好处。*以bit、text、image数据类型定义的列。*数据行数很少的小表一般也没有必要创建索引。2・局部变量与全局变量局部变量的显示select@variable_name全局变量在整个SQLSen/er系统内使用。存储的通常是一些SQLServer的配置设定值和统计数据。在使用全局变量时应该注意以下几点:全局变量是
3、在服务器级定义的。*用户只能使用预先定义的全局变量。*引用全局变量时,必须以标记符''@@"开头。*全局变量对用户来说是只读的*局部变量的名称不能与全局变量的名称相同*常见的全局变量也是用select命令来显示其值的引用数值常量不用单引号,引用日期、字符串常量时需要加单引号3•安认证模式的区别NT验证模式是指要登录到SQLServer系统的用户身份由NT系统来进行验证。在NT登录验证模式下,SQLServer回叫WindowsNT以获得相应的登录信息,并在sysxlogins表中查找该帐户,以确定该帐户是否有权登录。在这种方式下,用户不必提供登录名或密
4、码让SQLserver验证。Windows身份验证模式使用Windows操作系统本身提供的安全机制验证用户的身份。只要用户能够通过WindowsNT或Windows2000的用户帐户验证,就可连接到SQLServer。4.角色,SQLServer管理者可以将某些用户设置为某一角色,这样只对角色进行权限设置便可以实现对所有用户权限的设置,大大减少了管理员的工作量。5•事务是用户定义的数据操作系列,这些操作作为一个完整的工作单元,一个事务内的所有语句被作为一个整体,要么全部执行,要么全部不执行。事务的特征・原子性(Atomicity):指事务是数据库的逻辑
5、工作单位,事务中的操作要么都做,要么都不做。■一致性(Consistency):指事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。・隔离性(Isolation):指数据库中一个事务的执行不能被其它事务干扰。持久性(Durability):也称为永久性指事务一旦提交,则其对数据库中数据的改变就是永久的。事务结束符COMMIT:事务成功结束符,・ROLLBACK:事务失败结束符,6当系统中同时有多个事务在运行时,特别是当这些事务是对同一段数据进行操作时,彼此之间就有可能产生相互干扰的情况。■控制目标:事务运彳亍过程中尽可能隔离事务外操作对
6、本事务数据环境的影响。・在数据库环境下,并发控制的主要方式是封锁机制,即加锁(Locking),加锁是一种并行控制技术,是用来调整对共享目标的访问,如DB中共享的记录并行存取的技术。基本的封锁类型共享锁:指对于读操作(检索)来说,可以多个事务同时获得共享锁,但阻止其它事务对已获得共享锁的数据进行排它封锁。排它锁:一旦一事务获得了对某一数据的排它锁,则任何其它事务再不能对该数据进行封锁,其它事务只能进入等待状态,直到第i事务撤销了对该数据的封锁。两个事务相互等待对方先释放资源;则会造成死锁。7•广义笛卡尔积•两个分别为n目和m目的关系R和关系S的广义笛卡
7、尔积是一个(n+m)列的元组的集合。•元组的前n个列是关系R的一个元组,后m个列是关系S的一个元组。•若R有IQ个元组.S有勺个元组,则关系R和关系S的广义笛卡尔积有KxxK2个元组■记做:RxS={trAts
8、treRatsGS}•tr^ts表示由两个元组ti•和ts前后有序连接而成的一个元组。ABa1b1a2b2CDEc1d1e1c2d2e2c3d3e3ABDEa1b1c1d1e1a1b1c2d2e2a1b1c3d3e3a2b2c1d1e1a2b2c2d2e2a2b2c3d3e38•内连接语法SELECT...FROM表名[INNER]JOIN被连
9、接表ON连接条件9•不带参数的存储过程・查询计算机系学生的考试成绩,列出学生的姓名、课程名和成