程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> 其他數據庫知識 >> MSSQL >> SqlServer編寫數據庫表的操作方式(建庫、建表、修正語句)

SqlServer編寫數據庫表的操作方式(建庫、建表、修正語句)

編輯:MSSQL

SqlServer編寫數據庫表的操作方式(建庫、建表、修正語句)。本站提示廣大學習愛好者:(SqlServer編寫數據庫表的操作方式(建庫、建表、修正語句))文章只能為提供參考,不一定能成為您想要的結果。以下是SqlServer編寫數據庫表的操作方式(建庫、建表、修正語句)正文


學習要點:

  SQL之-建庫、建表、建約束、關系SQL根本語句大全.txt舉得起放得下叫舉重,舉得起放不下叫負重。頭要有勇氣,低頭要有底氣。學習要加,自豪要減,時機要乘,懶散要除。人生三難題:思,相思,單相思。

SQL之-建庫、建表、建約束、關系、局部T-sql語句

---創立庫 創立庫之前 先停止 檢查數據庫中能否 已存在 次數據庫 有便刪除 
--- if exists(select * from sys.sysdatabases where name='ConstructionDB')begin use master drop database ConstructionDB end go create database ConstructionDB on()
if exists(select * from sysobjects where name ='ConstructionDB') --查找命令
drop DATABASE ConstructionDB --刪除 命令
Create database ConstructionDB
on(
name='ConstructionDB_date',
filename='E:\技藝抽查試題第二模塊(數據庫)\試題——1\義務一\ConstructionDB_date.mdf',
size=3mb,
maxsize=10mb,
filegrowth=5% --增長速度為
)
log on(
name='ConstructionDB_log',
filename='E:\技藝抽查試題第二模塊(數據庫)\試題——1\義務一\ConstructionDB_date.ldf',
size=2mb,
maxsize=5mb,
filegrowth=1mb
)
--運用T-SQL語句創立表
use ConstructionDB
go
---查詢 庫中能否存在 此表 存在則刪除
if exists(select * from sysobjects where name = 'T_flow_step_def') 
drop table T_flow_step_def
--- 辦法二
IF OBJECT_ID (N'bas_CardType') IS NULL
BEGIN --假如不存在該表,則停止創立
--drop table com_CodeRecord
--流程步驟定義表 
create table T_flow_step_def(
Step_no int not null, --流程步驟ID 
Step_name varchar(30) not null, --流程步驟稱號 
Step_des varchar(64) not null, --流程步驟描繪
Limit_time int not null, --時限
URL varchar(64) not null, --二級菜單鏈接 
備注 varchar(256) not null, 
)
---流程類別表
create table T_flow_type(
Flow_type_id char(3) not null, --流程類別號 
Flow_type_name varchar(64) not null, --流程類別稱號 
In_method_id char(3) not null, --投標方式代號 
In_choice_id char(3) not null, --項目選項代號 
備注 varchar(256) not null, 
)
---標段狀況表
create table T_sub_project(
Project_id varchar(32) not null, ---工程編號 
Sub_pro_id char(2) not null, -- 標段編號 
Flow_type_id char(3) not null, --流程類別號 
Sub_pro_name varchar(64) not null,--標段稱號(投標項目稱號) 
Usb_no varchar(64) not null, --密碼鎖號
In_method_id char(3) not null, --投標方式代號 
In_scope_id char(3) not null, --投標范圍代號 
In_choice_id char(3) not null, --項目選項代號 
Proj_type_id char(3) not null, --項目性質代號 
Engi_type_id char(1) not null, --工程性質代號
Pack_type char(1) not null, ---發包方式 
Grade_type_idv char(1) not null,--評分類別號
Flag_done char(1) not null,--完成標志 
Flag_forcebreak char(1) not null,--強迫中綴標志 
備注 varchar(256) not null,
)

--創立一個數據庫名為‘sql_test'

