SQL Create Table例項講解

2022-09-18 12:21:18 字數 2262 閱讀 2976

在本教程中,將學習如何使用sqlcreate table語句來建立新錶。

1. sql create table語句簡介

到目前為止,我們已經了解了資料庫中的表是什麼。現在,是時候學習如何建立表了。

表是儲存在資料庫中的資料集合。 表由列和行組成。 要建立新錶,請使用具有以下語法的create table語句:

create table table_name(

column_name_1 data_type default value column_constraint,

column_name_2 data_type default value column_constraint,

...,

table_constraint

);

建立新錶所需的最低資訊是表名和列名。

table_name指定的表名在資料庫中必須是唯一的。 如果建立的表的名稱與已存在的表相同,則資料庫系統將發出錯誤。

create table語句中,指定以逗號分隔的列定義列表。每個列定義由列名,列的資料型別,預設值和乙個或多個列約束組成。

列的資料型別指定列可以儲存的資料型別。 列的資料型別可以是數字,字元,日期等。

列約束控制可以儲存在列中的值的型別。 例如,not null約束確保列不包含null值。

列可能有多個列約束。 例如,users表的username列可以同時具有not nullunique約束。

如果約束包含多個列,則使用表約束。 例如,如果表的主鍵包含兩列,則在這種情況下,必須使用primary key表約束。

sql create table示例

假設需要將員工的培訓資料儲存在資料庫中,並要求每個員工可以接受零或多個培訓課程,並且每個培訓課程可以由零個或多個員工進行。

在檢視了當前資料庫後,發現沒有地方儲存此資訊,因此建立乙個新的表。

以下語句建立課程表:

create table courses (

course_id int auto_increment primary key,

course_name varchar(50) not null

);

courses表有兩列:course_idcourse_name

course_id是課程表的主鍵列。 每個表都有乙個且只有乙個主鍵,用於唯一標識表中的每一行。

注:為每個表定義主鍵是乙個好習慣。

course_id的資料型別是整數,由int關鍵字表示。 此外,course_id列的值為auto_increment。表示當在courses表中插入新行而不提供course_id列的值時,資料庫系統將為該列生成乙個整數值。

course_name儲存課程名稱。 其資料型別是最大長度為50的字串(varchar)。not null約束確保course_name列中不儲存null值。

現在有了儲存課程資料的表。 要儲存訓練資料,請按如下方式建立名為training的新錶。

create table trainings (

employee_id int,

course_id int,

taken_date date,

primary key (employee_id , course_id)

);

trainings表包含三列:

因為trainings表的主鍵由兩列組成:employee_idcourse_id,所以必須使用primary key表約束。

在本教程中,您學習了如何使用sqlcreate table語句在資料庫中建立新錶。

實變函式 實分析總結

一 概述。實變函式,又叫實分析,整本書滿滿的證明就講了乙個勒貝格積分。最為大家所熟知的是用牛頓 萊布尼茨公式算的黎曼積分。但是黎曼積分本身依賴於函式的連續性,像不連續的狄利克雷函式就無法積分了。為了解決這一問題,勒貝格利用分割值域的方法,使得函式可積。但是分割出來的值域,只能放在一起,形式集合。如果...

NestedScrollWebview實現與優化

nestedscrollwebview實現與優化 原文如下 好久沒寫了,好像也沒什麼人關注我,呵呵,但我還是堅持寫一下,希望能幫到有需要的人!今天我來說一下nestedscrollwebview。最近在弄乙個需求,我需要用到coordinatorlayout webview 實現滾動互動效果,但要實...

saltstack keepalived實現高可用

本篇部落格承接saltstack安裝部署和saltstack grains,pillar,jinja模組的使用 建立目錄。root server1 keepalived vim files keepalived.conf configuration file for keepalived globa...