数据库学习笔记一

  1. 数据库基础概念
    • 数据库定义:数据库(DataBase)是专门用于存储数据的仓库,可类比为数据的“存放地”。
    • 数据库分类:分为关系型数据库和非关系型数据库。关系型数据库中表与表之间存在关联关系,所有关系型数据库需遵循1999年制定的SQL标准,语法上90%相似,10%为各自“方言”;非关系型数据库中表相互独立,无统一标准,不同数据库语法各异。
  2. 主流关系型数据库介绍
    • Oracle数据库:由美国甲骨文公司开发,是大型关系型数据库,性能卓越但收费高昂,最新版本为23AI,支持AI功能,实际使用中常采用11g或12c版本。
    • MySQL数据库:原是瑞典MySQL公司推出的中小型关系型数据库,曾免费,被甲骨文公司收购后开始收费。
    • SqlServer数据库:由美国微软公司推出,属于大型关系型数据库,目前市场占有率较低,常见于高校机房。
    • DB2数据库:由美国IBM公司推出,主要面向企业,通常随IBM公司服务器一同销售,个人用户较少使用。
  3. Oracle数据库操作
    • 远程连接:使用PLSQL Developer远程连接工具,连接时需输入用户名、密码和要连接的数据库名称。登录后可在“users”中查看数据库中的所有用户信息。
    • 用户管理:在管理员账号下可创建用户,有命令创建和工具创建两种方式。命令创建用户使用“create user用户名identified by密码;”语句,如“create user lisi identified by 123456;”,还需使用“grant权限名称to用户名;”赋予权限,如“grant connect to lisi;”“grant resource to lisi;”“grant dba to lisi;” ,不同权限对应不同操作能力。
    • SQL分类:SQL主要分为四大类。
    • DQL语句用于数据库检索操作,关键词为“select”;
    • DML语句用于管理数据表中的数据,包括新增(insert)、修改(update)、删除(delete);
    • DDL语句用于管理数据库结构,如创建表(create)、修改表(alter)、删除表(drop);
    • DCL语句用于数据库权限管理,包括授权和事务控制,如“grant” 。
  4. Oracle数据库检索操作
    • 基本查询:切换到scott用户下可查看其拥有的四张表(bonus奖金表、dept部门表、emp员工表、salgrade薪资等级表)。查看表中所有数据使用“select * from表名称;”语法,也可指定字段查询,如“select字段一, 字段二,… from表名称;” 。
    • 条件查询:使用“where”关键词,涉及运算符有“>”“<”“>=”“<=”“!=”“==”等。
    • 例如,“select ename,sal from emp where sal > 2000;”查询工资超过2000的员工姓名和工资;还可使用“between…and”“in”等关键字进行范围查询和等值判断查询 。
    • 模糊查询:利用“like”关键词,有“%关键词%”(查询内容包含关键词)、“关键词%”(以关键词开头)、“%关键词”(以关键词结尾)三种关键词写法,“%”表示任意位置 。
    • 排序查询:通过“order by”关键词实现,排序方式有升序(ASC)和降序(DESC)。可对数字、日期、英文字母进行排序,如“select * from emp order by sal desc;”按工资从高到低查询员工信息 。
  5. 查询练习题:提供了student(学生表)、course(课程表)、mark(分数表)、teacher(教师表)相关练习。
  6. 若插入中文出现“?”问题,可配置环境变量解决,变量名“NLS_LANG”,变量值“SIMPLIFIED CHINESE_CHINA.ZHS16GBK” 。
  7. Oracle数据库常用函数
    • 字符串函数:包括转大写(upper(字符串))、转小写(lower(字符串))、连接字符串(concat(字符串1,字符串2)或使用“||”)、获取字符串长度(length(字符串))和字节数(lengthb(字符串))、截取字符串(substr(字符串,数值)或substr(字符串,起始位置,截取长度)) 。
    • 数值函数:有四舍五入(round(数值,位数))、截断(trunc(数值,位数))、求余(mod(数值1,数值2))、向下取整(floor())、向上取整(ceil()) 。
    • 日期函数:“sysdate”用于获取当前系统时间;可通过日期运算计算员工入职天数、月数、年数;“to_char()”用于日期转字符串,“to_date()”用于字符串转日期 。
    • 选择判断函数:“decode(字段,值1,返回值1,值2,返回值2,…,缺省值)”和“case when then”(有两种语法形式)可实现选择判断功能,根据字段值返回不同结果 。
  8. 聚合函数与分组函数:聚合函数用于数据统计,包括求最大值(max())、最小值(min())、求和(sum())、求个数(count())、求平均值(avg())。可结合条件查询对特定数据进行统计,如求某班男生平均年龄、某地区学生数量等 。

你可能感兴趣的:(数据库,数据库,学习,笔记)