任務一 創建資料庫和表 @[toc] |班級| 姓名 | | | | | 軟體工程16 9班 |洪燕妮 | 【實訓目的與要求】 1、安裝MySQL系統,瞭解MySQL環境; 2、利用MySQL命令行視窗創建資料庫及表; 3、利用界面工具創建資料庫及表; 4、完整性約束設計。 【實訓原理】 DBMS環 ...
目錄
任務一 創建資料庫和表
@
班級 | 姓名 |
---|---|
軟體工程16-9班 | 洪燕妮 |
【實訓目的與要求】
1、安裝MySQL系統,瞭解MySQL環境;
2、利用MySQL命令行視窗創建資料庫及表;
3、利用界面工具創建資料庫及表;
4、完整性約束設計。
【實訓原理】
DBMS環境的使用
【實訓步驟】
一、熟悉MySQL環境
1.檢查軟硬體配置是否達到MySQL的安裝要求。
(1)硬體
(2)軟體
2.安裝資料庫管理系統MySQL伺服器。
3.練慣用不同的方法啟動MySQL服務。
(1).通過Windows服務管理器啟動MYSQL服務
(2).通過DOS命令啟動MYSQL服務
4.登錄MySQL伺服器。
5.認識MySQL界面工具:Navicat for MySQL客戶端工具
6.利用MySQL客戶端訪問資料庫
(1)使用SHOW語句查看系統中已有的資料庫:
命令:show databases;
(2)使用USE語句選擇MySQL資料庫為當前資料庫:
命令:use mysql;
(3)使用SHOW TABLES語句查看當前資料庫中的表:
命令:show databases;
二、利用MySQL命令行視窗創建資料庫及表
1.使用命令行方式創建資料庫SM
以管理身份登錄MySQL客戶端,使用CREATE語句創建SM資料庫。
命令:
2.建表結構並設計完整性
SM資料庫中包含3個數據表:學生表(student)、課程表(course)、學生選課表(SC)。 各表的結構分別如下:
- student表結構:
欄位名稱 | 數據類型 | 是否允許空值 | 約束 | 說明 |
---|---|---|---|---|
SNo | char(8) | × | 主鍵 | 學號 |
SName | varchar(8) | × | 唯一值 | 姓名 |
SSex | char(2) | × | 檢查約束 | 性別(男或女) |
SBir | datetime | √ | 出生日期 | |
Scredits | int | √ | 總學分 |
- course表結構:
欄位名稱 | 數據類型 | 是否允許空值 | 約束 | 說明 |
---|---|---|---|---|
CNo | char(5) | × | 主鍵 | 課程編號 |
CName | varchar(30) | × | 唯一值 | 課程名稱 |
CPno | char(5) | √ | 外碼 | 先修課程 |
CTime | decimal(3,0) | √ | 總學時 | |
CCredits | int | √ | 預設值4 | 學分 |
CTerm | char(1) | × | 學期 |
- SC表結構:
欄位名稱 | 數據類型 | 是否允許空值 | 約束 | 說明 |
---|---|---|---|---|
SNo | char(8) | × | 外碼 | 學號 |
CNo | char(5) | × | 外碼 | 課程編號 |
Score | decimal(3,1) | √ | 0~100 | 成績 |
(1)創建student表
命令:
mysql> create table student
-> (
-> SNo char(8) NOT NULL PRIMARY KEY,
-> SName varchar(8) NOT NULL UNIQUE,
-> SSex char(2) NOT NULL CHECK(SSex IN('男','女')),
-> SBir datetime,
-> Scredits int
-> );
截圖:
(2)創建course表
命令:
mysql> CREATE TABLE course
-> (
-> CNo char(5) NOT NULL PRIMARY KEY,
-> CName varchar(30) NOT NULL UNIQUE,
-> CPno char(5),
-> CTime decimal(3,0),
-> CCredits int DEFAULT 4,
-> CTerm char(1),
-> FOREIGN KEY (CPno) REFERENCES course(CNo)
-> );
截圖:
(3)創建SC表
命令:
mysql> CREATE TABLE SC
-> (
-> SNo char(8) NOT NULL,
-> CNo char(5) NOT NULL,
-> Score decimal(3,1) CHECK(Score>=0 AND Score<=100),
-> PRIMARY KEY(SNo,CNo),
-> FOREIGN KEY(SNo) REFERENCES student(SNo),
-> FOREIGN KEY(CNo) REFERENCES course(CNo)
-> );
截圖:
三、利用界面工具創建資料庫及表
利用Navicat for MySQL客戶端工具創建資料庫SM1,並根據上面給出的表結構在SM1中創建各表。
1.建庫SM1
截圖:
2.建表
(1)創建student表
截圖:
(2)創建course表
截圖:
(3)創建SC表
截圖:
【實訓總結】
1.初期時在安裝老師給的MYSQL5.5時出現問題,安裝成功但不能通過DOS命令行啟動,然後通過同學的幫忙,安裝了MYSQL5.0併成功啟動。
2.在創建表時,對錶的完整性約束條件表達不夠清楚,通過查閱書籍逐漸嘗試而建表成功。
主碼PRIMARY KEY
唯一值UNIQUE
不為空NOT NULL
外碼FOREIGN KEY
預設值DEFAULT
取值範圍CHECK(Score>=0 AND Score<=100)
3.使用Navicat時不夠熟練,要多加練習,遇到問題要及時解決,並從中吸取經驗。