oracle

一、oracle数据库的卸载:

1.删除安装目录下的文件夹
2.删除注册表:打开运行输入命令(regedit)

  • HKEY_LOCAL_MACHINE/SOFTWARE/ORACLE
  • HKEY_LOCAL_MACHINE/SYSTEM/CurrentContr

二、sqlplus操作oracle数据库

1.把服务设置为手动启动
2.启动服务
3.停止服务
4.进入SQLplus操作数据库
5.如果scott账户锁住了,用sys超级管理员登录解锁用户

  • 登录>:sys as sysdba
  • 解锁>alter user scott account unlock;
  • 修改密码:passw scott --表示修改scott用户的密码

三、PLSQL Develper的安装和使用

1.软件有绿色版本
2.本身部分32位和64位
3.如果安装的Oracle是64位
4.要重新下载32位的Oracle Client,即oci.dll文件
5.使用之前要先配置一下监听
6.启动监听服务
7.配置环境便令,解决中文乱码问题

  • NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK

四、Oracle中的数据类型

1.字符数据类型

字符数据类型
cha 定长
varchar2 变长,节省磁盘空间(常用)
nchar 以unicode存储的双字节数据
nvarchar2

2.数值类型

  • number(p,s)
    • p为精度,表示数字的有效位数,从左边第一个不为零的数算起
    • s为范围,表示小数点右边数字的位数
    • 案例:
      • number(4,2) -->123.89 -->报错(有效位数为5,超过了4)
      • number(4,2) -->123.789 -->12.79
      • number(3,4) -->1 -->报错(1.0000查过3位有效数字了)
      • number(3,4) -->0.0001 -->0.0001
      • number(3,4) -->0.1 -->报错(0.1000超过3位有效数字了)

3.日期类型

日期类型
date 存储年月日时分秒
timestamp 精确到毫秒,可以精确的判断两条数据的插入先后

3.1 查看当前系统时间:select sysdate from dual

4.LOB数据类型(Large Object)

LOB数据类型
CLOB 大文本,大量字符数据(常用)
BLOB 大的二进制对象,图形,视频等
BFILR binary lob,存储一个二进制文件引用,文件存在操作系统中
NCLOB Unicode格式的CLOB

五、Oracle的常用SQL语句

  1. 建表create table userinfo(userId number(6,0) primary key,userName varchar2(20),userSex varchar2(20))
  2. 增删改查和mysql一样
  3. distinct:子句筛除结果几种内容全部相同的行,仅保留一行
  4. 表复制:create table student2 as select * form student where 1=2
  5. 事务控制
  • commit
  • rollback
  • savepoint
  • rollback to
    注意 千万不要忘记提交,不然没有数据

六、oracle中的伪列

  1. 伪列就想表中的某一列,但实际上它并未存储在表中
  2. 伪列可以从表中查询,但是不能插入、更新或删除它们的值
  3. rowId:唯一的标识数据库中的一行,以最快的方式访问表中的一行
  4. rowNum:对于查询的每一行,rowNum对返回结果进行编号,从1开始
  • 查询前几条数据:select * from emp where rownum<=5
  • 查询第一条数据:select * from emp where rownum=1
  • 分页查询:select * from (select s.*,rownum rn from student s order by stuid) t where rn between 2 and 4
    5.字符串连接符:||

七、集合操作符

  1. union(联合)
  2. union All(联合所有)
  3. intersect(交集)
  4. minus(减集):上面的集合减去下面的集合公有的,得到上面剩下的

八、oracle中常用函数

常用函数 例子
to_char() 把日期、数字转换为特定格式的字符串 to_char(55)/to_char(55,’$99.99’)/to_char(sysdate,‘yyyy-MM-dd’)
to_date() 把字符串转日期 to_date(‘1990-09-09’,‘yyyy-MM-dd’)
to_number() 转换为数值类型 to_number(‘99’)
nvl(exp1,exp2) 等效于exp1==null?exp2:exp1
nvl2(exp1,exp2,exp3) 等效于exp1==null?exp3:exp2 nvl相当于null,第一个表达式为空输出第二个表达式的值,否则输出第一个表达式的值
decode(val,if1,then1,if2,then2,…else) 等效于switch(val){case if1:return then1;case if2:return then2;}

以上笔记纯属看视频记录,侵权立删

你可能感兴趣的:(oracle,oracle基础)