我们通常称oralce为服务器,而不是数据库。因为oralce中可以建多个数据库,所以称为数据库服务器更合适。
下面介绍通过命令行(cmd)界面操作oracle
首先是准备工作:
语句 | 解释 | |
以超级用户登录 | sqlplus / as sysdba; | “/” 两边有空格,"as sysdba"表示超级用户 |
解锁用户 | alter user scott account unlock; | oracle安装好后会自动帮我们建用户,但是是锁住的,无法使用。所以首先要解锁用户。 |
设置密码 | alter user scott identified by abc; | 给scott用户设置密码abc |
以普通角色连接oracle | sqlplus scott/abc; | "/"两边是用户名和密码 |
常用命令:
语句 | 解释 | |
查询当前用户是谁 | show user; | |
查询scott用户下的所有对象,使用tab表 | select * from tab; | tab表每个用户都有 |
设置显示的列宽 | column ename format a12;
column eage format 9999; | 针对字段为字符型varchar2和日期型date,使用a开头,12表示长度 针对数值型number,四个9表示四个数字位,只能用9 |
设置每页显示高度 | set pagesize 80; | |
执行最近一次的SQL语句 | / | |
清屏 | host cls; | |
查询表的结构 | desc 表名; | |
使用别名 | select name "姓名",age “年龄” from student; | 字段和别名之间以空格隔开,字段之间以逗号隔开 |
对某个字段去除重复 | select distinct age from student; | distanct |
注意:
1、别名建议使用双引号,若使用单引号,则别名中不能含有空格
2、列名不能使用单引号,因为oracle认为单引号是字符串型或日期型
3、oracle中连接字符串使用 || (双竖线),而不是 +
eg. select name || '的年龄是' || age || '岁' from student;
4、使用between时 注意:
1)对于数值型,小数值在前,大数值在后
2)对于日期型,年长值在前,年小值在后
5、模糊查询时,使用%表示0个,1个或多个字符。使用_只能表示1个字符
eg. select * from emp where ename like 'S%';
6、使用\转义符,让其后的字符回归本来意思
eg. select * from emp where ename like '%\_%' escape '\';
7、 oracle想表示' (一个单引号),则需要写两个才能转成一个。同理,想要两个单引号,则要写四个
eg. insert into emp(empno,ename) values(123,'''');
8、判断是否为null时使用is,而不是=