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
);
- 修改字段语法:
-- 修改字段
alter table t_owners modify (
remark char(20),
outdate timestamp
);
- 修改字段名语法:
-- 修改列outdate名称为exitdate
alter table t_owners rename column outdate to exitdate;
- 删除字段名
-- 删除表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 实现数据删除?
- delete 删除的数据可以 rollback
- delete 删除可能产生碎片,并且不释放空间
- truncate 是先摧毁表结构,再重构表结构