create database sql_test
go 
--翻開數據庫 sql_test
use sql_test
go
--樹立先生表
create table 先生
(先生編號 char(4) primary key, 先生名字 varchar(50)not null)
go
--修正先生表
alter table 先生 
add 班級編號 char(4) null --添加班級編號字段
-- (留意假如添加的字段不為空的話,是不能被添加的)
go
--樹立班級表
create table 班級
(班級編號 char(4) primary key ,班級稱號 varchar(50)not null)
go
--樹立課程表
create table 課程
(課程編號 char(4) primary key ,課程稱號 varchar(50) not null,開課日期 datetime )
go
--修正課程表
alter table 課程
add 課程代號 varchar(10) null --添加課程代號字段
go
alter table 課程
drop column 開課日期 --刪除開課日期字段
go
alter table 課程
alter column 課程稱號 varchar(20) not null --修正課程稱號字段
go
--樹立一個product_test_one 表,與下個表相似,只不過在constraint後面有個‘逗號'不影響執行
create table product_test_one
(
id char(10) not null, name varchar(20) null, price money default 20.5,quantity smallint null, constraint pk_id primary key clustered (id)
)
go
--樹立一個product_test_two 表
create table product_test_two
(
id char(10) not null, name varchar(20) null, price money default 20.5,quantity smallint null constraint pk_id2 primary key clustered (id)
)
go
--刪除表 pruduct_test_one表
drop table product_test_one
go
--樹立一個student表,使其中的 name 字段具有獨一性
create table student 
(
id char(8), name char(10) --表字段
constraint pk_id primary key (id), --添加一個主鍵約束 
constraint uk_name unique (name) --添加一個獨一性約束
)
go
--樹立一個student4表,同上 (留意:constraint 與constraint 之間一定要有逗號,否則出錯!)
create table student4 
(
id char(8), name char(10) --表字段
constraint pk_id4 primary key (id), constraint uk_name4 unique (name)
)
go
-- 刪除表student4
drop table student4
go
--樹立一個student3表,同上
create table student3
(
id char(8), name char(10), --表字段
constraint pk_id3 primary key (id) ,constraint uk_name3 unique (name)
)
go
--刪除表student3
drop table student3
go
--constraint 約束名 check(邏輯條件表達式)
--創立一個‘員工‘表,使其輸出的性別字段(sex)只能承受‘m'或則‘f',而不能承受其他數據
--並且為phone字段創立反省約束,限制只能輸出相似0108564712之類的數據,而不能隨意輸出其他數據
create table 員工
(
id char(5),name char(20),sex char(2),phone int
constraint pk_zid primary key (id), --此間一定要有‘逗號'分隔 ,定義主鍵約束
constraint chk_sex check (sex in (‘f‘,‘m‘) ),
constraint chk_phone check (phone like ‘(010) [0-9] [0-9] [0-9] [0-9] [0-9] [0-9] [0-9]‘)
)
go
--constraint 約束名 default 約束表達式 [for 字段名]
-- 創立一個表‘默許約束',為字段sex創立默許約束
create table 默許約束
(
id char(5) primary key ,sex varchar(2) constraint con_sex default ‘m‘ 
)
go
--修正‘默許約束'表
alter table 默許約束
add name varchar(10)null constraint con_name default ‘你好寶貝‘ --添加一個字段為‘name',默許值為‘你好寶貝'
go
--往班級表裡添加8條記載
insert into 班級 values(‘bj01‘,‘一班‘)
insert into 班級 values(‘bj02‘,‘二班‘)
insert into 班級 values(‘bj03‘,‘三班‘)
insert into 班級 values(‘bj04‘,‘四班‘)
insert into 班級 values(‘bj05‘,‘五班‘)
insert into 班級 values(‘bj06‘,‘六班‘)
insert into 班級 values(‘bj07‘,‘七班‘)
insert into 班級 values(‘bj08‘,‘八班‘)
go
--顯示班級所以記載
select * from 班級
go
--刪除班級表裡班級編號大於bj06的記載
delete from 班級 where 班級編號>‘bj06‘
go
--顯示班級所以記載
select * from 班級
go
--向先生表裡添加記載
insert into 先生 values(‘xs01‘,‘one‘,‘bj01‘)
insert into 先生 values(‘xs02‘,‘two‘,‘bj01‘)
insert into 先生 values(‘xs03‘,‘three‘,‘bj01‘)
insert into 先生 values(‘xs04‘,‘four‘,‘bj02‘)
insert into 先生 values(‘xs05‘,‘five‘,‘bj03‘)
insert into 先生 values(‘xs06‘,‘six‘,‘bj02‘)
insert into 先生 values(‘xs07‘,‘seven‘,‘bj04‘)
insert into 先生 values(‘xs08‘,‘eight‘,‘bj03‘)
insert into 先生 values(‘xs09‘,‘nine‘,‘bj04‘)
insert into 先生 values(‘xs10‘,‘ten‘,‘bj05‘)
insert into 先生 values(‘xs11‘,‘eleven‘,‘bj06‘)
insert into 先生 values(‘xs12‘,‘twleve‘,‘bj06‘)
go
--顯示先生一切的記載
select * from 先生
go
--銜接查詢
select * from 先生,班級 where 先生.班級編號=班級.班級編號
go
--以下效果同上一條相反
--選擇的銜接查詢
select 先生.先生編號,班級.班級編號, 先生.先生名字,班級.班級稱號 from 先生,班級 where 先生.班級編號=班級.班級編號
go
--以下效果同上一條相反
--查詢一班的先生
select* from 先生 where 班級編號 in(select 班級編號 from 班級 where 班級編號=‘bj01‘)
go
--與下面一條查詢語句一樣功用
select a.先生編號,a.先生名字,a.班級編號 from 先生 as a ,班級 as b where a.班級編號=b.班級編號 and b.班級編號=‘bj01‘
go
--統計一班先生人數
select count(先生編號)as 先生統計 from 先生 
where 班級編號 in(select 班級編號 from 班級 where 班級編號=‘bj01‘)
go
--group的用法和count()函數的用法
--統計一班先生人數,並顯示先生的名字和所在班級
select count(先生編號)as 先生統計, 先生名字,班級編號 from 先生 
where 班級編號 in(select 班級編號 from 班級 where 班級編號=‘bj01‘)
group by 班級編號,先生名字
go

以上所述是給大家引見的SqlServer編寫數據庫表的操作方式(建庫、建表、修正語句),希望對大家有所協助,假如大家有任何疑問請給我留言,會及時回復大家的。在此也十分感激大家對網站的支持!

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved