racle学习笔记总计.docx

上传人:b****1 文档编号:200624 上传时间:2023-04-28 格式:DOCX 页数:25 大小:889KB
下载 相关 举报
racle学习笔记总计.docx_第1页
第1页 / 共25页
racle学习笔记总计.docx_第2页
第2页 / 共25页
racle学习笔记总计.docx_第3页
第3页 / 共25页
racle学习笔记总计.docx_第4页
第4页 / 共25页
racle学习笔记总计.docx_第5页
第5页 / 共25页
racle学习笔记总计.docx_第6页
第6页 / 共25页
racle学习笔记总计.docx_第7页
第7页 / 共25页
racle学习笔记总计.docx_第8页
第8页 / 共25页
racle学习笔记总计.docx_第9页
第9页 / 共25页
racle学习笔记总计.docx_第10页
第10页 / 共25页
racle学习笔记总计.docx_第11页
第11页 / 共25页
racle学习笔记总计.docx_第12页
第12页 / 共25页
racle学习笔记总计.docx_第13页
第13页 / 共25页
racle学习笔记总计.docx_第14页
第14页 / 共25页
racle学习笔记总计.docx_第15页
第15页 / 共25页
racle学习笔记总计.docx_第16页
第16页 / 共25页
racle学习笔记总计.docx_第17页
第17页 / 共25页
racle学习笔记总计.docx_第18页
第18页 / 共25页
racle学习笔记总计.docx_第19页
第19页 / 共25页
racle学习笔记总计.docx_第20页
第20页 / 共25页
亲,该文档总共25页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

racle学习笔记总计.docx

《racle学习笔记总计.docx》由会员分享,可在线阅读,更多相关《racle学习笔记总计.docx(25页珍藏版)》请在冰点文库上搜索。

racle学习笔记总计.docx

racle学习笔记总计

培训第二天(上午)

学习视频《韩顺平oracle视频》

学习中遇到的想法:

1.sqlserver数据——》oracle(编程是实现java,先读在插入)

一,oracle的安装

1.oracle数据库自带用户sys(默认密码:

manager)(最好权限,可以createdatabase),system(默认密码:

change_on_install)。

二,oracle的启动

1.启动一个oracle实例,即启动一个单个数据库。

2.管理——服务oracleservice实例名(一个实例代表一个数据库)+oracle……listener

三,oracle的卸载

1.卸载需要动注册表(可观看视频)

四,sqlplus常用命令

1.显示用户

showuser

2.链接命令

conn用户名/密码

disc

3.修改密码

passw

4.运行一个脚本

start和@如:

startd:

\aa.sql||@d:

\aa.sql

5.编辑一个脚本

editD:

\aa.sql

6.spool该命令可以将sqlplus屏幕上的内容输出到指定的文件中

1.spoold:

\b.sql

2.select*from

3.spooloff

7.交互&

8setlinesize,setpagesize(分页显示)

9.desc表名(查看表结构)

五,oracle常用工具

1.sqlplus,sqlplusw,pl/sqldeveloper(第三方独立开发),oracleenterprisemanager(图像化界面)

六,用户管理

1.createuser名identifiedby密(密码不能以数字开头)(新创建的用户是没有任何权限的,甚至是没有登录权限grant,revoke)

2.password名

3.dropuser名(如果用户有表,则加参数cascade)

培训第二天(下午)(自己动手遇到无法登陆oracle)

(gaotuan:

gaotuan、system:

G62980778cxz)

一,用户授权

(对象权限(selectinsertupdatedeleteallcreateindex),系统权限)

1.grantconnectto名(登录)

2.grantresourceto名(创建数据库对象)

3.sqlplus"/assysdba"(sys登陆)

4.alteruserscottaccountunlock;(解锁)

二,角色

connect,dba

对象权限:

withgrantoption

系统权限:

withadminoption

收回父权限时下边的用户也没有相应得权限

三,表空间

一,表空间作用:

1.控制数据库占用的磁盘空间。

2.可以将不同的数据类型放在不同的位置(提高io,有利于备份与恢复)。

二,建立表空间:

1.Createtablespace"bkjm001"datafile'C:

\filenam0e.bdf'size1M;

2.(使用表空间)createtabletesttablespace(ageint)tablespace"bkjm001";

