一、表空间,用户

1、创建表空间

  • 使用system登录
  • 创建表空间
    • waterboss 为表空间名称
    • datafile 用于设置物理文件名称
    • size 用于设置表空间的初始大小
    • autoextend on 用于设置自动增长,如果存储量超过初始大小,则开始自动扩容
    • next 用于设置每次扩容的空间大小
-- 创建表空间create tablespace waterbossdatafile 'C:\oracle\product\10.2.0\oradata\waterboss.dbf'size 100mautoextend onnext 10m

2、创建用户

  • 创建pzz用户,关联waterboss表空间
    • wateruser 为创建的用户名
    • identified by 用于设置用户的密码
    • default tablesapce 用于指定默认表空间名称
-- 创建用户create user pzzidentified by pzzdefault tablespace waterboss;

  • 使用刚才创建的用户登录,没有登录权限

3、用户授权

  • 使用system登录
  • 给pzz用户授权
grant dba to pzz;

  • 再次登录

二、表的操作

注意:相对于oracle,个人感觉MySQL更容易上手,语法也差不多,基础入门还是先学MySQL比较好。这里就不记录那么详细了。

1、创建表

1.1、语法:
CREATE TABLE 表名称( 字段名 类型(长度) primary key, 字段名 类型(长度), .......);
1.2、数据类型:
  • 字符型
    • CHAR : 固定长度的字符类型,最多存储 2000 个字节。
    • VARCHAR2 :可变长度的字符类型,最多存储 4000 个字节。
    • LONG : 大文本类型。最大可以存储 2 个 G。
  • 数值型
    • NUMBER : 数值类型 。
      例如:
      NUMBER(5) 最大可以存的数为 99999 。
      NUMBER(5,2) 最大可以存的数为 999.99 。
  • 日期型
    • DATE:日期时间型,精确到秒 。
    • TIMESTAMP:精确到秒的小数点后 9 位。
  • 二进制型(大数据类型)
    • CLOB : 存储字符,最大可以存 4 个 G。
    • BLOB:存储图像、声音、视频等二进制数据,最多可以存 4 个。
1.3、实例:创建业主表
create table t_owners(id number primary key,name varchar2(30),addressid number,housenumber varchar2(30),watermeter varchar2(30),adddate date,ownertypeid number);

2、修改表

2.1、增加字段语法
  • 语法
ALTER TABLE 表名称 ADD(列名 1 类型 [DEFAULT 默认值],列名 1 类型 [DEFAULT 默认值]...)
  • 实例:为业主表增加两个字段
--追加字段ALTER TABLE T_OWNERS ADD( REMARK VARCHAR2(20), OUTDATE DATE)
2.2、修改字段数据类型
  • 语法
ALTER TABLE 表名称 MODIFY(列名 1 类型 [DEFAULT 默认值],列名 1 类型[DEFAULT 默认值]...)
  • 实例:修改两个字段的类型
--修改字段类型ALTER TABLE T_OWNERS MODIFY(REMARK CHAR(20),OUTDATE TIMESTAMP)
2.3、修改字段名
  • 语法
ALTER TABLE 表名称 RENAME COLUMN 原列名 TO 新列名
  • 实例
-- 修改字段名ALTER TABLE T_OWNERS RENAME COLUMN OUTDATE TO EXITDATE;
2.4、删除字段名
  • 语法
--删除一个字段ALTER TABLE 表名称 DROP COLUMN 列名--删除多个字段ALTER TABLE 表名称 DROP (列名 1,列名 2...)
  • 实例
--删除字段ALTER TABLE T_OWNERS DROP COLUMN REMARK

3、删除表

3.1、删除表(数据和结构)
  • 删除表的结构和数据,速度相对慢。
  • 删除了可以回滚。
DROP TABLE 表名称;
3.2、删除表(仅数据)
  • 直接删除表的数据,速度更快。
  • 删除了不能回滚恢复。
truncate TABLE 表名称;

4、使用工具操作

使用通过图形化界面操作。

三、数据的操作

1、插入数据

  • 语法
INSERT INTO 表名[(列名 1,列名 2...)]VALUES(1,值 2...)
  • 实例
insert into T_OWNERS VALUES (1,' 张三丰',1,'2-2','5678',sysdate,1);commit;

2、修改数据

  • 语法
UPDATE 表名 SET 列名 1=1,列名 2=2....WHERE 修改条件;
  • 实例:将 ID 为 1 的业主的登记日期更改为三天前的日期
update T_OWNERS set adddate=adddate-3 where id=1;commit;

3、删除数据

  • 语法1:
DELETE FROM 表名 WHERE 删除条件;
  • 实例:删除业主 ID 为 2 的业主信息
delete from T_OWNERS where id=2;commit;
  • 语法2
TRUNCATE TABLE 表名称

比较 truncat 与 delete 实现数据删除?

  1. delete 删除的数据可以 rollback。
  2. delete 删除可能产生碎片,并且不释放空间。
  3. truncate 是先摧毁表结构,再重构表结构。

4、注意提交事务

数据的操作都要进行事务提交。

  • 方式一:
    执行后,点击提交按钮
  • 方式二:
    每条语句后面使用commit提交
commit;

四、数据导出与导入

1、整库导出与导入

1.1、整库导出命令
  • 添加参数 full=y 就是整库导出
exp system/itcast full=y

执行命令后会在当前目录下生成一个叫 EXPDAT.DMP,此文件为备份文件。

  • 如果想指定备份文件的名称,则添加 file 参数即可,命令如下
exp system/itcast file=文件名 full=y
1.2、整库导入命令
  • 此命令如果不指定 file 参数,则默认用备份文件 EXPDAT.DMP 进行导入
imp system/itcast full=y
  • 如果指定 file 参数,则按照 file 指定的备份文件进行恢复
imp system/itcast full=y file=water.dmp

2、按用户导出与导入

2.1、按用户导出
exp system/itcast owner=wateruser file=wateruser.dmp
2.2、按用户导入
imp system/itcast file=wateruser.dmp fromuser=wateruser

3、按表导出与导入

3.1、按表导出

用 tables 参数指定需要导出的表,如果有多个表用逗号分割即可

exp wateruser/itcast file=a.dmp tables=t_account,a_area
3.2、按表导入
imp wateruser/itcast file=a.dmp tables=t_account,a_area

结束!!!!!!
hy:3


恕自己一过,则万过由之而生。---苏格拉底