物理存储结构

  数据库的物理存储结构主要包括3个类物理文件:数据文件,控制文件,重做日志文件;

  其他文件:归档日志文件,参数文件,密码文件;

相关命令

  sqlplus / as sysdba  ;    登入超管

  alter user scott account unlock   ;  解锁scott用户

  grant username  to xx;  给用户授权

  show user;    查看当前用户

  disc ;  --disconnect   退出当前用户

  help  ;  查看帮助命令

  /  or    run;   运行缓冲池命令

  star   D:\xxx.sql;       运行指定路径的命令

  get    D:\xxx.sql   ;    将外部文件导入缓冲区

  alter user scott identified by pwd ;       超管修改指定用户登入密码,   pwd  xxxx;当前用户修改自身密码;

  查询表结构   desc 

 

  select * from emp;

  update emp set ename='  '   where  empno= xxx  ;

  delete from emp where empno = xxx ;

  insert into em[(empno,ename,....)]  values(.....);

 

E-R图转换关系模式

  1:1  任意一张表的主键加入到另一张表中充当外键。

  1:n  将1的一方表的主键作为n方表的外键。

  n:n  用双方的主键新建一张表这两个主键一起当作这一张表的主键,来唯一确定这张表,两个主键分别也是这张表的外键,第三张表加入起衍生属性。

 

启动数据库与实例

  启动模式

  1.创建并启动数据库相对应的实例,此时只用到初始化参数文件,数据库是否存在对其没有影响。如果初始化参数文件有误,值实例启动失败。

  2.为实例加载数据库:将打开数据库的控制文件,从控制文件中获取,数据库名,数据文件的位置和名称等有关数据库的物理结构信息,为打开数据库做好准备。如果控制文件顺坏,则实例无法加载数据库。

  3.将数据库设为打开状态:实例将打开处于联机状态的所有数据文件和重做日志文件。控制文件中的任何一个数据文件或重做日志文件若无法正常打开,数据库将返回错误信息,则需要进行数据库修复。

 

  启动实例不加载数据库  nomount模式

  startup nomount  执行维护工作时必须在此模式下进行。如  -----创建数据库,重建控制文件

  加载数据库但不打开数据库

  startup mount  有必要在进行一些特定为维护工作时打开该状态。 如 -----重命名数据文件,添加,删除,或重命名重做日志文件,执行数据库时完全恢复操作。

  正常打开数据库

  startup or startup open

  强制打开数据库

  startup force    -----在上述任何情况下,则这时需要强制打开数据库

 

 

 转换启动模式

  实例加载数据库  alter database mount;     

  shutdown normal;

  阻止任何用户建立新的连接,等待所有正在连接的用户主动断开连接,已连接的用户能够继续操作,一旦所有的用户断开连接,则立即开始关闭。

  正常关闭数据库,先关闭数据库-》将数据库从实例上卸载-》终止实例

  shutdown immediate;尽可能最短的时间数据库;

  阻止任何用户建立新的连接,同时阻止当前连接的用户开始任何新的事物,任何未提交的事物均被退回,orcale不等待用户主动断开连接,而是直接关闭数据库,卸载数据库,并终止实例。

  shutdown transactional; 

  阻止用户建立新的连接,同时阻止当前连接的用户开始的任何新的事物。

  等待所有未提交的活动事物提交完毕,让后立即断开用户的连接,关闭,卸载数据库,终止实例。

数据查询

1.select 语句查询结果多个字段拼接

select ename||','||empno  [as] "别名" from emp ;

2.save D:\xxx.sql  将上次查询到额sql语句保存到指定路径

3.select distinct 列名/distinct(列名) from emp; ----去除查询结果中的重复项.

运算符优先级

  比较运算符>not>and>or

4.比较运算符

  =,<>或!>,>,<,<=,>=

  any 使用清单中任意一个值来比较。

  all   使用清单中的所有值来比较

  >any    大于清单中最小的值  

  <any    小于清单中最大的值

  =any    相当于in

  >all    大于最大值         <all小于最小值

5.sql运算符

  like  , in  ,  between ,  isnull  ,  isnan与非数字值匹配

6.字符函数

  ascll(string x)   返回x的ascll值

  concat(x,y)

  length(x)

  lower(x)

  upper(x)

  lpad(x,wid[,*])  如果没有*号默认补空格,使其左边补齐使整个字符串长度为wid,若有*或其他字符串则补对应字符串.

  rpad(x,wid,*)  同上右边补齐

  nvl(x,value)    如果x为空 则替换x值为value 值

7.数学函数

  abs(x)返回x的绝对值

  ceil(x)返回大于等于数字x值得最小整数

  floor(x)返回小于等于数字x值的最小整数

  log(x,y) x为底数值y的对数

  mod(x,y)  x/y的余数

  power(x,y)  x的y次幂

  round(x,[y])  四舍五入,当y为省略时四舍五入到整数,若y为负数则省略到10的该值绝对值加一次幂例如round(45.985,-1) = 50  -2=500,  0= 46  , 1=46.0

  trunc(x,[y])  同上,但不做四舍五入运算.

 

  

 

posted on 2017-06-04 23:54  HDotdot  阅读(183)  评论(0编辑  收藏  举报
111