三、数据库杂项

oracle

1.sql中reference是对某列的约束

reference 是约束:create table purchase(customerId number(8) references customer(customerId))

2.合并查询:union(union在其他mysql和server 中和oracle是不一样的)

   在实际中,为了合并多个select语句的结果,可以用union等,这里只说union,union是并集,也就是重复的会去掉。

例如:

select ename ,sal,job from emp where sal>25000  union  select ename ,sal ,job from emp where job='MANAGER';

3.解锁用户

alter user scott account unlock;(用户在创建的时候是在默认的profile文件中,设定了一定次数的锁定,所以解锁命令背过就行)

4.sql是标准化语言,是第四代语言,无需定义;有两套标准,1992和1999,;所以大多数数据库都支持,但是不同的数据库之间有轻微的不同,这是很头疼的,需要查手册。

5.oracle数据库的打开和关闭:

一、shutdown命令:
SHUTDOWN有四个参数:NORMAL、TRANSACTIONAL、IMMEDIATE、ABORT。缺省不带任何参数时表示是NORMAL。
SHUTDOWN NORMAL:不允许新的连接、等待会话结束、等待事务结束、做一个检查点并关闭数据文件。启动时不需要实例恢复。
SHUTDOWN TRANSACTIONAL:不允许新的连接、不等待会话结束、等待事务结束、做一个检查点并关闭数据文件。启动时不需要实例恢复。
SHUTDOWN IMMEDIATE:不允许新的连接、不等待会话结束、不等待事务结束、做一个检查点并关闭数据文件。没有结束的事务是自动rollback的。启动时不需要实例恢复。
SHUTDOWN ABORT:不允许新的连接、不等待会话结束、不等待事务结束、不做检查点且没有关闭数据文件。启动时自动进行实例恢复。
二、startup命令:
STARTUP OPEN:STARTUP缺省的参数就是OPEN,打开数据库,允许数据库的访问。当前实例的控制文件中所描述的所有文件都已经打开。
STARTUP MOUNT:MOUNT数据库,仅仅给DBA进行管理操作,不允许数据库的用户访问。仅仅只是当前实例的控制文件被打开,数据文件未打开。
STARTUP NOMOUNT:仅仅通过初始化文件,分配出SGA区,启动数据库后台进程,没有打开控制文件和数据文件。不能任何访问数据库。
STARTUP PFILE= filename:以filename为初始化文件启动数据库,不是采用缺省初始化文件。
STARTUP FORCE:中止当前数据库的运行,并开始重新正常的启动数据库。
STARTUP RESTRICT:只允许具有RESTRICTED SESSION权限的用户访问数据库。
STARTUP RECOVER:数据库启动,并开始介质恢复。

 6.不停止orcl服务,停止监听的话,sql/pl需要用到监听,所以是连接不上的

 7. linux下开启/关闭/查看监听状态: lsnrctl start/stop/status;windows下tnsping(netstat -ano|findstr 1521)

 8. select distinct deptno,job from emp 中,找的是组合不重复的。

 9.在表的select结果集中,有一个伪字段是rownum。

10.返回第一行或者一定数量的行: sql server :top;    oracle:rownum;  mysql: limit 5 offset 5(从第5行起的5行)

11.不等式 <>   != 和  not

12.链接字符: sqlserver: +    其他为:||  mysql为:  concat

13.从一个表复制到另外一个表:  create  table  new.表名  as  select  * from  old.表名

  (select *into  new.表名  select  old.表名  from   old.表名)

14.删除:  delete  from  表名(truncate)

15.oracle、mysql、sqlserver是数据库管理系统DBMS,而不是数据库

16.唯一约束和主键的区别

  1)唯一约束可以是多个,主键只能是一个

  2)唯一约束可以为null,但是主键不可以

  3)唯一约束不能作为外键,但是主键可以作为外键

  4)在sqlserver中有两种索引,唯一约束采用非聚集索引,主键采用聚集索引。

    简单理解,聚集索引就是目录的主页,类似查字典,根据拼音查找到字,只有这一种方法。唯一约束是非聚集索引,类似根据偏旁体查找到字,首先找到偏旁,在根据偏旁找到字,根据字找到对应页面的字。

17.在mysql中,help data types查看mysql支持的数据类型。在时间类型中,设置时区,默认为东8区,设置为东9区为:

  set   time_zone='+9:00'

posted @ 2020-01-02 19:42  小熊尤里  阅读(352)  评论(0)    收藏  举报