第 一 天 Oracle常用命令
第 一 天 Oracle常用命令
Oracle安装:
全局DB的名称:orcl
为方案指定口令:tiger
修改scott用户 口令:tiger
安装注意:
全局数据库名称不要超过8个字符,不能使用中文
oracle安装自动生成sys用户和system用户
sys口令:change_on_install
system口令:manager
1.sys用户是超级用户,具有最高权限,具有sysdba角色 有create database权限
2.System用户是管理操作员,权限也很大,具有sysoper角色 没有create database权限
3.一般讲,对于数据库维护,使用system用户登陆就OK
用户名/密码(只是数据库的密码)
scott/tiger
sys/tiger
system/tiger
基于dos命令:sqlplus
基于windows命令:sqlplusw
sqlplus scott/tiger
sqlplus scott/tiger@orcl
加锁-解锁:
以 sys/tiger as sysdba登陆
解锁:alter user 用户名 identified by 密码 account unlock;
加锁:alter user 用户名 identified by 密码 account lock;
eg:
sqlplus hr/tiger@orcl(该应户被锁定),如果被锁定,需要解锁。
sqlplus sys/tiger as sysdba
SQL> alter user hr identified by tiger account unlock;
用户已更改。
登陆数据库方式:
第一种方式:sqlplus
开始->运行->(cmd/sqlplus scott/tiger(@实例名))
第二种方式:sqlplusw
1.开始->运行->(sqlplusw) 输入用户名和密码
2.开始->程序->Oracle - OraDb
输入用户名和密码
第三种方式:浏览器地址栏中输入:http://www-cc6e104db11:5560/isqlplus
输入用户名和密码
Oracle数据库概念:
1.oracle数据库的一个实例就相当于一个数据库
2.启动Oracle就是启动一个oracle服务,也就是启动一个Oracle实例
3.启动后就只能看到一个实例,也就是一个数据库
4.如果需要启动多个数据库,那么就需要再次安装Oracle,就会有多个Oracle服务,然后启动多个Oracle服务,就可以看到多个Oracle实例
5.安装Oracle,就是安装一个Oracle服务,用管理员登陆只能看到一个数据库
6.安装Oracle实例,就自动默认了三个用户sys system scott,用这三个用户登陆也只能看到一个实例,该数据库有很多(表 视图 存储过程 触发器等)--称为数据对象。
7.Oracle通过权限控制,来实现不同用户登陆后,看到的数据库对象是不同的,也就是用户拥有不同的权限。
Oracle与一般数据库的区别:
MySQL,SqlServer 启动后,就启动的多个数据库(DB),用系统管理员登陆就可以看到多个数据库
Oracle使用的第三方插件:PL/SQL developer
oracle(sql/plus)常用命令“
cls:清屏(dos)
exit:退出
clear screen:清屏
show user:显示当前用户
切换用户:conn 用户名/密码
connect 用户名/密码
eg:
SQL> conn sys/tiger as sysdba--必须跟上as sysdba
SQL> conn system/tiger(as sysdba)--可以不跟as sysdba
SQL> connect scott/tiger(as sysdba)
disc:断开与当前数据库的连接
select table_name from user_tables;显示用户下的表
select * from all_tables;查看数据库中的表
desc/ describe 表名:显示表的结构
设置显示行宽度:
show line size;显示当前显示宽度,默认是80个字符
set linesize 160;
设置页的行数:
show pagesize;显示每页的记录条数。默认为14
set pagesize 20;
文件写入:
spool D:\my.sql 开始 将sqlplus上内容写入文件中
spool off 结束
文件加载:
@ D:\my.sql 运行脚本文件
start D:\my.sql 运行脚本文件
edit D:\my.sql 编辑脚本文件
交付式命令:&
eg;
SQL> select * from emp where ename='&name';
输入 name 的值: SMITH
原值 1: select * from emp where ename='&name'
新值 1: select * from emp where ename='SMITH'
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
---------- ---------- --------- ---------- ------------- ---------- ---------- ----------
7369 SMITH CLERK 7902 17-12月-80 800 20
基本SQL查询语句
DML 数据操纵语言
DDL 数据定义语言
DCL数据控制语言
空值不等于0,一个数和空值相加仍得空
别名:as
SQL> select ename as "name",sal as "salary" from emp;
连接符:||
SQL> select ename||job as "name",sal as "salary" from emp;
SQL> select ename,job,ename|| ' is a '|| job as "employee detail" from emp;
ENAME JOB employee detail
---------- --------- -----------------
SMITH CLERK SMITH is a CLERK
删除重复行:distinct
SQL> select distinct deptno from emp;
日期和字符只能在单引号中出现
例:选择雇佣时间在
SQL> select ename,job,hiredate from emp
2 where hiredate between to_Date('
3 and to_Date('