Oracle数据库基础知识1

Oracle

Oracle的服务(需要开启的服务)

  • OrcaleServiceorcl:orcale启动服务
  • OracleOraDb11g_home1TNSListener:oracle监听器服务
  • OracleDBConsoleorcl:控制台服务

Oracle账户

  • sys: 超级管理员(Oracle 工程师)

  • system:管理员(Oracle 管理人员)

  • scott: 普通用户 (普通人员)默认密码:tiger

  • Oracle 11gxe版本不自带scott账号,需要自行创建

Oracle创建用户

  • 创建用户
  • create user 用户名 identified by 密码
  • 赋予数据库登录连接权限
  • grant connect to 用户名;
  • 赋予资源操纵权限
  • grant resource to 用户名;

Oracle修改密码

  • 第一种方法

    1. 在cmd命令行中使用命令:sqlplus / as sysdba
    2. 然后使用命令:alter user 用户名 identified by 新密码;
  • 第二种方法

    1. 在cmd命令行中使用命令:sqlplus /nolog
    2. 然后使用命令:conn as sysdba
    3. 然后输入一个已知的用户名和密码
    4. 然后使用命令:alter user 用户名 identified by 新密码;

单表查询-select

  • 知识点
    • select * from 表名 查询表中所有的数据
    • select 字段名1,字段名2,..from 表名 查询指定字段的所有值,不同字段之间使用逗号。隔开使用算术表达式:select 字段名(运算符),字段名(运算符)…from 表名
  • 案例
    • select * from emp—查询所有员工信息
      select ename,job,sal from emp–查询员工姓名,工作,薪资

    • 查询所有员工一年的工资,以及每位员工年终3000后的所有薪资(不包括津贴)
      select ename,job,sal*12,sal*12+3000 from emp 使用运算符

别名操作-as

  • 使用操作
    • as可以省略不写,如果有特殊字符获取空格使用双引号添加别名
  • 实例
    • select ename 姓名,job 工作,sal * 12 年资,sal * 12+3000 年薪 from emp 直接在字段后面添加别名
    • select ename "姓名",job 工作,sal * 12 ’年资’,sal * 12+3000 年薪 from emp 使用引号添加别名,不能使用单引号
    • select ename as 姓名,job "工作",sal * 12 年资,sal * 12+3000 年薪 from emp 使用as关键字添加别名
    • select ename "姓 名",job 工作,sal * 12 年资,sal * 12+3000 年薪 from emp 如果别名中有空格或者其他特殊字符,使用双引号
  • 推荐
    • 推荐使用别名操作时as不省略,别名加上双引号,方便维护操作
      select ename as "姓名" from emp;

链接符操作-||

  • 介绍
    • 链接符就是将两个字符或者字符串链接,在java中链接符为“+”,而在sql中链接符为“||”。
  • 实例
    • select ename||job,sal from emp; 使用||符号进行字符链接
    • select ename||' 的工作是 '||job||' 并且月工资是 '||sal from emp; 字符链接,普通字符使用单引号
  • 技巧
    • 由于两个字段名使用链接符操作之后,字段名称也会相应改变。所以我们可以是用as给新生成的字段名起个别名
    • select ename||' 的工作是 '||job||' 并且月工资是 '||sal as "信息" from emp;

去重操作-distinct

  • 介绍
    • 使用distinct关键字进行去重操作
  • 实例
    • 查看员工工作种类:select distinct job from emp 使用distinct关键字去除重复
    • 多字段去除重复:select distinct job,sal from emp; 多字段去除重复,去除的是重复的完全相同一整条信息

排序操作-order by

  • 知识点
    • select *from 表名 order by 字段名
    • select 字段名,字段名…from 表名 order by 字段名
  • 实例
    • 查询按照薪资排序的员工姓名,工作,薪资
      • select ename,job,sal from emp order by sal;(默认升序)
      • select ename,job,sal from emp order by sal desc; (降序)
      • select ename,job,sal from emp order by sal asc(升序)
    • 查询多条件排序
      • select * from emp order by sal,ename 多字段作为排序条件的时候,优先按照第一个字段排序,然后依次按照其他字段排序。
    • 逻辑运算
      • select ename,job,sal * 10 from emp order by sal;(按照工资x10升序排序)
    • 别名使用
      • select ename,job,sal as "工资" from emp order by "工资";

