Oracle 创建表空间,创建表、数据增删改

创建表空间

-- 创建表空间
-- testds 为表空间名称
-- datafile 用于设置物理文件名称
-- size 用于设置表空间的初始大小
-- autoextend on 用于设置自动增长,如果存储量超过初始大小,则开始自动扩容
-- next 用于设置扩容的空间大小
create tablespace testds datafile 'C:\Users\16837\Desktop\test\testdf.dbf'
size 100m
autoextend on next 10m;

创建用户

-- 创建用户
-- user 设置用户名
-- identified by 用于设置用户的密码
-- default tablesapce 用于指定默认表空间名称
create user testds 
identified by testds
default tablespace testds;

用户授权

-- 用户授权
-- 给用户 testds 赋予 DBA 权限后即可登陆
grant dba to testds;

使用账号testds登录
在这里插入图片描述
登录成功后的界面
在这里插入图片描述

表的创建、修改与删除

创建表

语法:
在这里插入图片描述

数据类型

字符型

  • CHAR : 固定长度的字符类型,最多存储 2000 个字节
  • VARCHAR2 :可变长度的字符类型,最多存储 4000 个字节
  • LONG : 大文本类型。最大可以存储 2 个 G
    数值型
    NUMBER : 数值类型
    例如:NUMBER(5) 最大可以存的数为 99999
    NUMBER(5,2) 最大可以存的数为 999.99
    日期型
  • DATE:日期时间型,精确到秒
  • TIMESTAMP:精确到秒的小数点后 9 位
    二进制型(大数据类型)
  • CLOB : 存储字符,最大可以存 4 个 G
  • BLOB:存储图像、声音、视频等二进制数据,最多可以存 4 个 G
--创建业主表
CREATE TABLE T_OWNERS(
ID NUMBER PRIMARY KEY,
NAME VARCHAR2(30),
ADDRESSID NUMBER,
HOUSENUMBER VARCHAR2(30),
WATERMETER VARCHAR2(30),
ADDDATE DATE,
OWNERTYPEID NUMBER
)

用账号testds和密码testds登录,创建表成功后,在表空间testds看见新建的表
在这里插入图片描述

创建表的同时指定表空间

create table test0531(id number)
tablespace testds;

修改表

增加字段语法:
在这里插入图片描述

--为业主表增加两个字段,语句:
alter table t_owners add (
remark varchar2(20),
outdate date
);
  1. 修改字段语法:
    在这里插入图片描述
-- 修改字段
alter table t_owners modify (
remark char(20),
outdate timestamp
);
  1. 修改字段名语法:
    在这里插入图片描述
-- 修改列outdate名称为exitdate
alter table t_owners rename column outdate to exitdate;
  1. 删除字段名
    在这里插入图片描述
-- 删除表t_owners中的列remark
alter table t_owners drop column remark;

删除表

语法:
在这里插入图片描述

数据增删改

插入数据

语法:

insert into 表名(列名,列名2) values (1,值2);

也可以简写为

-- 插入的值分别对于数据库中列的顺序
insert into 表名 values(1,值2);

执行 INSERT 后一定要再执行 commit 提交事务
向业主表插入数据:

扫描二维码关注公众号,回复: 16107971 查看本文章
-- 向业主表插入数据:
insert into t_owners values(1,'张三丰',1,'2-2','5678',sysdate,1);

语句中的 sysdate 是系统变量用于获取当前日期,点击齿轮的图标后,再点击下
图的绿色图标,此图标为 commit
在这里插入图片描述
我们再次录入一条数据,语句如下:

insert into T_OWNERS VALUES (2,'赵大侃
',1,'2-3','9876',sysdate,1);
commit;

修改数据

语法:

UPDATE 表名 SET 列名 1=1,列名 2=2....WHERE 修改条件;

执行 UPDATE 后一定要再执行 commit 提交事务

-- 将 ID 为 1 的业主的watermeter更改为3
update t_owners t set t.watermeter=3 where t.id=1;
commit;

删除数据

语法:

delete from 表名 where 删除条件;

执行 DELETE 后一定要再执行 commit 提交事务

-- 删除业主 ID 为 2 的业主信息
delete from t_owners where id =2;

语法 2:

TRUNCATE TABLE 表名称

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

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

猜你喜欢

转载自blog.csdn.net/Java_Fly1/article/details/124834265
今日推荐