写点什么

Task01:初识数据库与 SQL- 天池龙珠计划 SQL 训练营

作者:阿里云天池
  • 2024-04-19
    浙江
  • 本文字数:3007 字

    阅读完需:约 10 分钟

 Task01:初识数据库与 SQL

目录一、初识数据库 1.1 DBMS 的种类 1.2 RDBMS 的常见系统结构 1.3 数据库安装 1.3.1 阿里云 MySQL 服务器使用介绍 1.3.2 本地 MySQL 环境搭建方法介绍二、初识 SQL2.1 概念介绍 2.2 SQL 的基本书写规则 2.3 数据库的创建( CREATE DATABASE 语句)2.4 表的创建( CREATE TABLE 语句)2.5 命名规则 2.6 数据类型的指定 2.7 约束的设置 2.8 表的删除和更新 2.9 向 product 表中插入数据三、练习题 3.13.23.33.4

本章主要对数据库进行基本介绍,考虑易用性及普及度,课程主要使用 MySql 进行 介绍。

SQL 训练营页面地址:AI训练营SQL-阿里云天池天池龙珠计划训练营地址:AI训练营-阿里云天池

一、初识数据库

数据库是将大量数据保存起来,通过计算机加工而成的可以 进行高效访问的数据集合。该数据集合称为数据库(Database,DB)。用来管理数据库的计算机系统称为数据库管理系统(Database Management System,DBMS)。

1.1 DBMS 的种类

DBMS 主要通过数据的保存格式(数据库的种类)来进行分类,现阶段主要有以下 5 种类型.

  • 层次数据库(Hierarchical Database,HDB)

  • 关系数据库(Relational Database,RDB)

这种类型的 DBMS 称为关系数据库管理系统(Relational Database Management System,RDBMS)。比较具有代表性的 RDBMS 有如下 5 种。


* Oracle Database:甲骨文公司的 RDBMS

* SQL Server:微软公司的 RDBMS

* DB2:IBM 公司的 RDBMS

* PostgreSQL:开源的 RDBMS

* MySQL:开源的 RDBMS


  • 面向对象数据库(Object Oriented Database,OODB)

  • XML 数据库(XML Database,XMLDB)

  • 键值存储系统(Key-Value Store,KVS),举例:MongoDB

本课程将向大家介绍使用 SQL 语言的数据库管理系统,也就是关系数据库管理系统(RDBMS)的操作方法。

1.2 RDBMS 的常见系统结构

使用 RDBMS 时,最常见的系统结构就是客户端 / 服务器类型(C/S 类型)这种结构(图 1-3)



1.3 数据库安装(必须学习)

本次学习大家可以选择使用阿里云数据库服务器或者本地安装数据库进行学习,在下面对应的学习教程中也给告诉了大家如何创建本次学习需要的数据库表和数据,所以大家必须使用一个方式安装数据库,才能完成后面学习。

1.3.1 阿里云 MySQL 服务器使用介绍

节约篇幅,具体相关介绍以及给大家写到 pdf 里了,大家点击链接即可进入查看:http://tianchi-media.oss-cn-beijing.aliyuncs.com/dragonball/SQL/other/阿里云MySQL服务器使用介绍.pdf优点: 操作使用方便,未来趋势(数据上云),导入、导出数据方便,运行速度快。缺点: 需要付费购买,不过现在对开发者有优惠活动,基础版本 1 核 1G,存储空间 20G 的,目前优惠价半年只需 9.9 元,一杯奶茶钱不到。

1.3.2 本地 MySQL 环境搭建方法介绍

节约篇幅,具体相关介绍以及给大家写到 pdf 里了,大家点击链接即可进入查看:http://tianchi-media.oss-cn-beijing.aliyuncs.com/dragonball/SQL/other/本地MySQL环境搭建方法介绍.pdf优点: 免费,增强动手能力。缺点: 安装、配置麻烦,数据导入、导出耗时长。

二、初识 SQL

2.1 概念介绍



数据库中存储的表结构类似于 excel 中的行和列,在数据库中,行称为记录,它相当于一条记录,列称为字段,它代表了表中存储的数据项目。

行和列交汇的地方称为单元格,一个单元格中只能输入一条记录。

SQL 是为操作数据库而开发的语言。国际标准化组织(ISO)为 SQL 制定了相应的标准,以此为基准的 SQL 称为标准 SQL(相关信息请参考专栏——标准 SQL 和特定的 SQL)。

完全基于标准 SQL 的 RDBMS 很少,通常需要根据不同的 RDBMS 来编写特定的 SQL 语句,原则上,本课程介绍的是标准 SQL 的书写方式。

根据对 RDBMS 赋予的指令种类的不同,SQL 语句可以分为以下三类.


