在cmd登入Oracle数据库 :sqlplus 用户名(如:scott)/ 密码(×××)
1:可以在开头用spool c:/笔记.txt 结尾用spool off 保存在这2条语句中间的所有sql语句,方便自己整理笔记
2:想要清屏:host cls
3: 查看当前用户:show user
4:设置sqlplus的环境:
1)设置行宽:set linesize 120
2)设置列宽:col 列名(如:name) for a7 其中的' a7 ' 代表此列字符串可以有7个字符长度
col 列名(如:number)for 999 其中的' 999 ’ 代表此列数子长度可以有0~999的范围
5:想要执行上一条sql语句时,直接使用‘/’执行便可
6:在执行查询时,使用列名代替*可以提升性能,进行了sql优化,但在Oracle9i之后可以认为是一样的,基本没什么性能提升了
7:想要修改上一条sql语句时,有2种方法
方法1:使用windows下的c命令,代表change ,先指定是哪一行的sql,直接敲入数字指定后,敲入“c /(要修改的sql语句)/(修改后的语句)”然后敲入“/”执行
方法2:此方法简单,直接使用ed命令,在windows下会用默认的文本文件(Linux则是vi)打开上一条sql语句,直接在文本文件里修改sql语句
8:oracle中,包含null的表达式都为null,并且null != null ,条件查询判断某个值是否为null时不能使用sal = null,而要使用sal is Null 。函数nvl(a,b)可以用在表达式有null值中,表示如果a为null,则返回b值,如:select empno,sal+nvl(comm,0) as 总薪水 from emp; 表示在emp表中查询员工号码和各自对应的总薪水(奖金+薪水),如果奖金为空,则返回0,打印出的则是sal薪水的值,如果不使用此函数,则返回的总薪水为空了。
9:使用DISTINCT可以去除重复的记录,其作用范围是之后的所有列
10:concat()函数和“ | | ”的作用:连接字符串
11:Oracle中有一个比较重要的表:dual表,又称伪表
12:保存成sql文件:save c:\ a.sql
13:加载sql文件:@c:\ a.sql