oracle常用操作命令总结

一、

默认安装带来的用户名/密码:
--sys/change_on_install SYSDBA 或 SYSOPER 不能以 NORMAL 登录,可作为默认的系统管理员
--system/安装时输入的密码 SYSDBA 或 NORMAL 不能以 SYSOPER 登录,可作为默认的系统管理员
--sysman/oem_temp sysman 为 oms 的用户名
--scott/tiger NORMAL 普通用户
--aqadm /aqadm SYSDBA 或 NORMAL 高级队列管理员
--Dbsnmp/安装时输入的密码 SYSDBA 或 NORMAL 复制管理员sysman 为 oms 的用户名
--sysdba //权限对象不是用户

二、

进入oracle和退出oracle:

--sqlplus "/as sysdba" ;//cmd窗口打开输入,进入最高权限用户

--sqlplus username/userpassword;//进入指定用户

--select * from nls_database_parameters where parameter ='NLS_CHARACTERSET';//查看oracle数据库编码方式

--exit //退出oracle

三、

创建用户和用户授权:

--create user username identified by userpassword; //创建用户和密码

--create user username identified by userpassword default tablespace tablespaceName;//创建用户并且指定默认表空间

--alert user username identified by newPassword; //修改密码

--drop user username;//删除用户

--drop user username cascade;//删除用户及对象

--Show user;//查看当前数据库连接用户

--grant create session to username; //授予sun用户创建session的权限,即登陆权限

--grant unlimited tablespace to username; //授予sun用户使用表空间的权限

--grant create table to username; //授予创建表的权限

--grant drop any table to username; //授予删除表的权限

--grant insert any table to username; //插入表的权限

--grant update any table to username; //修改表的权限

--grant all to public; //这条比较重要,授予所有权限(all)给所有用户(public)

--grant select on tablename to username;//授予sun用户查看指定表的权限

--grant drop on tablename to username;//授予删除表的权限

--grant insert on tablename to username;//授予插入的权限

--grant update on tablename to username;//授予修改表的权限

--grant insert(id) on tablename to username;
--grant update(id) on tablename to username;//授予对指定表特定字段的插入和修改权限,注意,只能是insert和update

--grant alert all table to username;//授予sun用户alert任意表的权限

--grant connect,resource,dba to username;//授予dba权限

(DBA: 拥有全部特权,是系统最高权限,只有DBA才可以创建数据库结构。RESOURCE:拥有Resource权限的用户只可以创建实体,不可以创建数据库结构。CONNECT:拥有Connect权限的用户只可以登录Oracle,不可以创建实体,不可以创建数据库结构。对于普通用户:授予connect, resource权限。对于DBA管理用户:授予connect,resource, dba权限。)

--基本语法同grant,关键字为revoke.//撤销权限

四、

oracle导入导出 dmp文件:
cmd窗口下:
--imp 用户名/密码@网络服务名 file=XXX.dmp fromuser=XXX touser=XXX;//导入dmp文件

--imp 用户名/密码@网络服务名 file=xxx.dmp full=y;//导入dmp文件

--imp aichannel/aichannel@HUST full=y file=file= d:data ewsmgnt.dmp ignore=y;//忽略已存在的表

--exp system/manager@TEST file=d:daochu.dmp full=y;//导出 dmp文件

--exp system/manager@TEST file=d:daochu.dmp owner=(system,sys)//system用户与sys用户的表导出

--exp system/manager@myoracle file=d:daochu.dmp tables=(table1) igonre = y;//导出指定表(igonre可有可无)

-- exp aichannel/aichannel@TESTDB2 file= d:data ewsmgnt.dmp tables=(inner_notify,notify_staff_relat);//将数据库中的表inner_notify、notify_staff_relat导出

--exp 用户名/密码@网络服务名 file=xxx.dmp tables=(表名);//导出 dmp文件

--exp 用户名/密码@网络服务名 file=xxx.dmp tables=(table1,table2,table3)。//导出多个 dmp文件

五、

oracle导入sql文件:
进入到sql文件目录下,登录需要导入文件的用户
--sql>@D:/test.sql;

六、

oracle导入csv数据文件:
1、建好对应的表和字段;
2、新建test.ctl文件,用记事本编辑写入:
load data

infile 'e:TB_KC_SERV.csv'

into table "TB_KC_SERV"

fields terminated by ','

optionally enclosed by '"'

(SERV_ID,ACC_NBR,PROD_ID)

3、打开cmd命令行界面:
输入:sqlldr userid=user/password@database control=d: est.ctl log=d: est.log

七、

表操作:创建表,删除表,插入字段,修改字段类型,修改字段名,删除字段,给字段插入数据,修改字段数据,删除字段数据

创建表:
create table SZ_NETPATROL_INFO
(
patrol_manager VARCHAR2(100),
patrol_time DATE,
patrol_locationx NUMBER,
patrol_locationy NUMBER,
patrol_sort VARCHAR2(100),
patrol_network VARCHAR2(100),
patrol_mobile VARCHAR2(100),
city_id VARCHAR2(20),
city_name VARCHAR2(100),
service_id VARCHAR2(20),
service_name VARCHAR2(100),
unit_id VARCHAR2(20),
unit_name VARCHAR2(100),
signin_id VARCHAR2(20)
);

--create table tablename(id number(6,0),regdate date default sysdate);//给表中date字段添加默认值

--rename tableName to newTableName;//修改表名

--truncate table tableName;//截断表

--drop table tableName;//删除表

--comment on column SZ_NETPATROL_INFO.patrol_mobile is '联系电话';//备注字段信息:

--alter table tablename add colunmname varchar2(29); //添加字段

--alter table tablename rename column colName to newColName;//修改表字段名

--alter table tablename modify addr varchar2(50);//修改表字段数据类型

--alter table tablename drop column addr;//删除字段

--create index idx_stu_email on stu (email); //在stu这张表的email字段上建立一个索引:idx_stu_email

--insert into student(sno,sname,ssex,sbirthday,sclass) values(108,'曾华','男',to_date('1977-09-01','yyyy-mm-dd'),95033);//给表中指定字段新增数据

--insert into tablename values(108,'曾华','男',to_date('1977-09-01','yyyy-mm-dd'),95033);//给表中所有字段新增数据

--select t.table_name from user_tables t;//查询所有表名

--select t.column_name from user_col_comments t;//查询所有字段名

--select t.column_name from user_col_comments t where t.table_name = 'BIZ_DICT_XB';//查询指定表的所有字段名

--select t.column_name, t.column_name from user_col_comments t where t.table_name = 'BIZ_DICT_XB';//查询指定表的所有字段名和字段说明

(date类型数据可以通过赋值“sysdate”,直接获取当前系统时间,无需手动输入。)

--select * from SZ_NETPATROL_INFO; //查询表的数据

--select patrol_location from SZ_NETPATROL_INFO; //查询表中某字段的数据

--desc tablename;//查询表内有哪些字段

--delete TB_KC_SERV//删除表内所有数据

--create table tablename as select * from tableOldName;//建表时复制旧表所有字段

--create table tablename as select ID,username from tableOldName;//建表时复制旧表指定字段

--insert into tablename select * from tableOldName;//添加字段时复制旧表所有字段

--insert into tablename(ID,username) select ID,username from tableOldName;//建表时复制旧表指定字段

--update tablename set col1=value1,col2=value2 where col3=value3;//修改字段数据,可指定where,也可不指定where

--delete from tablename where col1=value1;//删除表数据,where可指定可不指定

原文地址:https://www.cnblogs.com/liujiale/p/7249390.html