2021-04-28

 

Oracle数据库相关知识整理

一、Oracle数据库的完全卸载

1、右击“计算机”-->管理-->服务和应用程序-->服务,停掉所有 Oracle 相关的 服务(以 Oracle 打头的,比如 OracleDBConsoleorcl)。

2、开始-->在搜索栏中输入 regedit,进入注册表

选择 HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE,按 del 键删除这个 入口

选择 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services,滚动这 个列表,删除所有 Oracle 入口(以 oracle 开头的键)

选择 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog\ Application,删除所有 Oracle 入口。

删除 HKEY_CLASSES_ROOT 目录下所有以 Ora 或 Oracle 为前缀的键

3、删除所有与 Oracle 相关的目录(如果删不掉,重启计算机后再删就可以了)包括:

C:\PFrogram iles\Oracle 目录。

Oracle 的安装目录,比如 D:\app

C:\WINDOWS\system32\config\systemprofile\Oracle 目录。

C:\用户\用户名\Oracle

二、创建表空间

1.新建一个表空间; 
create tablespace studentSpace datafile 'E:/myoracle/student.DBF'
size 200M autoextend on next 20M maxsize unlimited;
2.新建一个用户; 
create user student identified by student default tablespace studentSpace;
3.给新用户授权; 
grant dba to student;

三、date 和TIMESTAMP

  • date日期插入

    日期格式需要转换一下 to_date('1998-08-08','yyyy-MM-dd')

    TIMESTAMP:比DATE更精确,时间戳

  • 获取系统时间

    select sysdate from dual; sysdate 系统时间 dual 系统表

    select 1+1 from dual; 计算1+1

四、主键约束

  • 添加主键外键

  1. 在工具中选中对应的表,选中编辑,切换到列 ,名称pk_user_uid 类型主键Primary 列t_uid 应用即可

     名称类型参照表
    主键pk_user_uidPrimaryt_uid 
    外键fk_roles_ridForeignt_ridt_roles
  2. sql语句添加主外键约束

    --添加主键约束; 
    alter table TEACHERS 
    add constraint P_T_ID primary key (T_ID); 
    --添加外键约束; 
    alter table T_USERS 
    add constraint F_T_USERS_ROLEID foreign key (T_ROLEID) 
    references T_ROLES (T_ROLEID)

     

五、检查约束

1、在工具中选中对应的表,选中编辑,切换到检查 ,填入名称条件 应用即可

名称条件 
ck_users_sext_sex in ('男','女') 

2、SQL语句添加约束

--添加检查约束; 
alter table TEACHERS 
add constraint CHK_SEX 
check (t_sex in('f','m')); 

alter table TEACHERS 
add constraint 
CHK_AGE check (t_age>=18 and t_age<=60);

六、唯一约束

SQL语句添加唯一约束

--添加唯一约束; 
alter table T_ROLES 
add constraint UNI_ROLENAME unique (T_ROLENAME);

七、主键自增

1、找到Sequences点新建

名称最小值最大值下一个数字增量高速缓存大小
seq_user_id19999991110

2、SQL语句实现主键自增

CREATE SEQUENCE student_seq3 --创建名为 student_Seq2 序列 
START WITH 1011 --初始值 
INCREMENT BY 1 --步长为 1,可以是正数,或负数 
MAXVALUE 99999999999 --最大值 
MINVALUE 1 --最小值 
NOCYCLE --不循环 
CACHE 20 --缓存 20 个序列号

八、Oracle数据库实现分页

1、什么是伪列?

  • Oracle中伪列就像一个表列,但是它并没有存储在表中。

  • 伪列可以从表中查询,但不能插入,更新和删除它们的值。

2、常用的伪列

  • ROWID

    ROWID是表中的存储地址,该地址可以唯一地标识数据库中的一行,可以使用ROWID位列块快速定位表中一行

  • ROWNUM

    ROWNUM是查询返回结果集中行的序列号,可以使用它来限制查询返回的行数。

  • 例:把t_users表按照t_uid升序排列,给t_user表加入伪列rn,查询前四行数据

    select A.*,rownum rn from
    (select * from t_users t order by t_uid) A
    where rownum <=4;

     

    3、Oracle数据库分页

  • 按照u_id进行排序

    select * from t_users t order by t_uid; 

     

  •  给排序后的表加入伪列序号,查出伪列序号前四条数据
    select A.*,rownum rn from
    (select * from t_users t order by t_uid) A
    where rownum <=4;

     

  •  查出第一页(每页四条数据)
    select * from 
    (select A.*,rownum rn from
    (select * from t_users t order by t_uid) A
    where rownum <=4) where rn> 0

     

  • 查出第二页
    select * from 
    (select A.*,rownum rn from
    (select * from t_users t order by t_uid) A
    where rownum <=8) where rn> 4

    查出第n页,每页条数pageSize

    select * from 
    (select A.*,rownum rn from
    (select * from t_users t order by t_uid) A
    where rownum <=n*pageSize) where rn> (n-1)pageSize;

     

     

     

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值