当前位置: 主页 > 数据库

甲骨文公司数据库-12306撞库数据

发布时间:2023-02-12 22:06   浏览次数:次   作者:佚名

本教程主要基于MOOC视频:SQL基础,Oracle数据库开发必备利器

1.下载Oracle数据库 下载地址:

(1)

12306撞库数据_甲骨文公司数据库_周原甲骨和殷商甲骨

不建议在本页面选择数据库客户端界面下载Oracle客户端,因为可能没有匹配数据库版本的客户端(主要是oracle11.2.0.1.0客户端没有,所以如果要下载客户端,请转到1.2)

甲骨文公司数据库_周原甲骨和殷商甲骨_12306撞库数据

选择11g,点击进入数据库选择页面,注意选择下载的数据库版本

12306撞库数据_甲骨文公司数据库_周原甲骨和殷商甲骨

二、Oracle数据库的安装

参考文章:

(一)Oracle11g安装教程_Qxw1012的博客-CSDN博客_oracle下载安装教程

(二)推荐:Oracle 11安装教程(桌面版)-追梦小蜗牛-博客园

注意:数据库控制 URL 是::1158/em(它是 https,而不是 http)

普通管理员:system,密码:设置密码

超级管理员:用户名:sys,密码:set password

周原甲骨和殷商甲骨_甲骨文公司数据库_12306撞库数据

3.下载、安装和配置PL/SQL

这次我用的是PL/SQL解压版,不需要安装。

PL/SQL解压后,找到plsqldev.exe,双击打开。 显示登录时,点击取消,进入PL/SQL界面

周原甲骨和殷商甲骨_12306撞库数据_甲骨文公司数据库

然后配置与数据库版本一致的oci.dll。 这里的Oracle Home和OCI Library都可以手动进入,所以手动进入oci所在的目录,然后点击OK完成配置。

周原甲骨和殷商甲骨_12306撞库数据_甲骨文公司数据库

重启PL/SQL,然后进入登录界面

(1)用户名:用户名

(2)密码:密码

12306撞库数据_周原甲骨和殷商甲骨_甲骨文公司数据库

(3)数据库:数据库地址,如果PL/SQL和Oracle在同一台电脑上,则不需要输入地址,输入orcl即可; 如果 PL/SQL 和 Oracle 不在同一台计算机上,则添加 Oracle 所在计算机的 IP 地址。

(4)Connect as:以什么权限连接,如果是普通用户,Normal; 通常默认就可以了。

用户名密码,数据库,以什么权限连接

甲骨文公司数据库_12306撞库数据_周原甲骨和殷商甲骨

4、Oracle数据库操作 4.1查看当前登录用户:

show user;

4.2 查看表结构:

desc dba_users;

4.3 启用锁定用户:

alter user username(用户名) account unlock;

4.4 表空间: 4.4.1 表空间概述:

(1)了解表空间:

(2)表空间分类:

4.4.2 查看用户的表空间:

(1)dba_tablespaces、user_tablespaces数据表:

//查看数据结构
DESC dba_tablespaces;

select tablespace_name[,status] from dba_tablespaces;

周原甲骨和殷商甲骨_甲骨文公司数据库_12306撞库数据

select tablespace_name from user_tablespaces;

(2)dba_users、user_users数据表:用于查询用户。

(3)设置用户默认或临时表空间:

ALTER USER username DEFAULT|TEMPORARY TABLESPACE tablespace_name;

注:普通用户无此权限,管理员可修改,或为普通用户设置。

4.4.3 创建、修改、删除表空间:

12306撞库数据_周原甲骨和殷商甲骨_甲骨文公司数据库

(1)创建表空间:

//永久表空间
CREATE TABLESPACE tablespace_name DATAFILE 'xx.dbf' SIZE xx;
//临时表空间
CREATE TEMPORARY TABLESPACE tablespace_name TEMPFILE 'xx.dbf' SIZE xx;

DATAFILE:设置表空间数据文件,xx.dbf是数据文件的名字,最好设置数据文件的路径。

SIZE:设置数据文件的大小。

//创建永久表空间,数据文件大小可扩展
CREATE TABLESPACE tablespace_name DATAFILE 'xx.dbf' SIZE 10M autoextend on next 50M maxsize unlimited;

附加:

创建用户随意分配表空间

CREATE USER username IDENTIFIED BY "123456" DEFAULT TABLESPACE TEST profile DEFAULT ACCOUNT UNLOCK;

给用户最高权限

GRANT dba TO username;

查询目录:

SELECT * FROM dba_directories;

创建数据导入/导出存储地址

CREATE DIRECTORY mydatas AS 'D:\oracleData';

