{DAY 6} SQL 资料表的处理:Creating, Inserting & Updating

前言

今天要来处理SQL的schema

那什麽是schema呢?

SQLBolt上查到的定义是:

We previously described a table in a database as a two-dimensional set of rows and columns, with the columns being the properties and the rows being instances of the entity in the table. In SQL, the database schema is what describes the structure of each table, and the datatypes that each column of the table can contain.

大概的意思就是每个资料表的架构,像是含有的栏位、数量,每个栏位里面的资料型态,还有是否有限制

今天的介绍会分成3个小部分

  • Creating tables
  • Inserting rows
  • Updating rows

学习资料来源是SQLBolt这个网站,上面提供了很详尽的解释跟即时的题目演练

可以很方便的入门SQL的操作

Creating tables

当我们想要创建新的资料表

会使用到CREATE TABLE的叙述句

为了避免出现重复的资料表名称

可以使用CREATE TABLE IF NOT EXISTS这个叙述句

使用方法

CREATE TABLE IF NOT EXISTS 资料表名称 
(
    栏位名称1 资料型态 资料限制 DEFAULT default_value,
    栏位名称2 资料型态 资料限制 DEFAULT default_value,
    …
);

常见的资料型态:
** 常见的资料型态 **

type data type Explanation
数值资料 INTEGER 整数
数值资料 FLOAT 浮点数
数值资料 REAL 浮点数
字串资料 CHAR(n) 固定长度为n的字串
字串资料 VARCHAR(n) 可变长度最大为n的字串
字串资料 TEXT 可变长度的字串
布林值 BLOB True、False, Yes、No, 1、0
时间资料 Date 储存日期
时间资料 DATETIME 储存准确时间

假如我想要产生一个歌曲相关的资料表

CREATE TABLE music2021 (
    id INTEGER,
    Song TEXT,
    Singer TEXT
);

使用查询语法查看是否建立成功

SELECT*
  FROM music2021;


就会产出一个由id, Song, Singer三个栏位组成的资料表

Inserting rows

当我们想要新增资料到资料表中

就会使用到INSERT INTO这个叙述句

使用方法是

INSERT INTO 资料表名称
VALUES (数值或是描述, 数值或是描述, …),
       (数值2或是描述2, 数值2或是描述2, …),
       …;

现在当我想在music2021这个资料表

新增目前排行榜上前六名的歌曲资讯

INSERT INTO music2021
VALUES (1, "GYALIS" , "Capella Grey"),
       (2, "STAY", "The Kid LAROI and Justin Biber"),
       (3, "Pepas", "Farrujo"),
			 (4, "Essence" , "Wizkid"),
       (5, "Volvi", "Aventura & Bad Bunny"),
       (6, "Run it up", "Sheff G");

SELECT* FROM music2021;来检查是否新增成功


输入的资料成功加入到资料表内了

Updating rows

当我们想要更新或是更改已经存在在特定栏位的资料时

就会需要使用到UPDATE & SET这个叙述句

使用方法

UPDATE 表格名称
SET 栏位名称 = 欲更改资料, 
    栏位名称 = 欲更改资料, 
    …
WHERE 条件;

在music2021的资料表中,

当我发现第四名的歌曲名称少输入了资料想要更改时

UPDATE music2021
SET Song = "Essence(feat. Tems)"
WHERE id = 4;

SELECT* FROM music2021;来检查是否新增成功

第四名的歌曲名称成功被更新为Essence(feat. Tems)

小结语

今天练习了如何创建,如何新增跟如何更改资料在资料表上
这是很基本的操作
明天会继续练习跟资料表相关的操作
Stay tuned with me?


<<:  ESP32_DAY3 开发环境-Visual Studio Code

>>:  Day05 | Dart基本介绍 - class、factory

[区块链&DAPP介绍 Day12] Solidity 教学 - contracts-1

今日来介绍 solidity 里的 contracts。 contract contract 其实是...

[Day 3] Atomic Operation

前言 昨天简单猜测了非同步框架所应具备的基本功能 ( 某种资料模式, thread schedule...

Day 5. 在设置Unity VR环境时遇到的问题,以及不存在的解法Q

Warning与error直扑而来XDD 蛮头痛的,我目前遇到的有两个问题被回报为Bug。 简单来说...

Day 24【Random Picture Blending in Python】return bool;

【前言】 在 Project 之中刚好有一份工作是要把每个部件合成,虽然跟主题没有关联不过因为篇幅...

安装kubeadmin

安装kubeadmin 在前一篇提到, 後续范例使用到的工具可以自建或使用现成的工具, 会将自建工具...