DDL

DDL(Data Definition Language,数据定义语言) 用来创建或者删除存储数据用的数据库以及数据库中的表等对象。DDL 包含以下几种指令。

  • CREATE : 创建数据库和表等对象

  • DROP : 删除数据库和表等对象

  • ALTER : 修改数据库和表等对象的结构


DML

DML(Data Manipulation Language,数据操纵语言) 用来查询或者变更表中的记录。DML 包含以下几种指令。

  • SELECT :查询表中的数据

  • INSERT :向表中插入新数据

  • UPDATE :更新表中的数据

  • DELETE :删除表中的数据


DCL

DCL(Data Control Language,数据控制语言) 用来确认或者取消对数据库中的数据进行的变更。除此之外,还可以对 RDBMS 的用户是否有权限操作数据库中的对象(数据库表等)进行设定。DCL 包含以下几种指令。

  • COMMIT : 确认对数据库中的数据进行的变更

  • ROLLBACK : 取消对数据库中的数据进行的变更

  • GRANT : 赋予用户操作权限

  • REVOKE : 取消用户的操作权限

实际使用的 SQL 语句当中有 90% 属于 DML,本课程会以 DML 为中心进行讲解。

2.2 SQL 的基本书写规则

  • SQL 语句要以分号( ; )结尾

  • SQL 不区分关键字的大小写,但是插入到表中的数据是区分大小写的

  • win 系统默认不区分表名及字段名的大小写

  • linux / mac 默认严格区分表名及字段名的大小写

  • 本教程已统一调整表名及字段名的为小写,以方便初学者学习使用。

  • 常数的书写方式是固定的

'abc', 1234, '26 Jan 2010', '10/01/26', '2010-01-26'......

  • 单词需要用半角空格或者换行来分隔

SQL 语句的单词之间需使用半角空格或换行符来进行分隔,且不能使用全角空格作为单词的分隔符,否则会发生错误,出现无法预期的结果。

请大家认真查阅《附录 1 - SQL 语法规范》,养成规范的书写习惯。

2.3 数据库的创建( CREATE DATABASE 语句)

语法:

CREATE DATABASE < 数据库名称 > ;
复制代码


创建本课程使用的数据库

CREATE DATABASE shop;
复制代码


2.4 表的创建( CREATE TABLE 语句)

语法:

CREATE TABLE < 表名 >( < 列名 1> < 数据类型 > < 该列所需约束 > ,  < 列名 2> < 数据类型 > < 该列所需约束 > ,  < 列名 3> < 数据类型 > < 该列所需约束 > ,  < 列名 4> < 数据类型 > < 该列所需约束 > ,  .  .  .  < 该表的约束 1> , < 该表的约束 2> ,……);
复制代码


创建本课程用到的商品表

CREATE TABLE product(     product_id CHAR(4) NOT NULL,      product_name VARCHAR(100) NOT NULL,      product_type VARCHAR(32) NOT NULL,      sale_price INTEGER,      purchase_price INTEGER,      regist_date DATE,      PRIMARY KEY(product_id) )  ;
复制代码


2.5 命名规则

  • 只能使用半角英文字母、数字、下划线(_)作为数据库、表和列的名称

  • 名称必须以半角英文字母开头

表 1-3 商品表和 product 表列名的对应关系



2.6 数据类型的指定

数据库创建的表,所有的列都必须指定数据类型,每一列都不能存储与该列数据类型不符的数据。

四种最基本的数据类型

  • INTEGER 型

用来指定存储整数的列的数据类型(数字型),不能存储小数。

  • CHAR 型

用来存储定长字符串,当列中存储的字符串长度达不到最大长度的时候,使用半角空格进行补足,由于会浪费存储空间,所以一般不使用。

  • VARCHAR 型

用来存储可变长度字符串,定长字符串在字符数未达到最大长度时会用半角空格补足,但可变长字符串不同,即使字符数未达到最大长度,也不会用半角空格补足。

  • DATE 型

用来指定存储日期(年月日)的列的数据类型(日期型)。

2.7 约束的设置

约束是除了数据类型之外,对列中存储的数据进行限制或者追加条件的功能。

NOT NULL是非空约束,即该列必须输入数据。

PRIMARY KEY是主键约束,代表该列是唯一值,可以通过该列取出特定的行的数据。


查看本文全部内容,欢迎访问天池技术圈官方地址:Task01:初识数据库与SQL-天池龙珠计划SQL训练营_天池技术圈-阿里云天池

用户头像

还未添加个人签名 2024-03-12 加入

还未添加个人简介

评论

发布
暂无评论
Task01:初识数据库与SQL-天池龙珠计划SQL训练营_阿里云_阿里云天池_InfoQ写作社区