首页 / ORACLE / oracle基础操作(1)
oracle基础操作(1)
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了oracle基础操作(1),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含3154字,纯文字阅读大概需要5分钟。
内容图文
![oracle基础操作(1)](/upload/InfoBanner/zyjiaocheng/447/a0aac17cc2374ed8a7a6b492ddf8c590.jpg)
以前只是简单用程序操作数据,现在才发现自己没有系统的学习过,所以想在这里记录一下自己在数据库方面遇到的问题,会参考查询网络上一些资料,现在看的是韩顺平oracle视频的笔记;
一、关于oracle系统的一些常用操作
1、oracle安装时会自动生成sys和system用户,sys是超级用户,具有最高权限,具有sysdba角色,有创建数据库的权限,默认密码是:change_on_install;system是管理操作员,具有sysoper角色,没有创建数据库的权限默认密码是:manager;
2、desc 表名;查看表结构时:使用Command window(命令窗口),不是SQL Window
3、常用关于表查询
select table_name from user_tables; //当前用户的表
select table_name from all_tables; //所有用户的表
select table_name from dba_tables; //包括系统表(需要用户权限)
select * from user_tab_columns where table_name=‘表名‘
4、set timing on;(命令窗口)打开显示操作时间的开关
5、sql*plus常用命令:
conn 用户名/密码 [as sysdba/sysoper] 对应的是disc
psssw 修改用户密码,需要用SYS/SYSTEM登陆
show user 显示当前用户
6、用户管理
创建用户:create user 用户名 identified by 密码; (密码以字母开头)
给自己修改密码:password 用户名;
给别人修改(有dba权限):alter user 用户名 identified by 新密码
删除用户:drop user 用户名 【cascade】(用户创建了表时,带cascade参数-级联删除该用户的所有对象)
7、权限
oracle的权限分为系统权限和对象权限:
系统权限:用户对数据库的相关权限(角色)
grant connect to scott with admin option;(system给scott用户connect角色)
对象权限:用户对其他用户的数据对象操作的权限(select,insert,update,delete,all)
grant select on emp to scott;(赋给scott用户查询emp的对象权限)
grant all on emp to scott;(赋给scott用户查询,修改,删除,添加emp的对象权限)
revoke select on emp from scott;(撤销scott用户对emp表的select对象权限)
8、给用户解锁:
alter user scott account unlock;
二、简单使用查询
(1)distinct 取消查询结果的重复行,distinct紧跟在selectt之后
(2)使用连接字符串(||)
select ename || ‘ is a ‘ || job from emp
(3)查询中,别名需要使用“”号圈中文,英文用‘’
(4)查询时,若列里有一个分组函数,其他的都必须是分组函数,否则就出错
select ename, max(sal) from emp;
分组查询时,分组字段可以和分组函数一起出现在查询列里
SELECT AVG(sal), MAX(sal), deptno FROM emp GROUP by deptno;
分组函数只能出现在选择列表、 having、 order by 子句中(不能出现在 where中)
三、连接查询:
Book表:BookId,BookName,StudentId
Student表:StudentId,StudentName
(1)默认查询:select * from book b,student s where b.studentid=s.studentid
同
内连接:select * from book b inner join student s on b.studentid=s.studentid
(2)左外连接:select * from book b left join student s on b.studentid=s.studentid
以Book表的b.StudentId为基准,遍历Student表中与之匹配的s.StudentId:若b.StudentId含有s.StudentId匹配项,则
进行拼接,然后遍历Student表的下一条s.StudentId,当查询完毕则进入下一条b.StudentId。若b.StudentId没有相应
s.StudentId匹配项时,则显示左表的项,拼接右表的项显示为NULL。
select * from book b left join student s on b.studentid=s.studentid where b.studentid=s.studentid
同
select * from book b,student s where b.studentid=s.studentid
(3)union用于合并多个select语句的结果,要求select查询的列相同(自动取消重复行);
union all不取消重复行
oracle基础操作(1)
标签:
本文系统来源:http://www.cnblogs.com/xyl-share-happy/p/4492523.html
内容总结
以上是互联网集市为您收集整理的oracle基础操作(1)全部内容,希望文章能够帮你解决oracle基础操作(1)所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。