三,改变表空间状态:

1.(表空间脱机)altertablespace"名"offline;

2.(表空间联机)altertablespace"名"online;

3.(只读表空间)altertablespace"名"readonly;

四,删除表空间:

1.droptablespace"bkjm001"includingcontentsanddatafiles;

五,拓展表空间:

 

第三天:

(上午)(密码不能以数字开头)

注:

1.select不区分大小写fromuserwherename='区分大小写';

2.在计算时如果一个值为null,则运算结果为空nvl(列名,0)(为null则用0替换)

一,常用查询语句

1.查询一个用户所拥有的表

selecttable_namefromuser_tables;

2.终止口令:

createprofile名limitpassword_limit_time(密码使用的时间)10password_grace_time(宽限时间)2password_reuse_time(10天内不让使用原密码)10;

alteruser名profile名;

3.dropprofile名{cascade}

4.setlinesize10(设置显示行的宽度,默认是80个字符)

5.setpagesize5(设置显示行的数目,默认是14个字符);

6.settimingon;(显示耗时)

7.查询数据库名select*fromglobal_name;

二,创建表(规范)

1.表名,列名

必须以字母开头,不能超过30个字符,不能使用关键字,保留字,使用A-Z,a-z,0-9,$,#等

2、数据类型:

a,number(10的38次方),number(5,2),number(5)

b,char(10)定长(最大2000字符)(查询速度快)

c,varchar2(20)变长(最大4000字符)(节省空间)

d,clob(字符型大对象最大4G)

e,时间:

date(年月日时分秒)

timestamp(date拓展)

f,blob(存放图片、声音4G)

3.表修改

a,altertable表名add(classidnumber

(2));

b,altertable表名modify(lmchar(20));

c,altertable表名dropcolumnlm;

d,rename名1to名2;

e,droptable表名;

f,插入数据insertintobmvalues();

H,oracle中默认日期格式:

'dd-mm月-yy'

修改日期格式:

altersessionsetnls_data_format='yyyy-mm-dd'

to_date('1988-12-22','yyyy-mm-dd')

4.删除数据恢复(在commit提交之前可以使用保存点)(commit提交之后事务结束,删除保存点,释放锁)

savepointss;

delete*from表(delect删除时写日志)

rollbacktoss;(rollback所有的都撤销)

(truncatetablestudent)(删除表中的记录,表结构还在,不写日志,无法找回,但是速度快)

5.插入数据(测试)

insertintobiao1(lm1,lm2)select*frombiao1

第三天:

(下午)

注意:

1.from中使用子查询,则子查询被作为一个视图对待(内嵌视图)

2.from子句使用查询时必须有列名

3.表取别名不用as,列时可以使用as

一,经典查询

1.selecta1.ename,a1.sal,a2.gradefromempa1,salgradea2wherea1.salbetweena2.losalanda2.hisal;

2.select*fromempwheresal<200andename=''(数据库执行时从右向左执行,所以应先将一次能筛选多的条件放在最右边)

3.单行子查询,

4.多行子查询

(返回单列多行)(in)

(返回多列单行)

select*fromempwhere(deptno,job)=(selectdeptno,jobfromemp);

或者用select*fromempa,(selectdeptno,jobfromemp)asbwhere……

例子:

select*fromempa,(selectavg(sal)avgg,deptnofromempgroupbydeptno)bwherea.deptno=b.deptnoandb.avgg

5.updatebiaomingset(lie1,lie2,lie3)=(selectl1,l2,l3frombiaowhere……)where……

二,分页显示

1.(select*fromemp);

2.显示rownum[oracle分配的]

3.selecta.*,rownumrnfrom(select*fromemp)a;

4.例子:

(若指定查询,则只需修改最里面的视图)select*from(selecta.*,rownumrnfrom(select*fromemp)awhererownum<=10)wherern>6;

 

三,根据查询结果创建新表

1.createtablemytable(id,ename,sal)asselectempno,ename,salfromemp;

2.insertintotest1(name,job)selectename,jobfromemp;

四,查询结果的合并(速度快)

1.union(除去一样的行),unionall(并),intersect(交),minus(差)

 

五,创建数据库

1.配置工具——》databaseconfiguraassistancedbca【数据库配置助手】

六,java链接oracle数据库

