2016年6月SQL-1011、sql概念与分类2、数据定义语言(DDL)3、DML(DataManipulationLanguage,数据操作语言)4、数据查询语言(DQL:DataQueryLanguage)5、函数6、约束与索引系统环境Oracle数据库9i或以上版本安装PL/SQLDeveloper数据库集成开发工具,建议使用英文版知识准备对于PL/SQLDeveloper的使用有一定了解,知道如何登录Oracle,如何使用command和SQL窗口的操作。对于《SQL基础知识篇》(SQL-001)中的知识有一定的了解。1、概念:结构化查询语言(StructuredQueryLanguage)简称SQL,是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;2、SQL语言基本分类:1)数据定义语言(DDL):包括:createtable、altertable、droptable等;2)DML(DataManipulationLanguage,数据操作语言):用于检索或者修改数据。DML包括:INSERT:用于增加数据到数据库;UPDATE:用于从数据库中修改现存的数据DELETE:用于从数据库中删除数据。3)数据查询语言(DQL:DataQueryLanguage):其语句,也称为"数据检索语句",用以从表中获得数据,确定数据怎样在应用程序给出。保留字SELECT是DQL(也是所有SQL)用得最多的动词,其他DQL常用的保留字有WHERE,ORDERBY,GROUPBY和HAVING。这些DQL保留字常与其他类型的SQL语句一起使用。4)DCL(DataControlLanguage,数据控制语言):用于定义数据库用户的权限。DCL包括:ALTERPASSWORDGRANTREVOKECREATESYNONYM5)事务处理语言(TPL):它的语句能确保被DML语句影响的表的所有行及时得以更新。TPL语句包括BEGINTRANSACTION,COMMIT和ROLLBACK6)指针控制语言(CCL):它的语句,像DECLARECURSOR,FETCHINTO和UPDATEWHERECURRENT用于对一个或多个表单独行的操作3、基本语法3.1.createCreatetableCreatesequenceCreateview(后面讲)Createindex(后面讲)3.1.1Createtable(建表)语法:CREATETABLEtable_name(column_name1data_type,column_name2data_type,.......);表名和列的命名规则1)必须以字母开头2)长度不能超过30个字符3)不能使用oracle的保留字4)只能使用如下字符A-Z,a-z,0-9,$,#等Oracle中字段的数据类型字符型char最大2000个字节定长char(10)'张三'后面添加6个空格把10个字节填满varchar2范围最大4000个字节变长char查询的速度极快浪费空间,查询比较多的数据用。varchar2节省空间(oralce中基本都用这个)数字number范围-10的38次方到10的38次方,可以是整数也可以是小数number(4)最大表示四位整数-9999到9999number(5,2)表示5为有效数字2为小数的一个小数-999.99到999.99日期date包含年月日和时分秒7个字节图片blob二进制大对象图像/声音4GCreatetable例子:创建一个员工表createtabledengxianglei_EMP(empnoNUMBER(4),--员工号enameVARCHAR2(10),--员工姓名jobVARCHAR2(9),--职位mgrNUMBER(4),--上级领导hiredateDATE,--入职日期salNUMBER(7,2),--工资commNUMBER(7,2),--奖金deptnoNUMBER(2)—部门编号);createtabledengxianglei_DEPT(deptnoNUMBER(2)notnull,dnameVARCHAR2(14),locVARCHAR2(13));--为后面准备CREATESEQUENCE(创建序列)创建序列:CREATESEQUENCE序列名[INCREMENTBYn][STARTWITHn][{MAXVALUE/MINVALUEn|NOMAXVALUE}][{CYCLE|NOCYCLE}][{CACHEn|NOCACHE}];createsequencecux_store_limit_t_sminvalue1--默认是1maxvalue2147483647--默认9999999999999999999999999999startwith20000--默认1incrementby1--默认1CYCLE--默认循环cache10;--默认20createsequenceCUX_store_limit_T_S;(也可以这样建)3.1.2dropDroptabletable_name;DropSEQUENCEseq_name;Dropindexindex_name;Dropviewview_name;3.1.3alter添加字段(学生所在班级classid)(添加add)altertablestudentadd(classidnumber(2));修改字段的长度(修改modify)altertablestudentmodify(xmvarchar2(12));删除一个字...