oracle数据库的相关操作

sql语句的编写:
-查询所有用户表 select * from user_tables;
-distinct查询特定字段的所有值 select distinct 字段名 from 表名;
-order by排序 select * from table order by 字段名 (默认是升序,desc降序)
-group by根据字段分组,求取sum\avg select 字段名,sum\avg(字段名)from table group by 字段名
-having 分组后的条件组合查询 select 字段名,sum\avg(字段名) from table group by 字段名 having 条件
-join ..on .. 在多个表的联合查询中用到 select table1.name,table2.id from table1 inner join table2 on table1.id=table2.id;
- alias 用于取别名 select name as n from table as t;
-insert into\update\delete为操作数据用的 update table set column='' where column='';delete from table where column='';
-alert table .. add\drop 增加或删除表的字段 alert table table1 add 字段名 数据类型;alert table table1 drop column 字段名;
-create\drop database 创建数据库

聚集函数的应用
-count 查询放回结果集行的数目 select count(column_name) from table
-sum 查询返回结果集的数值行的总和 select sum(column_name) from table
-avg 查询返回结果集的指定字段的平均值 select avg(colum_name) from table
-max\min  查询返回结果集的指定字段的最值 select max\min(column_name) from table

算术函数的应用
-abs 返回指定表达式的绝对正值 select abs(column_name) from table
-ceil 返回大于或者等于给定值的表达式的最小整数 select ceil(字段名——数值列) from table
-floor返回小于或者等于给定值的表达式的最大整数 select floor(字段名——数值列) from table
-cos\cosh\sin\sinh\tan\tanh\ 返回给定值的函数值 select 函数(字段名——数值列)from table
-exp 返回给定值的指数值 select exp(字段名——数值列) from table
-log 返回给定值得自然对数
-power 返回给定表达式值的指定乘幂的值。 select power(字段名,乘幂值) from table
-sign 返回给定值的 + 、 - 、0 的值
-sqrt 返回给定值的平方值


关系数据查询语句的编写
-主键 1)primary key(属性1,属性2) ——2)属性 数据类型 primary key——3)属性 数据类型  unique可以在同一个模型中出现多次)
-外键 1)直接在属性后面加上 ——references 表名(属性)——说明它参照了某个表的某个属性(必须是主关键字)
 2)在建表语句后面加上外部关键字说明语句 foreign key(属性1) references 表(属性2)——属性1为外部关键字,属性2为参照属性
-添加表的字段  alert table table1 add 属性 数据类型
-删除表的字段  alert table table1 drop 属性
-添加主键  alert table table1 add primary key(属性)
-删除主键  alert table table1 drop primary key
-添加外键  alert table talbe1 add foreign key(外部关键字) references table2(主键)
-删除外键  alert table talbe1 drop foreign key(外部关键字)
-添加索引  create unique index 索引名 on table1(属性)
-删除索引  drop unique index 索引名

SQL语句的编写
-select 属性列表 from 基本表 where 条件表达式
-条件表达式中可以用到的运算符
   1)算术比较运算符
   2)逻辑运算符 and  or  not
   3)集合运算符 in  not in 
   4)聚合函数:avg sum min max sum count
   5)可以是另一条sql语句 进行sql的嵌套
-
例子
create table student(
stuid int primary key,
stuname varchar2(6) not null,
stusex varchar2(2),
stuage int,
thid int,
foreign key(thid) references teacher(thid)
);

create table teacher(
thid int primary key,
thname varchar2(6) not null,
thsex varchar2(2),
thage int
);

insert into teacher values(111,'杨晶','男',39);
insert into teacher values(222,'丁爱郎','女',33);
insert into teacher values(333,'杨凌','男',27);
insert into teacher values(444,'杨玉峰','女',48);
insert into teacher values(555,'吴峰','男',39);
insert into teacher values(666,'侯爱芳','女',39);


insert into student values(1,'张三','男',13,111);
insert into student values(2,'阿大','男',15,111);
insert into student values(3,'倩儿','女',11,222);
insert into student values(4,'赵六','男',14,333);
insert into student values(5,'王五','男',12,444);
insert into student values(6,'阿狸','女',13,555);
insert into student values(7,'李四','男',12,666);
insert into student values(8,'阿二','女',17,222);
insert into student values(9,'孙九','男',13,333);
insert into student values(10,'周吴','女',14,555);
insert into student values(11,'吴起','男',15,333);
insert into student values(12,'程胜','男',16,666);

————commit;提交数据


oracle数据库创建用户,角色,授权,建立表空间
-创建用户 create user username identified by password;
-给用户授权 grant connect,resource to username;取消权限  revoke connect,resource to username;
-3中标准角色 connect role连接角色——临时用户,特别是那些不需要建表的用户,通常只赋予他们connectrole。connect是使用oracle的简单权限,这种权限只有在对其他用户的表有访问权时,包括select、insert、update和delete等,才会变得有意义。拥有connect role的用户还能够创建表、视图、序列(sequence)、簇(cluster)、同义词(synonym )、会话(session)和与其他数据库的链(link)
             \resource role资源角色—— 更可靠和正式的数据库用户可以授予resource role。resource提供给用户另外的权限以创建他们自己的表、序列、过程(procedure)、触发器(trigger)、索引(index)和簇(cluster)。
             \dba role数据库管理员角色  ——dba role拥有所有的系统权限----包括无限制的空间限额和给其他用户授予各种权限的能力。system由dba用户拥有。下面介绍一些dba经常使用的典型权限。(1)grant(授权)命令 (2)revoke(撤消)权限
-创建角色 create role rolename 给角色授权 grant 权限 on 表 to rolename  现在,拥有rolename角色的用户都具有对表的授予的权限
-删除角色 drop role rolename;
-删除用户表 delete from table ——删除了数据,但是,没有释放表占的表空间  truncate table emp——删除了数据,也释放了空间

转载于:https://my.oschina.net/u/1866053/blog/330249

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值