简单的where子句

  • 使用
    • 语法:select * from 表名 where 条件;条件中字段值区分大小写,字段名不区分大小写,字段值使用单引号括起来
    • 注意:
      • 1、在where中使用算术表达式 = ,< , > ,>= ,<= ,<>(不等于)
      • 2、使用order by 对筛选结果进行排序,order by 出现在where后面
  • 实例
    • 查看工资等于1250的员工信息
      select * from emp where sal='1250'–筛选条件是个数字也可以使用单引号
    • 查看工作等于CLERK的员工信息
      select * from emp where job='CLERK'–在筛选条件中字段值如果是字符需要加上单引号
      select * from emp where job='clerk'–在sql语句中字段的值是区分大小写的
      select * from emp where JOB='CLERK'–在sql中字段是不区分大小写的
    • 查看工资大于1250的员工姓名和工作
      select ename,job ,sal from emp where sal>'1250' order by sal–使用order by 对筛选结果进行排序,order by 出现在where后面
    • 查看工资大于等于2000的员工信息
      select * from emp where sal>=2000;
    • 查看工资小于等于2000的员工信息;
      select * from emp where sal<=2000
    • 查看工资不等于1500的员工信息
      select * from emp where sal<>1500 order by sal
    • 查看入职日期在81年后的员工信息
      select * from emp where hiredate>'1981年12月31号'
      select * from emp where hiredate>'1981/12/31'
      select * from emp where hiredate>'31-12月-1981'–使用日期的默认格式查询符合要求的数据,日-月-年
    • image-20200211171201957

where子句使用关键字

  • 知识点
    • and 用于多条件的与筛选:select * from 表名 where 条件 and 条件 and ....
    • or 用于多条件的或筛选: select * from 表名 where 条件 or 条件 or 条件....
    • in 用于多条件的或筛选: select * from 表名 where 字段名 in(值,值,值....)
    • like用于模糊查询: select * from 表名 where 字段名 like '%值%' 包含
    • is null 和is not null 用来判断字段是否为空 select * from 表名 where 字段名 is null
  • 实例
    • 查询工资在2000-3000之间的员工信息
      select * from emp where sal>=2000 and sal<=3000–使用and关键字进行”与”的多条件筛选;
      select * from emp where sal between 2000 and 3000;–使用between and 关键字进行筛选;
    • 查询工作为SALESMAN,ANALYST,MANAGER的员工信息
      select * from emp where job='SALESMAN' or job='ANALYST' or job='MANAGER'–使用or关键字进行”或”的多条件筛选
      select * from emp where job in('SALESMAN','ANALYST','MANAGER');–使用in关键字进行”或”的多条件筛选
      select * from emp where job='ANALYST'
    • 查询姓名中包含s的,以s开头的,以s结尾的,第二个字符为A的。
      select * from emp where ename like '%S%';–使用like关键字,姓名中包含S的,%代表任意多个字符
      select * from emp where ename like 'S%';–使用like关键字,以S开头的
      select * from emp where ename like '%S';–以S结尾的
      select * from emp where ename like '_A%'–使用”“指定位置包含指定字符的信息,”“代表任意一个字符
    • 查询名字中包含下划线的用户信息
      select * from emp where ename like '%A_%'escape 'A';–使用escape关键字将普通字符设置成为转译字符。
    • 查询有津贴的员工信息
      select * from emp where comm is not null;
      select * from emp where comm is null;–查询没有津贴的员工信息

© 版权声明
THE END
喜欢就支持一下吧
点赞0

Warning: mysqli_query(): (HY000/3): Error writing file '/tmp/MY9D9jGx' (Errcode: 28 - No space left on device) in /www/wwwroot/583.cn/wp-includes/class-wpdb.php on line 2345
admin的头像-五八三
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

图形验证码
取消
昵称代码图片