packagecom.test1;

importjava.sql.*;

publicclassconnOracle{

/**

jdbc-odbc

*/

publicstaticvoidmain(String[]args){

//TODOAuto-generatedmethodstub

try{

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

Connectionct=DriverManager.getConnection("jdbc:

odbc:

GToracle","gaotuan","gaotuan");

Statementsm=ct.createStatement();

ResultSetrs=sm.executeQuery("select*fromtest");

while(rs.next())

{

System.out.println("姓名:

"+rs.getString

(1));

}

rs.close();

sm.close();

ct.close();

}catch(Exceptione){

//TODO:

handleexception

e.printStackTrace();

}

}

}

 

总结:

为了保存事务的正确性:

1.可以建立保存点(但是不能提交)

2.建立一个新的用户,并设置为只读事务。

提高速度:

1.将索引单独放在一个表空间。

总结:

为了保存事务的正确性:

1.可以建立保存点(但是不能提交)

2.建立一个新的用户,并设置为只读事务。

提高速度:

2.1.将索引单独放在一个表空间。

 

总结:

为了保存事务的正确性:

1.可以建立保存点(但是不能提交)

2.建立一个新的用户,并设置为只读事务。

提高速度:

1.将索引单独放在一个表空间。

1.sql函数

注:

dual表可以用来测试

一。

字符函数:

1.lower(char)(字符串转化为小写)

2.upper(char)(字符串转化为大写)

3.length(char)(返回字符串的长度)

4.substr(char,m,n)(去字符串的子串)(从第m开始取n个字符)

selectupper(substr(ename,1,1))||lower(substr(ename,2,length(ename)-1))fromemp;

5.replace(ename,string1,string2)(ename要替换的字段,将String1替换为string2)(区分大小写)

6.instr()(取字串在字符串中的位置)

二,数学函数

1.round(ename,n)(四舍五入)

2.trunc(ename,1)(截取)

3.mod(m,n)

4.floor(m)(不大于的最大整数)

5.ceil(m)

6.abs(n)绝对值

7.log(m,n)对数值

8.power(m,n)m的n次幂

三,日期函数

1.默认日期:

'dd-mm-yy'“12-7月-1988”

2.sysdate返回系统时间

3.add_month(d,n)在d年加上n个月;

4.last_day(y)返回指定日期所在月份的最后一天

selecttrunc(sysdate-hiredate)“入职天数”fromemp;

四,转化函数(oracle隐含转换):

1.to_char(hiredate,'yyyy-mm-ddhh24:

mi:

ss')

2.to_char(sal,'L99999.99')显示本地货币单位

3.to_date()to_date('1988-12-22','yyyy-mm-dd')

五,其他函数:

1.sys_context('userenv','db_name')

terminal,lanuage,db_name,nls-date_format,session_user,current_scheam,host

例子:

selectsys_context('userenv','language')fromdual;

 

2.sys与system的区别

一,sys与system的区别

1.sys用户必须以assysdba或assysoper形式登陆,不能以normal方式登陆

2.system如果以正常登陆,就是一个普通的dba,

如果以assysdba登陆,就是作为sys用户登陆。

3.

4.

 

3.备份与恢复(17讲)

注意:

导入导出必须在安装oracle的bin目录下运行exp使用

一,逻辑备份恢复与物理备份恢复

1.逻辑备份与恢复:

只能在open下进行

2.物理备份与恢复:

可以在open下进行,也可以在DB关闭情况下进行。

二,导出

1.导出表,导出方案,导出数据库;

2.导出使用exp命令完成常用参数:

userid,tables,owner,full,inctype,rows,file

3.导出表:

expuserid=scott/G110@oraltables=(emp)file=D:

\c.dmp;

(导出表结构)expuserid=scott/G110@oraltables=(emp)file=D:

\c.dmprows=n

(直接方式导出表结构)expuserid=scott/G110@oraltables=(emp)file=D:

\c.dmpdirect=y

4.导出方案:

(导出他人方案)expuserid=scott/G110@oralowner=(system,scott)file=D:

\c.dmp;

(导出自己方案)expuserid=scott/G110@oralowner=scottfile=D:

\c.dmp;

5.导出数据库:

expuserid=scott/G110@oralfull=yinctype=completefile=D:

\c.dmp;

三,导入:

1.导入表:

(导入表)impuserid=scott/G110@orcltables=empfile=D:

\a.dmp

(导入表结构)impuserid=scott/G110@orcltables=empfile=D:

\a.dmprows=n;

(导入数据)impuserid=scott/G110@orcltables=empfile=D:

\a.dmpignore=y;

2.导入方案:

3.导入数据库:

impuserid=scott/G110@oraclefile=D:

\a.dmpfull=y;

 

4.数据字典(18讲)

一,

1.数据字典:

基表(静态数据),动态视图(动态的数据)

2.数据字典视图:

user_xxx,all_xxx,dba_xxx

user_tables,all_tables,dba_tables(dba权限)

二,用户名,权限,角色

1.selectusername,passwordfromdba_users;(查看数据库的用户)

2.descdba_role_privs;

select*fromdba_role_privswhereGRANTEE='gaotuan'

3.(查询oracle所有的所有角色)select*fromdba_roles;

4.(查询oracle所有的所有系统权限)select*fromsystem_privilege_map;

5.(查询oracle所有的所有对象权限)selectdistinctprivilegefromdba_tab_privs;

6.(查询一个角色所有的权限:

)(可以在工具视图中查询)

select*fromrole_sys_privswhererole='CONNECT'

例子:

select*fromdba_role_privswheregrantee='GAOTUAN';

7.

 

表空间

一,移动数据文件:

1.确定数据文件所在的表空间:

selecttablespace_namefromdba_data_fileswherefile_name='D:

\sp001.dbf'

2.使表空间脱机:

altertablespacesp001offline;

3.使用命令移动数据文件到指定的目标位置:

hostmoveD:

\sp001.dbfC:

\sp001.dbf

4.执行altertablespace命令(对数据库进行逻辑修改):

altertablespacesp001renamedatafile'D:

\sp001dbf'to'C:

\sp001.dbfm'

5.使表空间联机:

altertablespacesp001online;

二,显示表空间信息:

selecttablespace_namefromdba_tablespaces;

三,显示表空间所包含的数据文件:

selectfile_name,bytesfromdba_data_fileswheretablespace_name='SYSTEM';

 

约束

1.显示约束信息:

select constraint_name,constraint_type,status,validated

fromuser_constraintswheretable_name='表名'

2.显示约束信息:

selectcolumn_name,positionfromuser_cons_columnswhereconstraint_name=''

 

索引

1.显示表的所有索引信息:

select index_name,index_typefromuser_indexswheretable_name='表名'

2.显示索引所对应的列的信息:

select table_name,column_namefromuser_ind_columnswhereindex_name='';

 

权限,角色

一,

系统权限:

不是级联回收(withadminoption,能用于角色)

对象权限:

级联回收(withgrantoption,不能用于角色)

1.查询系统权限:

select*fromsystem_privilege_maporderbyname;

2.创建自定义角色:

createrole角色名notidentified;

createrole角色名identifiedby密码(将来更改时提供密码);

3.角色赋权限:

grant……to角色名

4.删除角色:

droprole角色名

二,

1.显示所有角色

select*fromdba_roles;

2.显示角色所具有的系统权限

selectprivilege,admin_optionfromrole_sys_privswhererole='角色名'

3.显示角色所具有的对象权限

selectprivilege,admin_optionfromdba_tab_privswhererole='角色名'

4.显示用户具有的角色,及默认角色

selectgranted_role,default_rolefromdba_role_privswheregrantee='角色名'

 

setserveroutputon;

一,变量:

1.标量

%type(返回数据一样的类型)

%rowtype(pl/sql提供,返回一个记录类型,其数据类型和数据库的表的数据结构一致)

例子:

declare

recac01%rowtype;

begin

select*intorecfromac01whereaac001='41022300024654';

dbms_output.put_line(rec.aac003);

end;

2.复合变量(composite)

pl/sql记录(高级语言的结构体)

declare

typeemp_record_typeisrecord(

nameemp.ename%type,

salaryemp.sal%type);

emp_recordemp_record_type;

begin

selectename,salintoemp_recordfromemp;

setserveroutputon;

dbms_output.put_line(emp_record.name);

end;

pl/sql表(高级语言的数组)

declare

typeename_table_typeistab

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2