色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

mysql基礎知識點總結

林子帆2年前12瀏覽0評論

MySQL是一種流行的開源數據庫,具有出色的可擴展性和性能。以下是MySQL的基礎知識點概述:

1. 數據庫和表

MySQL是由多個數據庫組成的,每個數據庫包含多個表。表是數據的集合,它們由列和行組成。每列定義表中的一個屬性。

# 創建一個名為 mydatabase 的新數據庫
CREATE DATABASE mydatabase;
# 創建一個新表
CREATE TABLE employees (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
firstname VARCHAR(30) NOT NULL,
lastname VARCHAR(30) NOT NULL,
email VARCHAR(50),
reg_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
) ENGINE=InnoDB;

2. 數據類型

MySQL支持多種數據類型,包括數值、字符串、日期/時間等。以下是一些示例:

CREATE TABLE example (
column1 INT,
column2 VARCHAR(50),
column3 DOUBLE,
column4 DATE,
column5 TIMESTAMP
);

3. 索引

索引可以提高MySQL查詢性能。它們是數據庫中特定列的值的快速引用??梢栽趧摻ū頃r添加索引。

CREATE TABLE employees (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
firstname VARCHAR(30) NOT NULL,
lastname VARCHAR(30) NOT NULL,
email VARCHAR(50),
reg_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
INDEX (lastname, firstname)
) ENGINE=InnoDB;

4. 主鍵和外鍵

主鍵是表中唯一的標識符。外鍵是另一個表的主鍵。外鍵用于將多個表連接在一起。

CREATE TABLE employees (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
firstname VARCHAR(30) NOT NULL,
lastname VARCHAR(30) NOT NULL,
email VARCHAR(50),
reg_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
) ENGINE=InnoDB;
CREATE TABLE orders (
order_id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
customer_id INT(6) UNSIGNED NOT NULL,
order_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
INDEX (customer_id),
FOREIGN KEY (customer_id) REFERENCES employees(id)
) ENGINE=InnoDB;

5. 視圖

視圖是對數據進行過濾和排序的虛擬表。它們是根據數據庫中的一個或多個表創建的。

CREATE VIEW customer_list AS
SELECT
customers.id,
CONCAT(customers.firstname, ' ', customers.lastname) AS full_name,
orders.order_date
FROM
customers
INNER JOIN orders ON customers.id = orders.customer_id;

這是MySQL的一些基礎知識點。更深入的學習MySQL需要學習更多的高級主題,如性能優化、復制和故障恢復等。