Oracle基本操作

Oracle基本操作

浮梦 197 2022-11-22

Oracle学习文档

  1. 创建临时表空间

这边值得注意的是,Oracle语法不支持双引号,必须用单引号,踩坑10分钟左右,看大佬的都没问题,但是到自己就是报错,文件名错误,问题原因是没有使用单引号

-- 创建临时表空间
CREATE temporary TABLESPACE 临时表名称
TEMPFILE 'C:\a_tdata.dbf' -- 表空间地址
SIZE 100m -- 表空间大小
AUTOEXTEND on -- 是否自动增长文件大小
NEXT 10m -- 每次增长10m
MAXSIZE 3000m; -- 最大增长三个G
  1. 创建表空间

-- 创建表空间
CREATE TABLESPACE 表名称
DATAFILE 'C:\a_tdata.dbf' -- 表空间地址
SIZE 100m -- 表空间大小
AUTOEXTEND on -- 是否自动增长文件大小
NEXT 10m -- 每次增长10m
MAXSIZE 3000m; -- 最大增长三个G
  1. 创建用户

创建用户没啥技巧,直接按照下面的语法来就完事了

-- 创建用户
-- 语法:create user 用户名 identified by 密码
CREATE USER test identified by 123456
  1. 授权用户

但是你会发现,创建完用户后,TMD不能登录,他巴啦啦的说一大堆,我没听懂,看了课程才知道,必须赋予权限才能登录,所以赋权代码如下

-- 用户赋权
-- 语法:grant dba to 用户名
grant dba to test;

你别管dba是个啥,你问我,我也不知道,写就完事了,这个赋权后就可以登录了

  1. 创建表

创建表和Mysql一样啊,语法都一样的

-- 创建表
-- 语法:
-- create table 表名(
-- 	字段名 属性,
-- )
-- 案例:
create table user(
    id int primary key,
    username varchar(10),
    password varchar(64)
)
  1. 创建序列

这边浅浅提一下,序列是啥,Mysql中他都有个自动增长,但是Oracle没有啊,这个Oracle的序列就是为了创建数字而生,自动排序

-- 创建序列
create sequence 序列名
increment by 1 -- 这个就是序列之间的间隔,该值可为正的或负的整数,但是不能为0,序列为升序
start with 1 -- 指定生成的第一个序列号
maxvalue 999999999; -- 序列最大值
  1. 操作序列

-- 序列调用 产生一个新的序列
select seq_test.nextval from dual;
-- 查看当前序列的值,如果第一次直接使用CURRVAL来访问序列就会报错嗷
select seq_test.currval from dual;
-- 删除序列
DROP SEQUENCE 序列名;