SQL Server数据库基本操作(一)
SQL Server數(shù)據(jù)庫(kù)基本操作
- 基本表的定義、刪除與修改
- 1.創(chuàng)建基本表
- 2.修改基本表
- 3.刪除基本表
基本表的定義、刪除與修改
創(chuàng)建數(shù)據(jù)庫(kù)
CREATE DATABASE STUDENT1.創(chuàng)建基本表
基本語(yǔ)法:
CREATE TABLE <表名> (<列名> <數(shù)據(jù)類型>[ <列級(jí)完整性約束條件> ][,<列名> <數(shù)據(jù)類型>[ <列級(jí)完整性約束條件>] ] ...[,<表級(jí)完整性約束條件> ] );下面將用一個(gè)例子來(lái)學(xué)習(xí)整個(gè)流程:
學(xué)生表Student
課程表Course
CREATE TABLE Course (Cno CHAR(4) PRIMARY KEY,Cname CHAR(40), Cpno CHAR(4), Ccredit SMALLINT,FOREIGN KEY (Cpno) REFERENCES Course(Cno) /*Cpno是外碼,被參照表是Course,被參照列是Cno*/ );學(xué)生選課表 SC
CREATE TABLE SC ( Sno CHAR(9), Cno CHAR(4), Grade SMALLINT,/* 主碼由兩個(gè)屬性構(gòu)成,必須作為表級(jí)完整性進(jìn)行定義*/PRIMARY KEY (Sno,Cno), /* 表級(jí)完整性約束條件,Sno是外碼,被參照表是Student */ FOREIGN KEY (Sno) REFERENCES Student(Sno), /* 表級(jí)完整性約束條件, Cno是外碼,被參照表是Course*/FOREIGN KEY (Cno) REFERENCES Course(Cno) );2.修改基本表
基本語(yǔ)法:
ALTER TABLE <表名> [ ADD[COLUMN] <新列名> <數(shù)據(jù)類型> [ 完整性約束 ] ] [ ADD <表級(jí)完整性約束>] [ DROP [ COLUMN ] <列名> [CASCADE| RESTRICT] ] [ DROP CONSTRAINT<完整性約束名>[ RESTRICT | CASCADE ] ] [ALTER COLUMN <列名><數(shù)據(jù)類型> ] ;(1)向Student表增加“入學(xué)時(shí)間”列S_entrance,其數(shù)據(jù)類型為日期型
ALTER TABLE Student ADD S_entrance DATE; /*不管基本表中原來(lái)是否已有數(shù)據(jù),新增加的列一律為空值NULL*/(2)將年齡的數(shù)據(jù)類型由字符型(這里原來(lái)的數(shù)據(jù)類型是SMALLINT)改為整數(shù)
ALTER TABLE Student ALTER COLUMN Sage INT; /*只需聲明要改成什么類型即可,不需寫出原來(lái)的類型*/(3)增加課程名稱必須取唯一值的約束條件
ALTER TABLE Course ADD UNIQUE(Cname);3.刪除基本表
DROP TABLE <表名>[RESTRICT| CASCADE];刪除Student表
DROP TABLE Student CASCADE;若表上建有與它相關(guān)的東西,使用RESTRICT時(shí)表不能被刪除;使用CASCADE時(shí)可以刪除表,視圖也自動(dòng)刪除。
創(chuàng)建一個(gè)基于Student的視圖 IS_Student:
嘗試使用RESTRICT刪除:
DROP TABLE Student RESTRICT;DBMS提示信息:
–ERROR: cannot drop table Student because other objects depend on it
如果選擇CASCADE,可刪除該表,視圖自動(dòng)被刪除
DROP TABLE Student CASCADE;DBMS提示信息:
–NOTICE: drop cascades to view IS_Student
SQL Server中不支持CASCADE/RESTRICT關(guān)鍵字,所以刪除只需輸入:
DROP TABLE Student;總結(jié)
以上是生活随笔為你收集整理的SQL Server数据库基本操作(一)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Java迭代器Iterator接口
- 下一篇: 数据存储之-SQLite数据库一