来自:mjsws > 馆藏分类
配色: 字号:
Oracle基础操作手册内容分享
2018-09-26 | 阅:  转:  |  分享 
  
Oracle基础操作手册内容分享Oracle基础操作手册,查询系统当前时间,显示当前用户查看表结构或列出函数、存储过程等的信息Oracle
中行称为记录,列称为字段。注释,查找数据文件的存放位置、大小和状态。distinct去重select用法schame方案/
用户名AS是为字段起别名的关键字可以使用各种运算符和函数对字段的值进行计算<>或!=(不等于)字符串匹配使用关键字IN进
行查询。其语法格式如下:ORDERBY子句统计函数groupby多个选项HAVING子句Dual虚拟表unio
n集合查询使用集合的交运算表的创建需要CREATETABLE系统权限,表的基本创建语法如下:AS子查询创建表五种约束条件
主键约束primarykey主键约束primary包含两种约束:非空和唯一约束的实例外键constraint关键字
Drop删除表Alter更改表结构修改表名SynonymcreateuserGrant授权查询系统当前时间select
sysdatefromdual显示当前用户SHOWUSERSELECTUSERFROMdual1.###存储一段命
令到指定文件2.例3.4使用SPOOL命令记录操作内容。3.步骤1:执行命令:4.SPOOLC:\TEST5.步骤2:
执行命令:6.SELECTFROMemp;7.步骤3:执行命令:8.SELECTFROMdept;9.步骤4:执行
命令:10.SPOOLOFF查看表结构或列出函数、存储过程等的信息SQL>DESCemp;Oracle中行称为记录,列称为字
段。注释在一行中插入“–”,将其后的内容注释掉。使用/……/,可以用来注释任何一段的内容。查找数据文件的存放位置、大小和状态。SQ
L>setlinesize600SQL>selectstatus,bytes,namefromv$datafile;
distinct去重SELECT[ALL|DISTINCT]select_listselect用法SELECT[AL
L|DISTINCT]select_listFROM[schema.]table_name|[schema.]v
iew_name[WHEREsearch_condition][GROUPBYgroup_by_expression
[HAVINGsearch_condition]][ORDERBYorder_expression[ASC|D
ESC]]schame方案/用户名[schema.]table_name:指定要查询的数据源的表名称和它的方案名,如果表是当
前数据库连接用户方案下的表,则方案名可以省略。天地棋牌http://www.dadiqipaigw.cnAS是为字段起别名的关键字
SELECTcolumn_name1[AS]alias,column_name2[AS]alias,········FR
OM[schema.]table_name|[schema.]view_name可以使用各种运算符和函数对字段的值进行
计算算术运算符包括加(+)、减(-)、乘()、除(/)和取模(%)运算。SELECTename||‘的工作是’||j
obAS雇员,sal+300AS新工资FROMscott.emp;<>或!=(不等于)字符串匹配匹配字符串可以是一个
完整的字符串,也可以使用%和_两种匹配符。%代表字符串中包含零个或多个任意字符;_代表字符串中包含一个任意字符。NOT关键字是对L
IKE运算符的否定,表示可以查询那些不匹配的记录。SELECTFROMscott.empWHEREenameLIKE
‘A%’;使用关键字IN进行查询。其语法格式如下:SELECTselect_listFROM[schema.]tabl
e_name|[schema.]view_nameWHEREcolumn_name[NOT]IN(value1,
value2,………)ORDERBY子句ASC:表示按升序排列,可省略。DESC:表示按降序排列。SELECTFROM
scott.empWHEREjob=’SALESMAN’ORDERBYsalDESC统计函数AVG(字段)MaxMINCo
unt(/字段)Sum(dictinct)字段))groupby多个选项统计scott方案下的emp表中各个部门中的各种工作
的雇员人数。SELECTdeptno,job,COUNT()AS人数FROMscott.empGROUPBYdept
no,job;HAVING子句在SELECT语句中,当同时存在GROUPBY子句、HAVING子句和WHERE子句时,其执行顺
序为:先WHERE子句,后GROUPBY子句,再HAVING子句。即先用WHERE子句从数据源中筛选出符合条件的记录,接着
再用GROUPBY子句对筛选的记录按指定的字段分组、汇总,最后再用HAVING子句筛选出符合条件的组。例6.23统计sco
tt方案下的emp表中平均工资大于2500的工作。SELECTjob,AVG(sal)AS平均工资FROMscott.
empGROUPBYjobHAVINGAVG(sal)>2500;638棋牌http://www.rodlg.co
mDual虚拟表Dual表主要用来选择系统变量或求一个表达式的值引入Dual表的原因:SELECTsysdateFROMdu
al而Oracle的SELECT语法的限制为:SELECT|[column1[ASalias1],column2[
ASalias2]]FROMtable所以,没有表名就没有办法查询,而时间日期并不存放在任何表中,于是这个dual虚拟表的概
念就被引入了。union集合查询并集,合并两个操作的结果,去掉重复的部分例7.16:查询部门10和部门20的所有职务。执行以下查询
:SELECTjobFROMempWHEREdeptno=10UNIONSELECTjobFROMempWHER
Edeptno=20;使用集合的交运算例7.17:查询部门10和20中是否有相同的职位和工资。执行以下查询:SELECTjob
,salFROMempWHEREdeptno=10INTERSECTSELECTjob,salFROMempWHE
REdeptno=20;表的创建需要CREATETABLE系统权限,表的基本创建语法如下:CREATETABLE表名(列
名数据类型(宽度)[DEFAULT表达式][COLUMNCONSTRAINT],…[TABLECONSTRAINT]
[TABLE_PARTITION_CLAUSE]);/DEFAULT表达式:用来定义列的默认值。COLUMNCONS
TRAINT:用来定义列级的约束条件。TABLECONSTRAINT:用来定义表级的约束条件。TABLE_PARTITION
_CLAUSE:定义表的分区子句。/创建学生表(student)CREATETABLEstudent(Snochar
(6),Snamevarchar2(8),Sexchar(2),Birthdaydate,Sdeptchar(20
));AS子查询创建表CREATETABLEemp_30(ename,job,sal)ASSELECTename,job,
salFROMempWHEREdeptno=30;五种约束条件表共有五种约束,它们是主键、非空、唯一、检查和外键。数据完整
性由主键(PRIMARYKEY)、非空(NOTNULL)、唯一(UNIQUE)和检查(CHECK)约束条件定义,参照完整性由外
键(FOREIGNKEY)约束条件定义。主键约束primarykey主键约束primary包含两种约束:非空和唯一CREAT
ETABLEstudent(Snochar(6)PRIMARYKEY,Snamevarchar2(8),Sexcha
r(2),Birthdaydate,Sdeptchar(20));约束的实例CREATETABLEstudent(Sno
char(6)PRIMARYKEY,主键Snamevarchar2(8)NOTNULL,非空Sexchar(2)CO
NSTRAINTch_sexCHECK(Sex=’男’orSex=’女’),检查BirthdaydateUNIQUE,
唯一Sdeptchar(20)外键CONSTRAINTfk_scFOREIGNKEY(Cno)REFERENCESco
urse(Cno)###将course中的Cno作为外键,本表可以没有主键constraint关键字在以上5种约束的语法中,CON
STRANT关键字用来定义约束名,如果省略,则系统自动生成以SYS_开头的惟一约束名。Drop删除表droptableStud
ent;Alter更改表结构ALTERTABLE表名[ADD(列名数据类型[DEFAULT表达式][COLUMNC
ONSTRAINT]……)][MODIFY(列名数据类型[DEFAULT表达式][COLUMNCONSTRAINT]……
)][DROPCOLUMN列名]例8.10给student表增加一个memo字段,类型为varchar2(20)。ALT
ERTABLEstudentADDmemoVARCHAR2(20);例8.11修改student表中所在系sdept
字段的长度改为30。ALTERTABLEstudentMODIFYsdeptVARCHAR2(30);3.修改列名
使用ALTERTABLE…RENAMECOLUMN语句实现修改列的名称。例8.12修改student表中所在系sdep
t字段的字段名为new_sdept。ALTERTABLEstudentRENAMECOLUMNsdepttonew
_sdept;4.删除列名使用ALTERTABLE…DROPCOLUMN语句实现直接删除列。例8.13删除stud
ent表中的性别字段。ALTERTABLEstudentDROPCOLUMNsex;修改表名表名的修改可以使用使用AL
TERTABLE…RENAMETO语句实现,也可直接执行RENAME…TO语句。易火棋牌http://www.4822
23.com例8.14将student表改名为new_student表。ALTERTABLEstudentRENAMETO
new_student;SynonymCREATE[ORREPLACE][PUBLIC]SYNONYM[schema
.]synonym_nameFOR[schema.]object_name其中各参数的意义如下:PUBLIC:表示创建一个公
有同义词,允许对原对象具有权限的所有用户使用。Synonym_name:新建的同义词名称。Object_name:原对象的名称。c
reateuserCREATEUSER用户名INDENTIFIEDBY口令[DEFAULTTABLESPACE表
空间名][TEMPORARYTABLESPACE表空间名][QUOTA{正整数[K|M]|UNLIMITED}ON
表空间名…][PASSWORDEXPIRE][ACC0UNT{LOCKL|UNLOCK}][PR0FILE环境文件名|
DEFAULT];QUOTA如果没有指定了默认表空间之后,一般需使用QUOTA子句来为用户在默认表空间中分配空间配额。[PAS
SWORDEXPIRE]设置用户初次登录后密码失效,必须重新设置。[PR0FILE环境文件名|DEFAULT];显式的配
置概要文件Grant授权Grant授权GRANTSYSTEM_PRIV[,SYSTEM_PRIV,…]TO{PUBLIC|ROLE|USER}[,PUBLIC|ROLE|USER}]…[WITHADMINOPTION]SYSTEM_PRIV:表示要授予的系统权限的名称,该选项允许为用户同时授予多个系统权限,之间用逗号隔开。USER:表示获得该系统权限的用户名称,该选项允许同时为多个用户授予相同的权限,之间用逗号隔开。ROLE:表示被授予的角色。PUBLIC:表示对系统中所用用户授权,可以使用它为系统中的每个用户快速设定权限。WITHADMINOPTION:它是可选项,表示将系统权限授予某个用户后,该用户不仅获得该权限的使用权,还获得该权限的管理权,包括可以将该权限继续授予其它用户,或从其它用户处回收该权限。该选项的影响力较大,要慎重使用。
献花(0)
+1
(本文系mjsws首藏)