mysql數據庫用sql語句建表,數據庫怎麼用sql語句建表

本文目錄一覽:

sql怎麼創建表

1.1 創建表方法

創建表是指在已存在的數據庫中建立新表。這是建立數據庫最重要的一步,是進行其他操作的基礎。

1.1.1 創建表的語法形式

CREATE TABLE 表名 (

屬性名 數據類型 [ 完整性約束條件 ],

屬性名 數據類型 [ 完整性約束條件 ],

……

屬性名 數據類型 [ 完整性約束條件 ],

)[ 表類型 ] [ 表字符集 ];

SQL 是不區分大小寫。下面將會具體介紹SQL,這種創建表是通過什麼方式起來的效果怎麼樣?

命名規範:

1. 命名富有意義 ( 英文或英文組合 )

2. 自定義名稱使用小寫

3. MySQL 語句使用大寫

CREATE TABLE IF NOT EXISTS data_house(

id INT,

name VARCHAR(20);

gender BOOLEAN,

) Engine = MyISAM;

上面 SQL 語句的含義是:如果不存在 text1 表,就創建它,包含 3 個字段 id 、 name 和 gender ,它們的類型分別是整形、字符型和布爾型,創建的表的類型是 MyISAM 。

完整性約束條件表

PRIMARY KEY 標識該屬性為該表的主鍵,可以唯一的標識對應的元組

FOREIGN KEY 標識該屬性為該表的外鍵,是與之聯繫的某表的主鍵

NOT NULL 標識該屬性不能為空

UNIQUE 標識該屬性的值是唯一的

AUTO_INCREMENT 標識該屬性的值自動增加,這是 MySQL 的 SQL 語句的特色 (null,0)

DEFAULT 標識該屬性設置默認值 (not null defualt 0,not null default 0.0,not null default ”)

1.1.2 設置表的主鍵

主鍵是表的一個特殊字段。該字段能惟一地標識該表中的每條信息。主鍵和記錄的關係,如同身份證和人的關係。主鍵用來標識每個記錄,每個記錄的主鍵值都不同。身份證是用來標明人的身份,每個人都具有惟一的身份證號。設置表的主鍵指在創建表時設置表的某個字段為該表的主鍵。

主鍵的主要目的是幫組 MySQL 以最快的速度查找到表中的某一條信息。

主鍵必須滿足的條件:

1. 主鍵必須是唯一的,表中任意兩條記錄的主鍵字段的值不能相同;

2. 主鍵的值是非空值;

3. 主鍵可以是單一的字段,也可以是多個字段組合。

1. 單字段的主鍵:

CREATE TABLE student1 (

stu_id INT PRIMARY KEY ,

stu_name VARCHAR(20) NOT NULL,

stu_gender BOOLEAN

) Engine = InnoDB;

2. 多字段主鍵 :

CREATE TABLE student2 (

stu_id INT,

course_id INT,

grade FLOAT,

PRIMARY KEY( stu_id, course_id )

)Engine = InnoDB;

1.1.3 設置表的外鍵

外鍵是表的一個特殊字段。如果字段 sno 是一個表 A 的屬性,且依賴於表 B 的主鍵。那麼,稱表 B 為父表,表 A 為子表, sno 為表 A 的外鍵。通過 sno 字段將父表 B 和子表 A 建立關聯關係。設置表的外鍵指在創建表設置某個字段為外鍵。

設置外鍵的原則:必須依賴於數據庫中已存在的父表的主鍵;外鍵可以為空值。

外鍵的作用 : 是建立該表與其父表的關聯關係。父表中刪除某條信息時,子表中與之對應的信息也必須有相應的改變。例如, stu_id 就 student 表的主鍵, stu_id 是 grade 表的外鍵。當 stu_id 為 ‘123’ 同學退學了,需要從 student 表中刪除該學生的信息。那麼, grade 表中 stu_id 為 ‘123’ 的所有信息也應該同時刪除。

CONSTRAINT 外鍵別名 FOREIGN KEY ( 屬性 1.1, 屬性 1.2… 屬性 1.n);

REFERENCES 表名 ( 屬性 2.1, 屬性 2.2,…, 屬性 2.n)

CREATE TABLE student3 (

id INT PRIMARY KEY,

stu_id INT,

course_id INT,

# 設置外鍵

CONSTRAINT C_fk FOREIGN KEY (stu_id, course_id) REFERENCES student2(stu_id, course_id)

) Engine = InnoDB;

1.1.4 設置表的非空約束

