Oracle创建表及常用指令
Oracle创建表及常⽤指令
扫黑风暴孙红雷是好的嘛Oracle创建表
(1)创建表空间
创建表空间语法:
create tablespace 表空间名称
datafile 表空间⽂件存放路径
size 表空间⼤⼩
autoextend on;
例如创建⼀个名为tangwang,⽂件路径为’D:\test\tangwang.dbf’,⼤⼩100m表空间:
政治面貌create tablespace tangwang牛年新年快乐图片
datafile ‘D:\test\tangwang.dbf’
size 100m
autoextend on;
执⾏该语句如图所⽰:
(2)创建⽤户
创建⽤户语法:
create user ⽤户名
黄磊神模仿张艺兴identified by 密码
default tablespace 表空间(若⽆这句话,默认⽤户在USERS表空间下)
例如创建⼀个⽤户名为test,密码为test,在表空间tangwang下的⽤户:
create user test
identified by test
default tablespace tangwang;
创建完⽤户后需给⽤户授权,语法:
grant connect to test;–拥有Connect权限的⽤户只可以登录Oracle,不可以创建实体,不可以创建数据库结构。grant resource to test;–拥有Resource权限的⽤户只可以创建实体,不可以创建数据库结构。
grant dba to test;–dba为最⾼权限
3)创建表
短裙子数据以表的形式储存。创建表的语法为:
1. 创建表1
create table 表名(
  列名 数据类型 primary key(主键),
  列名 数据类型 not null (不可为空),
办港澳通行证需要什么证件  列名 数据类型
);
2. 创建表2
根据已有的表创建新表:
A:select * into table_new from table_old (使⽤旧表创建新表)
B:create table tab_new as select col1,col2… from tab_old definition only<;仅适⽤于Oracle>
3. 重命名表
说明:alter table 表名 rename to 新表名
eg:alter table tablename rename to newtablename
4. 增加字段
说明:alter table 表名 add (字段名 字段类型 默认值 是否为空);
例:alter table tablename add (ID int);
eg:alter table tablename add (ID varchar2(30) default ‘空’ not null);
5. 修改字段
说明:alter table 表名 modify (字段名 字段类型 默认值 是否为空);
eg:alter table tablename modify (ID number(4));
6. 重名字段
说明:alter table 表名 rename column 列名 to 新列名 (其中:column是关键字)
eg:alter table tablename rename column ID to newID;
7. 其他
删除字段
说明:alter table 表名 drop column 字段名;
eg:alter table tablename drop column ID;
8、添加主键
alter table tabname add primary key(col)
9、删除主键
alter table tabname drop primary key(col)
10、创建索引
create [unique] index idxname on tabname(col….)
11、删除索引
drop index idxname
注:索引是不可更改的,想更改必须删除重新建。
create view viewname as select statement
13、删除视图
drop view viewname
数据库、表空间、⽤户、表关系
⼀个数据库有多个表空间,在创建表空间时,定义表空间⽂件的存放路径。
⼀个表空间有多个⽤户,在创建⽤户时,定义⽤户存在某个表空间⽂件⾥,若未定义,则默认user表空间。
授权⽤户之后,才可以创建表,数据以表的形式存储在表⾥,在此对数据进⾏增删减改。
Oracle 数据库常⽤操作语句⼤全
【备份数据库】
1. 完全备份
exp demo/demo@orcl buffer=1024 file=d:\back.dmp full=y
demo:⽤户名、密码
buffer: 缓存⼤⼩
file: 具体的备份⽂件地址
full: 是否导出全部⽂件
ignore: 忽略错误,如果表已经存在,则也是覆盖
2. 将数据库中system⽤户与sys⽤户的表导出
exp demo/demo@orcl file=d:\backup\1.dmp owner=(system,sys)
3. 导出指定的表
exp demo/demo@orcl file=d:\backup2.dmp tables=(teachers,students)
4. 按过滤条件,导出
exp demo/demo@orcl file=d:\back.dmp tables=(table1) query=" where filed1 like ‘fg%’"
导出时可以进⾏压缩;命令后⾯ 加上 compress=y ;如果需要⽇志,后⾯: log=d:\
5. 备份远程服务器的数据库
exp ⽤户名/密码@远程的IP:端⼝/实例 file=存放的位置:\⽂件名称.dmp full=y
【数据库还原】
打开cmd直接执⾏如下命令,不⽤再登陆sqlplus。
完整还原
imp demo/demo@orcl file=d:\back.dmp full=y ignore=y log=D:\
指定log很重要,便于分析错误进⾏补救。
导⼊指定表
imp demo/demo@orcl file=d:\backup2.dmp tables=(teachers,students)
还原到远程服务器
imp ⽤户名/密码@远程的IP:端⼝/实例 file=存放的位置:\⽂件名称.dmp full=y
⼆、Oracle表操作
数据复制
insert into table1 (select * from table2);
复制表结构
create table table1 select * from table2 where 1>1;
复制表结构和数据
create table table1 select * from table2;
复制指定字段
create table table1 as select id, name from table2 where 1>1;
sqlplus连接的三种⽅式
SQLPlus 在连接时通常有三种⽅式
1. sqlplus / as sysdba
操作系统认证,不需要数据库服务器启动listener,也不需要数据库服务器处于可⽤状态。⽐如我们想要启动数据库就可以⽤这种⽅式进⼊
sqlplus,然后通过startup命令来启动。
sqlplus / as sysdba 是操作系统⽤户验证登录⽅式,通过OS本地的IPC可以直接连接到实例,IPC由本地OS提供,允许各种进程在主机内进⾏通信。所以不需要listener也可以连接到实例。
2. sqlplus username/password
连接本机数据库,不需要数据库服务器的listener进程,但是由于需要⽤户名密码的认证,因此需要数据库服务器处于可⽤状态才⾏。
3. sqlplus usernaem/password@orcl
通过⽹络连接,这是需要数据库服务器的listener处于监听状态。此时建⽴⼀个连接的⼤致步骤如下 
  a. 查询a,看看名称的解析⽅式,默认是TNSNAME 
  b. 查询a⽂件,从⾥边orcl的记录,并且到数据库服务器的主机名或者IP,端⼝和service_name 
  c. 如果服务器listener进程没有问题的话,建⽴与listener进程的连接。 
  d. 根据不同的服务器模式如专⽤服务器模式或者共享服务器模式,listener采取接下去的动作。默认是专⽤服务器模式,没有问
题的话客户端
就连接上了数据库的server process。
  e. 这时连接已经建⽴,可以操作数据库了。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。