您现在的位置是:首页 >其他 >oracle的基本使用(建表,操作表等)网站首页其他

oracle的基本使用(建表,操作表等)

新征程,再出发 2024-06-30 06:01:02
简介oracle的基本使用(建表,操作表等)

一、表空间,用户

1、创建表空间

  • 使用system登录
    在这里插入图片描述
  • 创建表空间
    • waterboss 为表空间名称
    • datafile 用于设置物理文件名称
    • size 用于设置表空间的初始大小
    • autoextend on 用于设置自动增长,如果存储量超过初始大小,则开始自动扩容
    • next 用于设置每次扩容的空间大小
-- 创建表空间
create tablespace waterboss
datafile 'C:oracleproduct10.2.0oradatawaterboss.dbf'
size 100m
autoextend on
next 10m

在这里插入图片描述

2、创建用户

  • 创建pzz用户,关联waterboss表空间
    • wateruser 为创建的用户名
    • identified by 用于设置用户的密码
    • default tablesapce 用于指定默认表空间名称
-- 创建用户
create user pzz
identified by pzz
default 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


									恕自己一过,则万过由之而生。---苏格拉底
风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。