今天来复习一下oracle的基本操作,后来在项目中也经常使用oracle,但是只是部分,今天复习一下学了的oracle常用的基础操作。
- 登录oracle
sqlplus/as sysdba;
- 启动oracle
startup;
- 停止oracle
shutdown;
- 创建新用户
create user username identified by password;
- 授予用户权限
grant connect,resource to username;
- 授予用户具体的权限
grant create session,create table;unlimited tablespace to username;
- 连接用户
conn username/password;
- 创建表空间
create tablespace tablespacename datafile '路径/test.dbf' size 50m;
- 给用户指定默认表空间
alter user username default tablespace tablespacename;
- 查询表空间
select *from user_tablespaces;
- 删除表数据
drop table tablename;
- 复制空表结构
create table newtable as select *from oldtable where 1=2;
- 复制表(含记录)
create table newtable as select *from oldtable;
- 修改约束名称
alter table tablename rename constraint oldname to newname;
- 删除约束
alter table tablename drop constraint cname;
- 停止约束
alter table tablename modify constraint cname disable;
- 启用约束
alter table tablename modify constraint cname enable validate;
- 新增约束
alter table tablename add constraint constraintname foreigh(org_id) key (外键)references ref_table(ord_id);
- 更改字段数据类型
alter table tablename modify(org_id varchar2(50 byte));
- 更改字段数据长度
alter table tablename modify(org_id varchar2(80 byte));
- 修改表的列名
alter table tablename rename column xx to yy;
- 创建表(举例)
create table tablename(
sid number(10) primary key,
sname varchar2(100) not null, pwd varchar2(100) not null);
--属性之间逗号隔开,最后一个不加逗号
- 插入一条数据
insert into tablename values(sequencename.nextval,?,?);
- 创建一条序列
create sequence seq_tablename_tid start with 1001;
- 修改表中一条数据
update tablename set tid=?,sname=?,pwd=? where sid=?
- 修改数据时要拼接数据
update tablename set sid=? where tid in("+tid+");
对应的java中Dao层语句:
String sql=null;
if(tid.constains(",") && !tid.constains(" or ")){
sql="update tablename set sid=? where tid in("+tid+")"; return .......}else{
sql="update tablename set sid=? where tid=?"; return ........}
- 级联查询表数据(在做分页时用的sql语句)
select * from (select a.*,rownum rn from(select sid from tablename where tid=? order by sid)a where rownum<=?)where rn>?
- 查询总数
select count(sid) as tatal from tablename where条件