Oracle数据库简单常用语句
简单常用语句:
登录超级用户
sqlplus / as sysdba;
登录普通用户
connect username/password;
显示当前用户名
show user;
查询所有用户名
select * from dba_users;
查询当前用户下面的所有表名
select table_name from user_tables;
查看表的结构
desc student;
查询控制文件路径
select * from v$controlfile;
sqlplus登录指定用户
connect 用户名/密码@网络服务名
查询数据库当前进程的连接数
select count(*) from v$process;
查看数据库当前会话的连接数
select count(*) from v$session;
查看数据库的并发连接数
select count(*) from v$session where status='ACTIVE';
查询数据库允许的最大连接数
show parameter processes; select value from v$parameter where name = 'processes';
修改数据库允许的最大连接数
alter system set processes = 300 scope = spfile; (需要重启数据库才能实现连接数的修改)
重启数据库
shutdown immediate;
startup;
oracle 默认的端口号
1521
排序
group by 分组
order by 排序
ASC 默认升序
DESC 降序
增删改查:
新增用户名/密码:
create user wangyitu01 identified by asd1203;
更改指定用户名的密码:
alter user wangyitu01 identified by 123456;
删除指定用户:
drop user wangyitu01;
若用户拥有对象,则不能直接删除,否则将返回一个错误值。指定关键字cascade,可删除用户所有的对象,然后再删除用户:
drop user wangyitu01 cascade;
用户授权:
grant connect, resource to wangyitu01;
详情参考:
创建表:
create table TEST
(
id VARCHAR2(30),
name VARCHAR2(30),
sex NUMBER(1),
birthday TIMESTAMP(6)
)
新增:
- - 插入表所有字段,按照字段顺序插入
INSERT INTO 表名称 VALUES (值1, 值2,....);
- - 也可以插入指定列,只要前后列对应就好
INSERT INTO table_name (列1, 列2,...) VALUES (值1, 值2,....);
- - 批量插入
insert into test(id,name) select t.open_id,t.name from test_user t where rownum <= 10
修改:
UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值
删除:
DELETE FROM 表名称 WHERE 列名称 = 值
删除表:
DROP TABLE 表名;
常用函数参考:
https://www.cnblogs.com/chuangege/p/6258658.html
数据库备份(仅供参考):
整个数据库备份:
exp 用户名/密码@orcl file=f:/oraclesql/testexport.dmp owner='system'
数据库指定表备份:
exp 用户名/密码@orcl tables=表名,表名 file=f:/oraclesql/exporttable.dmp
数据库恢复:
数据库指定表的恢复:
imp 用户名/密码@orcl tables=CLASSINFO,STUDENTINFO file=f:/oraclesql/exporttable.dmp
整个数据库的恢复:
exp 用户名/密码@orcl file=f:/oraclesql/testexport.dmp owner='system'