iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 14
0

前言

這一次的主題一樣是輕量資料庫SQLite的語法,這一次會教大家如何操作資料庫與資料庫的一些基本指令。

操作資料庫

  1. 創建表
CREATE TABLE 資料庫名稱.表格名稱(
   欄位名稱1 資料類型  PRIMARY KEY(one or more columns),
   欄位名稱2 資料類型,
   欄位名稱3 資料類型,
   .....
   欄位名稱n 資料類型,
);
```sql
CREATE TABLE STUDENT(
    ID INT PRIMARY KEY NOT NULL,
    NAME TEXT NOT NULL,
    AGE INT NOT NULL,
    BIRTHDAY TEXT NOT NULL
);
```
- ![](https://i.imgur.com/jstXqbX.png)
  1. 查詢表個名稱
.tables
  1. 查詢表格內容
.schema [表格名稱]
  1. 刪除表格
DROP TABLE [表格名稱]

Insert語句

  • INSERT INTO 用於向資料庫的表格中新增資料進去表格中
(1)
INSERT INTO 表格名稱 (欄位名稱1,欄位名稱2,欄位名稱3,...欄位名稱N)  
VALUES (值1,值2,值3,...值N);

(2)
INSERT INTO 表格名稱 VALUES (值1,值2,值3,...值N);
  • 實例
  1. 目前有一表格
  1. 新建多筆資料
INSERT INTO STUDENT (ID,NAME,AGE,BIRTHDAY)
VALUES (1,'A',22,'1996/01/17');
INSERT INTO STUDENT (ID,NAME,AGE,BIRTHDAY)
VALUES (2,'B',21,'1996/01/16');
INSERT INTO STUDENT (ID,NAME,AGE,BIRTHDAY)
VALUES (3,'C',20,'1996/01/15');
INSERT INTO STUDENT VALUES (4,'D',19,'1996/01/14');
  1. 查看表格資料
SELECT * FROM [表格名稱];

Select語句

  1. 顯示表格欄位名稱
.header on
.mode column
  1. 查看表格內容
SELECT * FROM [表格名稱];
  1. 指定表格欄位查詢
SELECT 欄位名稱1,欄位名稱2,欄位名稱3 FROM [表格名稱];
  1. 設置輸出表格各欄位的寬度
.width 欄位1寬度,欄位2寬度,欄位3寬度
SELECT * FROM [表格名稱];
  1. 當遇到不支援.tables&.schema
.tables 等同於 SELECT tbl_name FROM sqlite_master WHERE type = 'table';

.schema 等同於 SELECT sql FROM sqlite_master WHERE type = 'table' AND tbl_name = [表格名稱];
  1. 套用運算符來查詢指定欄位的值
SELECT * FROM [表格名稱] WHERE [欄位名稱1] [比較/算數/邏輯 運算符] 值 ;

ex:SELECT * FROM STUDENT WHERE AGE >=20;

Update語句

  • 用來更新表格內指定欄位的資料
  1. 更換特定值(先在WHERE指定要更換哪一行的,然後指定那一行的哪一欄位的值)
UPDATE [表格名稱] SET [欲更換值的欄位] = [更換後的值] WHERE [指定欄位] = [欄位內的值];

ex:UPDATE STUDENT SET AGE = 17 WHERE ID = 4;
  • 目前的表格
  • 更換後的表格值
  1. 更換欄位內的所有值
UPDATE [表格名稱] SET [欲更換值的欄位] = [更換後的值]
  • 目前的表格
  • 更換欄位內所有的值後(AGE)

Delete語句

  • 用於刪除表格內特定的一行,或是全部的資料
  1. 刪除特定的一行(WHERE指定那一行)
DELETE FROM [表格名稱] WHERE [欄位名稱] = [值];
  • 目前的表格
  • 刪除後的表格
  1. 刪除表格內所有的值
DELETE FROM [表格名稱];
  • 目前的表格
  • 刪除表格內所有值

上一篇
Day-13 資料庫篇 - SQLite(1)
下一篇
Day-15 資料庫篇 - SQLite(3)
系列文
在資訊宅中打滾的通訊系生30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言