1、开始oracle栏中打开sql plus
2、u:scott p:tiger发现锁定
解锁:
以系统管理员身份登录u:system p:123456
(如果忘记密码,无密码方式登录 conn / as sysdba)
alter user scott account unlock;
conn scott/tiger;更改口令为123456
SQL>select * from emp;
3、oracle默认端口号:1521
4、数据库的概念:实例 ,服务
数据库名 ORCL 实例名ORCL SID ORCL
OracleOraDb11g_home1TNSListener开启
OracleServiceORCL开启
5、用户
表空间:存储数据库对象(表、约束、视图、存储过程、函数)的物理存储空间
将表空间与用户对应
角色:一系列权限的集合
授权
6、
切换用户conn system/123456
做一个学生管理系统的过程
(1)创建表空间
create tablespace sms
datafile 'd:\sms.dbf' size 200M
(2)创建用户名,分配表空间
create user aaron identified by 123456 default tablespace sms;
(3)为用户授权
conn aaron/123456;
grant create session to aaron;
grant create session,create table to aaron;
(4)回收权限
revoke create table from aaron;
7、常用系统预定义角色
connect
resource
dba
我们可以直接给用户授予角色
grant connect,resource to aaron;
我们也可以创建角色 为角色授权
create role myrole not identified;
grant create session,create table to myrole;
grant myrole to aaron;
8、oracle语句
DDL(create table ,drop table)数据定义
DML(insert,update)
DCL(revoke,grant)数据控制
DQL(select)数据查询
TCL(commit,rollback) 事务控制
9、当创建的表或其他对象中出现特殊字符,用双引号引起来
select... from ....
10、oracle提供了一个系统表叫做DUAL,来对select ...from...语法进行配合
select 'aaron' -->mysql,sql server
select 'aaron' from DUAL -->oracle
11、*代表全部字段,但是在开发中禁止使用,要全部列出来,且要用大写的字段名(为了效率)
12、查看表结构 DESC 表名;
desc emp;
13、NVL(字段|表达式,0) ==》 当第一个参数为NULL的时候,用0返回;否则,返回第一个参数本身的值。
为字段起别名
SELECT EMPNO,ENAME,SAL+NVL(COMM,0) SHOURU FROM EMP;
字符串拼接||
SELECT '张'||'三丰' FROM DUAL;
——————————————在oracle里面数据默认不自动提交,所以必须commit;——————————————————
在oracle里面对数据内容区分大小写
14、
EX01.求出EMP表所有的工种
SELECT DISTINCT JOB FROM EMP;
EX02.求出所有没有工种的员工
SELECT * FROM EMP WHERE JOB IS NULL
EX03.按照员工的入职时间进行升序排序
SELECT * FROM EMP ORDER BY HIREDATE ASC,EMPNO DESC;
SELECT* FROM EMP ORDER BY 1 ASC; 可以用字段的号排序
EX11、求姓名中含有%的员工
SELECT * FROM EMP WHERE ENAME LIKE '%\%%' ESCAPE '\'; //ESCAPE说明谁是转义字符
EX06. 求所有有奖金的员工信息 COMM
SELECT * FROM EMP WHERE COMM IS NOT NULL AND COMM != 0;
EX07. 求工种是CLERK,MANAGER,SALESMAN的员工
SELECT
*
FROM EMP WHERE JOB IN ( 'CLERK' , 'MANAGER','SALESMAN' );
EX08. 在Oracle里面得到系统时间 SYSDATE
SELECT SYSDATE FROM DUAL;