SQL最详细的文档.docx
《SQL最详细的文档.docx》由会员分享,可在线阅读,更多相关《SQL最详细的文档.docx(11页珍藏版)》请在第壹文秘上搜索。
1、必需有CREATEANYPROCEDURE权限。执行procedure的时候,可能须要excute权限。或者EXCUTEANYPROCEDURE权限。假如单独给予权限,如下例所示:grantexecuteonMY_PROCEDUREtoJelly;6.存储过程(PrOCedUre)和函数(function)的区分function有返回值,并且可以干脆在执行QUCry中引用function或者运用function的返回值。两者本质上没有区分,都是P1./SQ1.程序,都可以有返回值。最根本的区分是:存储过程是吩咐,函数是表达式的一部分。比如:selectmax(NAME)FROM但是不能exec
2、max(NAME)假如此时max是函数。7.存储过程值得留意的几个地方(D在Oracle中,数据表别名不能加as(2)在存储过程中,select某一字段时.后面必需紧跟into,假如select整个记录,利用游标的话就另当别论了。(3)(SQ1.Server)存储过程一般用来完成数据查询和数据处理操作,所以在存储过程中不行以运用创建数据库对象的语句,即在存储过程中一般不能含有以下语句:CREATETAB1.E:CREATEVIEW;CREATEDEFAU1.T:number,a_idnumberconstraintb_fkreferencesa(ID),namevarchar2(20)notn
3、ull):2.外键约束的添加createtablea(IDNUMBERPRIMARYKEY,namevarchar2(20),PaSSM)rdvarchar2(8)notnull);createtableb(idnumber,a_idnumber,namevarchar2(20)notnull);altertablebaddconstraintb_fkforeignkey(a_id)referencesa(id);3.外键约束的删除altertablebdropconstraintb_fk;v.检查约束1.检查约束的建立createtableb(idnumberconstraintb_ckch
4、eck(id=0),namevarchar2(20);2.检查约束的添加Createtablepig(pigldnumber,pigNamevarchar2(20);AltertablepigaddconstraintCK_pigIDCheck(pigID=O);3.检查约束的删除altertablebdropconstraintb_fk:vi.无效化,激活或者及连约束1.无效化约束altertableadisableconstrainta_pkcascade;一运用CASCADE选项将相关的约束也无效化2.激活约束altertableaenableconstrainta_pk;3.及连约束A
5、1.TERTAB1.EtestlDROP(pk字段)CASCADECONSTRAINTS;A1.TERTAB1.EtestlDROP(pk,fk,coll)CASCADECONSTR/MNTS;b)连接OraCle中的连接可分为,内连接(innerjoin)、外连接(OUterjOin)、全连接(fulljoin),不光是Oracle,其他许多的数据库也都有这3种连接杳询方式连接可以在SE1.ECT语句的FROM子句或WHERE子句中建立,似是而非在FROM子句中指出连接时有助于将连接操作与WHERE子句中的搜寻条件区分开来。OUTERJOIN与I.EFT相同,但两个表的角色互换FU1.1.O
6、UTERJOIN1.EFTOUTER和RIGHToUTER中全部行的超集i.内连接内连接innerjoin,这是我们常常用的杳询方式,比如SeIeCt*fromA,Bwhere.fieldl=B.field2,这样的连接就是内连接,内连接查询只能查询出匹配的记录,匹配不上的记录时无法查询出来的其中join.table指出参加连接操作的表名,连接可以对同一个表操作,也可以对多表操作,对同一个表操作的连接乂称做自连接。join_type指出连接类型,可分为三种:内连接、外连接和交叉连接。内连接查询操作列出与连接条件匹配的数据行,它运用比较运算符比较被连接列的列值。内连接分三种:1、等值连接:在连接
7、条件中运用等于号(=)运算符比较被连接列的列值,其查询结果中列出被连接表中的全部列,包括其中的重复列。2、不等连接:在连接条件运用除等于运算符以外的其它比较运算符比较被连接的列的列值。这些运算符包括、=、=、!、!和。3、自然连接:在连接条件中运用等于(=)运算符比较被连接列的列值,但它运用选择列表指出查询结果集合中所包括的列,并删除连接表中的1刘德华2财务部21张惠妹3人事部35张学友比如现在有需求,要进行部门表和职工表的关联暂询,并要杳询出全部的部门信息,这时候,下面的左连接查询就能够查询出想要的结果,左连接就是以leftjoin前面的表为主表,即使有些记录关联不上,主表的信息能够查询出来
8、的select*fromdeptleftouterjoinemployeeondept,deptid=employee.deptid比如现在有需求,要进行部门表和职工表的关联查询,并要查询出全部的职工信息,这时候,下面的右连接查询就能够查询出想要的结果,右连接就是以rightjoin后面的表为主表,即使有些记录关联不上,主表的信息能够查询出来select*fromdeptrightouterjoinemployeeondept,deptid=employee.deptid总之,外连接就是在关联不上的时候,把其中的部分信息杳询出来下面结合案例说明:假设有如下表:一个为投票主表,一个为投票者信息表
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- SQL 详细 文档