您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 数据库 > oracle PLSQL 语法详细手册
SQLPL/SQL语法手册P2/7219-07-31目录第一部分SQL语法部分.....................................................................................................错误!未定义书签。一、CREATETABLE语句..................................................................................错误!未定义书签。二、CREATESEQUENCE语句.............................................................................错误!未定义书签。三、CREATEVIEW语句.....................................................................................错误!未定义书签。四、INSERT语句:.............................................................................................错误!未定义书签。五、UPDATE语句:.............................................................................................错误!未定义书签。六、DELETE语句:.............................................................................................错误!未定义书签。七、TRUNCATE语句:.........................................................................................错误!未定义书签。八、各类FUNCTIONS:.......................................................................................错误!未定义书签。1.转换函数:..............................................错误!未定义书签。2.日期函数...............................................错误!未定义书签。3.字符函数...............................................错误!未定义书签。4.数值函数...............................................错误!未定义书签。5.单行函数:..............................................错误!未定义书签。6.多行函数...............................................错误!未定义书签。第二部分PL/SQL语法部分...............................................................................................错误!未定义书签。一、PL/SQL语言简介.......................................................................................错误!未定义书签。二、变量说明....................................................................................................错误!未定义书签。三、PL/SQL控制程序流...................................................................................错误!未定义书签。四、存储过程....................................................................................................错误!未定义书签。五、存储函数....................................................................................................错误!未定义书签。六、PACKAGE.....................................................................................................错误!未定义书签。七、触发器.......................................................................................................错误!未定义书签。八、应用实例....................................................................................................错误!未定义书签。P3/7219-07-31第一部分SQL语法部分一、Createtable语句语句:CREATETABLE[schema.]table_name({columndatatype[DEFAULTexpr][column_constraint]...|table_constraint}[,{columndatatype[DEFAULTexpr][column_constraint]...|table_constraint}]...)[[PCTFREEinteger][PCTUSEDinteger][INITRANSinteger][MAXTRANSinteger][TABLESPACEtablespace][STORAGEstorage_clause][RECOVERABLE|UNRECOVERABLE][PARALLEL([DEGREE{integer|DEFAULT}][INSTANCES{integer|DEFAULT}])|NOPARALLEL][CACHE|NOCACHE]|[CLUSTERcluster(column[,column]...)]][ENABLEenable_clause|DISABLEdisable_clause]...[ASsubquery]表是Oracle中最重要的数据库对象,表存储一些相似的数据集合,这些数据描述成若干列或字段.createtable语句的基本形式用来在数据库中创建容纳数据行的表.createtable语句的简单形式接收表名,列名,列数据类型和大小.除了列名和描述外,还可以指定约束条件,存储参数和该表是否是个cluster的一部分.Schema用来指定所建表的owner,如不指定则为当前登录的用户.Table_name用来指定所创建的表名,最长为30个字符,但不可以数字开头(可为下划线),但不可同其它对象或Oracle的保留字冲突.Column用来指定表中的列名,最多254个.Datatype用来指定列中存储什么类型的数据,并保证只有有效的数据才可以输入.column_constraint用来指定列约束,如某一列不可为空,则可指定为notnull.table_constraint用来指定表约束,如表的主键,外键等.Pctfree用来指定表中数据增长而在Oracle块中预留的空间.DEFAULT为10%,也就是说该表的每个块只能使用90%,10%给数据行的增大时使用.Pctused用来指定一个水平线,当块中使用的空间低于该水平线时才可以向该中加入新数据行.P4/7219-07-31Parallel用来指定为加速该表的全表扫描可以使用的并行查询进程个数.Cache用来指定该表为最应该缓存在SGA数据库缓冲池中的候选项.Cluster用来指定该表所存储的cluster.Tablespace用来指定用数据库的那个分区来存储该表的数据.Recoverable|Unrecoverable用来决定是否把对本表数据所作的变动写入Redo文件.以恢复对数据的操作.As当不指定表的各列时,可利用As子句的查询结果来产生数据库结构和数据.例:1)createtablemytab1e(mydecdecimal,myintinteter)tablespaceuser_datapctfree5pctused30;2)createtablemytable2as(select*frommytable1);P5/7219-07-31二、createsequence语句语句:CREATESEQUENCE[schema.]sequence_name[INCREMENTBYinteger][STARTWITHinteger][MAXVALUEinteger|NOMAXVALUE][MINVALUEinteger|NOMINVALUE][CYCLE|NOCYCLE][CACHEinteger|NOCACHE][ORDER|NOORDER]序列用来为表的主键生成唯一的序列值.Incrementby指定序列值每次增长的值Startwith指定序列的第一个值Maxvalue指定产生的序列的最大值Minvalue指定产生的序列的最小值Cycle指定当序列值逵到最大或最小值时,该序列是否循环.Cache指定序列生成器一次缓存的值的个数Order指定序列中的数值是否按访问顺序排序.例:1)createsequencemyseqincrementby4startwith50maxvalue60minvalue50cyclecache3;2)sqlcreatesequencenew_s;sqlinsertintonew(new_id,last_name,first_name)values(new_s.nextval,’daur’,’permit’);P6/7219-07-31三、createview语句语句:CREATE[ORREPLACE][FORCE|NOFORCE]VIEW[schema.]view_name[(alias[,alias]...)]ASsubquery[WITHCHECKOPTION[CONSTRAINTconstraint]]视图实际上是存储在数据库上旳select语句.每次在sql语句中使用视图时,表示该视图的select语句就用来得到需要的数据.Orreplace创建视图时如果视图已存在,有此选项,新视图会覆盖旧的视图.Force如有此选项,当视图基于的表不存在或在该模式中没有创建视图的权限时,也可以建立视图.Assubquery产生视图的select查询语句Withcheckoption如果视图是基于单表的且表中所有的非空列都包含在视图中时,该视图可用于insert和update语句中,本选项保证在每次插入或更新数据后,该数据可以在视图中查到例:1)createorplaceviewnew_vasselectsubstr(d.d_last_name,1,3),d.d_lastname,d.d_firstname,b.b_start_date,b.b_locationfromnew1d,new2bwhered.d_lastname=
本文标题:oracle PLSQL 语法详细手册
链接地址:https://www.777doc.com/doc-8681 .html