导入数据:

impdp 用户名/密码@orcl transform=segment_attributes:n directory=mydatas[导入文件所在路径] dumpfile=XX.DMP remap_tablespace=TEST:XX remap_schema=ptuser:ptuser7 logfile=ims20171123.log  

注意:transform=segment_attributes:n忽略expdp export自带的相关表空间和存储子句约束

注意:remap_schema前者是导出用户,后者是导入用户

注意:remap_tablespace=a:b 前者是export tablespace,后者是import

周原甲骨和殷商甲骨_甲骨文公司数据库_12306撞库数据

导出数据:

expdp 用户名/密码6@orcl schemas=ptuser3 directory=mydatas dumpfile=xx.dmp version=11.2.0.1.0

注意导入导出Oracle数据库时需要数据库版本一致,所以导出数据时一定要设置正确的版本。

(2)查看永久表空间所在路径:

DESC dba_data_files;

SELECT file_name,tablespace_name FROM dba_data_files;

甲骨文公司数据库_周原甲骨和殷商甲骨_12306撞库数据

(3)查看临时表空间所在路径:

DESC dba_temp_files;

甲骨文公司数据库_12306撞库数据_周原甲骨和殷商甲骨

(4)修改表空间(永久表空间):

①设置在线或离线状态:(默认在线)

//在线
ALTER TABLESPACE tablespace_name ONLINE;
//离线
ALTER TABLESPACE tablespace_name OFFLINE;

② 查看表空间的状态:

请参考4.4.2查看用户表空间部分内容;

③设置只读或读写状态:(默认读写状态)

//只读
ALTER TABLESPACE tablespace_name READ ONLY;
//可读写
ALTER TABLESPACE tablespace_name READ WRITE;

周原甲骨和殷商甲骨_甲骨文公司数据库_12306撞库数据

注意:这里的状态只有在表空间在线的情况下才能修改。

①查看表空间的数据文件:

在 dba_data_files 中可见

② 添加数据文件:

ALTER TABLESPACE tablespace_name ADD DATAFILE 'xx.dbf' SIZE xx;

③删除数据文件:

ALTER TABLESPACE tablespace_name DROP DATAFILE 'xx.dbf';

注意:默认的数据文件是不能删除的,即表空间只有一个数据文件时不能删除。

(5)删除表空间:

//删除表空间,不删除表空间里的数据文件
DROP TABLESPACE tablespace_name;
//删除表空间,同时删除表空间里的数据文件
DROP TABLESPACE tablespace_name INCLUDING CONTENTS;

4.5 数据表 4.5.1 数据表概念

(1)数据表存放在Oracle数据库的表空间中

(2)表是数据的基本存储单位

(3) 二维结构:由行和列组成

4.5.2 数据表中的数据类型

(1) 字符类型

CHAR(n):定长类型,n最大为2000;

NCHAR(n):定长类型,n最大为1000,数据以Unicode格式存储[常用于存储汉字];

VARCHAR2(n):变长类型,n最大为4000;

NVARCHAR2(n):变长类型,n最大为2000;

(2) 数值型

甲骨文公司数据库_12306撞库数据_周原甲骨和殷商甲骨

NUMBR(p,s):p代表几位有效数字,s代表几位小数;

FLOAT(n):保存二进制数据;

(3)日期类型

DATE:表示范围——》公元前4712年1月1日至公元9999年12月31日,精确到秒;(常用)

TIMESTAMP:时间戳,精确到小数秒甲骨文公司数据库,比DATE更精确。

(4) 其他类型

BLOB:存储二进制数据甲骨文公司数据库,二进制数据一般是指文件数据,包括音频、视频、文件等。

CLOB:以字符串形式存储二进制数据;

4.5.3 管理数据表

(1) 创建表

与 MYSQL 语法相同,缩写

(2) 修正表

与 MYSQL 语法相同,缩写

(3)删除表中的数据

//删除表中全部数据
TRUNCATE table_name;

(4) 删除表

//删除表中全部数据
DROP TABLE table_name;

5. 其他SQL 5.1 删除数据表的步骤: 5.1.1 打开禁止使用的外键:

SELECT 'ALTER TABLE ' || table_name || ' enable CONSTRAINT ' || constraint_name || ';' FROM user_constraints where CONSTRAINT_TYPE = 'R';

5.1.2 拼接删除语句

SELECT 'DROP table '|| table_name || ';' FROM USER_TABLES ORDER BY TABLE_NAME;

5.1.3 从查询中复制删除语句并执行

12306撞库数据_甲骨文公司数据库_周原甲骨和殷商甲骨