0x11数据库基础

子怡 发布于 2023-09-21 182 次阅读


AI 摘要

数据库基础可以分为人工管理阶段、文件系统阶段和数据库系统阶段。数据库中的术语包括数据、图像、语音、文字、数据库、数据库管理系统、结构化查询语言等。主要的关系型数据库包括MySQL和SQL Sever,其中MySQL是开源免费的,SQL Sever是付费商业的,适用于Windows和Linux平台。另外还有Oracle和Access。数据库安装时需要了解端口、连接命令和数据库连接工具,常见的数据类型包括整数类型、浮点类型、日期与时间类型以及字符串类型。常用的操作有列出数据库、创建数据库、删除数据库、使用数据库等。数据表操作中可以创建数据表,并设置完整性约束条件,如主键、外键、非空、唯一、自动增加等。

数据库基础

数据库概述

数据管理技术

  • 人工管理阶段

  • 文件系统阶段

  • 数据库系统阶段

术语

  • 数据(Date)

    • 图像、语音、文字
  • 数据库(Datebase)

    • Access、MSSQL、Oracle、SQLITE、MySQL等
  • 数据库管理系统(DBMS)

    • Access、MSSQL、Oracle、SQLITE、MySQL等
  • 结构化查询语言(SQL)

    • 关系型数据库

      • MySQL

        • 开源、免费
      • SQL Sever

        • 付费、商业

        • 平台:Windows、Linux

        • 具有使用方便可伸缩性好、更安全可靠的存储功能与相关软件集成程度高等优点

      • Oracle

        • 付费、商业
      • Access

    • 非关系型数据库NoSQL

数据库安装

端口

  • 3306

连接命令

  • mysql -u 用户名 -p 密码 -h host

数据库连接工具

  • Navicat

数据库构成

表(abe)

  • 在一个数据库中的表看起来像一个简单的电子表格。名字是唯一的

列( column)

  • 表中的一个字段。所有表都是由一个或多个列组成的。

行(row)

  • 表中的一个记录

值(value)

  • 行的具体信息, 每个值必须与该列的数据类型相同;

主键(primary key)

  • 一列(或一组列),其值能过唯一区分表中的每个行(主键是唯一的。一个数据表中只能包含一个主键。你可以使用主键来查询数据。)

数据库操作

列出数据库

  • show databases;

创建数据库

  • create datebase 库名;

删除数据库

  • drop database 库名;

使用数据库

  • use 数据库名;

    • 出现datebase changed就是使用成功

数据类型

整数类型

  • TINYINT

    • 一般用于枚举数据,比如系统设定取值范围很小且固定的场景。
  • SMALLINT

    • 可以用于较小范围的统计数据,比如统计工厂的固定资产库存数量等。
  • MEDIUMINT

    • 用于较大整数的计算,比如车站每日的客流量等。
  • INT(INTEGER)

    • 取值范围足够大,一般情况下不用考虑超限问题,用得最多。比如商品编号。
  • BIGINT

    • 只有当你处理特别巨大的整数时才会用到。比如双十一的交易量、大型门户网站点击量、证券公司衍生产品持仓等

浮点类型

  • FLOAT

  • DOUBLE

  • DECIMAL

日期与时间类型

  • 类型

    • 范围

      • 格式

        • 用途
  • DATE

    • 1000-01-01/9999-12-31

      • YYYY-MM-DD

        • 日期值
  • TIME

    • '-838:59:59'/'838:59:59'

      • HH:MM:SS

        • 时间值或持续时间
  • YEAR

    • 1901/2155

      • YYYY

        • 年份值
  • DATETIME

    • 1000-01-01 00:00:00/9999-12-31 23:59:59

      • YYYY-MM-DD HH:MM:SS

        • 混合日期和时间值
  • TIMESTAMP

    • 1970/1/1 0:00:00、2038 结束时间是第 2147483647 秒,北京时间 2038-1-19 11:14:07,格林尼治时间 2038年1月19日 凌晨 03:14:07

      • YYYYMMDD HHMMSS

        • 混合日期和时间值,时间戳

字符串类型

  • CHAR

    • 定长字符串
  • VARCHAR

    • 变长字符串

      • (参数)必填,必须指定长度
  • TINYBLOB

    • 不超过 255 个字符的二进制字符串
  • TINYTEXT

    • 短文本字符串
  • BLOB

    • 二进制形式的长文本数据
  • TEXT

    • 长文本数据
  • MEDIUMBLOB

    • 二进制形式的中等长度文本数据
  • MEDIUMTEXT

    • 中等长度文本数据
  • LONGBLOB

    • 二进制形式的极大文本数据
  • LONGTEXT

    • 极大文本数据

枚举类型

  • ENUM

集合类型

  • SET

二进制字符串类型

  • BINARY

  • VARBINARY

  • TINYBLOB

  • BLOB

  • MEDIUMBLOB

  • LONGBLOB

JSON类型

  • JSON对象

  • JSON数组

空间数据类型

  • 单值类型

    • GEOMETRY

    • POINT

    • LINESTRING

    • POLYGON

  • 集合类型

    • MULTIPOINT

    • MULTILINESTRING

    • MULTIPOLYGON

    • GEOMETRYCOLLECTION

数据表操作

创建数据表

  • CREATE TABLE 表名
    (属性名 数据类型 完整性约束条件,
    属性名 数据类型 完整性约束条件,
    属性名 数据类型
    );

    • 约束条件

      • PRIMARY KEY

        • 标识该属性为该表的主键
      • FOREIGN KEY

        • 标识该属性为该表的外键
      • NOT NULL

        • 标识该属性不能为空
      • UNIQUE

        • 标识该属性的值是唯一的
      • AUTO_INCREMENT

        • 标识该属性的值自动增加
      • DEFAULT

        • 为该属性设置默认值

删除数据表

  • DROP TABLE table_name ;

插入语句

  • insert into table_name(field1, field2,...fieldN)
    Values
    (value1, value2,...valueN);

修改表名

  • Alter table 旧表名 rename 新表名;

修改字段的数据类型

  • Alter table 表名 modify 属性名 数据类型;

修改字段名

  • Alter table 表名 change 旧属性名 新属性名 新数据类型;

增加字段

  • Alter table 表名 add 属性名 数据类型 [完整性约束条件];

  • alter table 表名 add foreign key (user_id) references 主表表名 (字段名)

删除字段

  • Alter table 表名 drop 属性名 ;
此作者没有提供个人介绍
最后更新于 2024-03-30