資料庫原理及應用 實驗2 表的建立和管理

2022-09-07 14:12:09 字數 3567 閱讀 4501

掌握mysql資料庫的建立、修改、刪除、檢視操作

mysql、sqlyog

建立名為stj的資料庫,字符集設定為gbk,能夠多次執行建立語句不報錯

create database if not exists stj character set gbk;

修改stj的字符集為utf8

alter database stj character set utf8;

檢視資料庫stj的建立資訊

show create database stj;

檢視當前有哪些資料庫

show databases;

刪除資料庫stj,能夠多次執行刪除語句不報錯

drop database if exists stj;

在資料庫stj中建立s、p、j及spj四個模式

(注意為各欄位選定合適的資料型別,以及主鍵、外來鍵約束)

s([sno],sname,status,city);

p([pno],pname,color,weight);

j([jno],jname,city);

spj([sno,pno,jno],qty);

分別檢視四張表的字段結構資訊

desc s;

desc p;

desc j;

desc spj;

分別檢視四張表的建立資訊

show create table s;

show create table p;

show create table j;

show create table spj;

為s表的字段sname新增唯一約束

alter table s

modify column sname int unique;

修改p表的color欄位資料型別為char(1),並新增預設約束,預設值為紅

alter table p

modify column color char(1) default '紅';

為j表的字段jname新增非空約束

alter table j

modify column jname varchar(20) not null;

用兩種方式修改表s的名稱為table_s,最終改為原名s

alter table s rename to table_s;

rename table s to table_s;

alter table table_s rename to s;

刪除表spj欄位jno的外來鍵約束(假設外來鍵名為fk_spj_j),確認刪除後(show

index from 表名),再重新新增外來鍵fk_spj_j

alter table spj

drop foreign key fk_spj_j;

alter table spj

drop index fk_spj_j;

show index from spj;

alter table spj

add constraint fk_spj_j foreign key (jno) references j (jno);

修改表s中的欄位名status為sstatus,並檢視表的字段結構資訊

alter table s change \`status\` sstatus int;

desc s;

使用insert語句插入以上四張表的資料,並用select * from

表名檢視表中所有記錄

insert into s

values ('s1', '精益', 20, '天津'),

('s2', '盛錫', 10, '北京'),

('s3', '東方紅', 30, '北京'),

('s4', '豐泰盛', 20, '天津'),

('s5', '為民', 30, '上海');

insert into p

values ('p1', '螺母', '紅', 12),

('p2', '螺栓', '綠', 17),

('p3', '螺絲刀', '藍', 14),

('p4', '螺絲刀', '紅', 14),

('p5', '凸輪', '藍', 40),

('p6', '齒輪', '紅', 30);

insert into j

values ('j1', '三建', '北京'),

('j2', '一汽', '長春'),

('j3', '彈簧廠', '天津'),

('j4', '造船廠', '天津'),

('j5', '機車廠', '唐山'),

('j6', '無線電廠', '常州'),

('j7', '半導體廠', '南京');

insert into spj

values ('s1', 'p1', 'j1', 200),

('s1', 'p1', 'j3', 100),

('s1', 'p1', 'j4', 700),

('s1', 'p2', 'j2', 100),

('s2', 'p3', 'j1', 400),

('s2', 'p3', 'j2', 200),

('s2', 'p3', 'j4', 500),

('s2', 'p3', 'j5', 400),

('s2', 'p5', 'j1', 400),

('s2', 'p5', 'j2', 100),

('s3', 'p1', 'j1', 200),

('s3', 'p3', 'j1', 200),

('s4', 'p5', 'j1', 100),

('s4', 'p6', 'j3', 300),

('s4', 'p6', 'j4', 200),

('s5', 'p2', 'j4', 100),

('s5', 'p3', 'j1', 200),

('s5', 'p6', 'j2', 200),

('s5', 'p6', 'j4', 500);

通過本次實驗課程,我掌握了如何建立資料庫,設定其字符集,檢視資料庫的建立資訊;掌握了建立資料表並設定列級約束或表級約束的辦法。收穫頗豐。帶著這些問題,我們來審視一下mysql學習。希臘說過一句富有哲理的話,最困難的事情就是認識自己。這句話把我們帶到了乙個新的維度去思考這個問題:拉羅什夫科說過一句著名的話,取得成就時堅持不懈,要比遭到失敗時頑強不屈更重要。這不禁令我深思。

資料庫原理及應用 2

單一的資料結構 關係 現實世界的實體以及實體間的各種聯絡均用關係來表示 邏輯結構 二維表 從使用者角度,關係模型中資料的邏輯結構是一張二維表 建立在集合代數的基礎上一組具有相同資料型別的值的集合 笛卡爾積可表示為乙個二維表 表中的每行對應乙個元組,表中的每列對應乙個域 d1 d2 dn的子集叫作在域...

2 建立 查詢資料庫及資料庫表

在mysql中 想要建立乙個資料庫,以myschool為例 mysql create database myschool 想要檢視已經建立的資料庫 mysql show databases 接下來直接建立資料庫表遇到此錯誤 error 1046 3d000 no database selected ...

資料庫(實驗2 資料庫表)

建立資料庫 建立資料庫資料檔案 create database testbase2 on name testbase2 data,filename d 張小山資料庫 lianxi2 testbase2 data.mdf size 5mb,maxsize 50mb,filegrowth 20 建立資料...