非空性是指字段的值不能為空值 (NULL) 。非空約束將保證所有記錄中該字段都有值。如果用戶新插入的記錄中,該字段為空值,則數據庫系統會報錯。例如,在 id 字段加上非空約束, id 字段的值就不能為空。如果插入記錄的 id 字段的值為空,該記錄將不能插入。設置表的非空約束是指在創建表時為表的某些特殊字段加上 NOT NULL 約束條件。設置非空約束的基本語法規則如下:

屬性名 數據類型 NOT NULL

mysql怎麼用語句建表

mysql使用create語句進行創建數據庫表,具體語法:

CREATE TABLE table_name (column_name column_type);

其中需要表名,表中字段名,字段屬性;示例:創建一個學生信息表 sql如下

CREATE TABLE IF NOT EXISTS `student`(

`student_id` INT UNSIGNED AUTO_INCREMENT,

`student_name` VARCHAR(100) NOT NULL,

`student_age` int(3) NOT NULL,

PRIMARY KEY ( `student_id` ))ENGINE=InnoDB DEFAULT CHARSET=utf8;

mysql數據庫建表和SQL修改表結構

工具/材料

Navicat For MySQL

01

打開Navicat for MySQL,找到一個數據庫,然後右鍵單擊表,選擇新建表選項,如下圖所示

02

在彈出的新建表界面,我們給表建一些字段,如下圖所示,建好之後保存即可

03

建好的表會在數據庫的右側界面顯示出來,需要查看哪個表直接選擇即可

04

下面我們在test數據庫中新建一個查詢,通過alter table語句修改表中的age字段不為空,如下圖所示

原創文章,作者:BYCU,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/135107.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
BYCU的頭像BYCU
上一篇 2024-10-04 00:10
下一篇 2024-10-04 00:10

相關推薦

  • 如何修改mysql的端口號

    本文將介紹如何修改mysql的端口號,方便開發者根據實際需求配置對應端口號。 一、為什麼需要修改mysql端口號 默認情況下,mysql使用的端口號是3306。在某些情況下,我們需…

    編程 2025-04-29
  • Python3支持多行語句

    Python3是一種高級編程語言,開發人員可以輕鬆地使用該語言編寫簡單到複雜的代碼。其中Python3支持多行語句,方便開發人員編寫複雜的代碼,提高代碼的可讀性和可維護性。 一、使…

    編程 2025-04-29
  • Python 常用數據庫有哪些?

    在Python編程中,數據庫是不可或缺的一部分。隨着互聯網應用的不斷擴大,處理海量數據已成為一種趨勢。Python有許多成熟的數據庫管理系統,接下來我們將從多個方面介紹Python…

    編程 2025-04-29
  • openeuler安裝數據庫方案

    本文將介紹在openeuler操作系統中安裝數據庫的方案,並提供代碼示例。 一、安裝MariaDB 下面介紹如何在openeuler中安裝MariaDB。 1、更新軟件源 sudo…

    編程 2025-04-29
  • Python for循環語句打印九九乘法表

    本篇文章將詳細介紹如何使用Python的for循環語句打印九九乘法表。打印九九乘法表是我們初學Python時經常練習的一項基礎操作,也是編寫Python程序的基本能力之一。 1、基…

    編程 2025-04-29
  • Hibernate日誌打印sql參數

    本文將從多個方面介紹如何在Hibernate中打印SQL參數。Hibernate作為一種ORM框架,可以通過打印SQL參數方便開發者調試和優化Hibernate應用。 一、通過配置…

    編程 2025-04-29
  • Python操作MySQL

    本文將從以下幾個方面對Python操作MySQL進行詳細闡述: 一、連接MySQL數據庫 在使用Python操作MySQL之前,我們需要先連接MySQL數據庫。在Python中,我…

    編程 2025-04-29
  • Python中while語句和for語句的區別

    while語句和for語句是Python中兩種常見的循環語句,它們都可以用於重複執行一段代碼。然而,它們的語法和適用場景有所不同。本文將從多個方面詳細闡述Python中while語…

    編程 2025-04-29
  • 使用SQL實現select 聚合查詢結果前加序號

    select語句是數據庫中最基礎的命令之一,用於從一個或多個表中檢索數據。常見的聚合函數有:count、sum、avg等。有時候我們需要在查詢結果的前面加上序號,可以使用以下兩種方…

    編程 2025-04-29
  • Python中自定義函數必須有return語句

    自定義函數是Python中最常見、最基本也是最重要的語句之一。在Python中,自定義函數必須有明確的返回值,即必須要有return語句。本篇文章將從以下幾個方面對此進行詳細闡述。…

    編程 2025-04-29

發表回復

登錄後才能評論