是如何使用SQL server来 编写 数据库 表的 操作方式
学习要点:
SQL之-建库、建表、建约束、关系SQL基本语句大全.txt举得起放得下叫举重,举得起放不下叫负重。头要有勇气,抬头要有底气。学习要加,骄傲要减,机会要乘,懒惰要除。人生三难题:思,相思,单相思。
SQL之-建库、建表、建约束、关系、部分T-sql语句
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
)
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
create table T_flow_step_def(
Step_no int not null,
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,
)
1 create database sql_test
2 go
3
4 use sql_test
5 go
6
7
8 create table 学生
9 (学生编号 char(4) primary key, 学生名字 varchar(50)not null)
10 go
11
12
13 alter table 学生
14 add 班级编号 char(4) null
15
16 go
17
18
19 create table 班级
20 (班级编号 char(4) primary key ,班级名称 varchar(50)not null)
21 go
22
23
24 create table 课程
25 (课程编号 char(4) primary key ,课程名称 varchar(50) not null,开课日期 datetime )
26 go
27
28
29 alter table 课程
30 add 课程代号 varchar(10) null
31 go
32
33 alter table 课程
34 drop column 开课日期
35 go
36
37 alter table 课程
38 alter column 课程名称 varchar(20) not null
39 go
40
41
42 create table product_test_one
43 (
44 id char(10) not null, name varchar(20) null, price money default 20.5,quantity smallint null, constraint pk_id primary key clustered (id)
45 )
46 go
47
48
49
50
51 create table product_test_two
52 (
53 id char(10) not null, name varchar(20) null, price money default 20.5,quantity smallint null constraint pk_id2 primary key clustered (id)
54 )
55 go
56
57
58 drop table product_test_one
59 go
60
61
62 create table student
63 (
64 id char(8), name char(10)
65 constraint pk_id primary key (id),
66 constraint uk_name unique (name)
67 )
68 go
69
70
71 create table student4
72 (
73 id char(8), name char(10)
74 constraint pk_id4 primary key (id), constraint uk_name4 unique (name)
75 )
76 go
77
78 drop table student4
79 go
80
81
82 create table student3
83 (
84 id char(8), name char(10),
85 constraint pk_id3 primary key (id) ,constraint uk_name3 unique (name)
86 )
87 go
88
89
90 drop table student3
91 go
92
93
94
95
96
97
98 create table 员工
99 (
100 id char(5),name char(20),sex char(2),phone int
101 constraint pk_zid primary key (id),
102 constraint chk_sex check (sex in (‘f‘,‘m‘) ),
103 constraint chk_phone check (phone like ‘(010) [0-9] [0-9] [0-9] [0-9] [0-9] [0-9] [0-9]‘)
104 )
105 go
106
107
108
109
110
111 create table 默认约束
112 (
113 id char(5) primary key ,sex varchar(2) constraint con_sex default ‘m‘
114 )
115 go
116
117
118 alter table 默认约束
119 add name varchar(10)null constraint con_name default ‘你好宝贝‘
120 go
121
122
123 insert into 班级 values(‘bj01‘,‘一班‘)
124 insert into 班级 values(‘bj02‘,‘二班‘)
125 insert into 班级 values(‘bj03‘,‘三班‘)
126 insert into 班级 values(‘bj04‘,‘四班‘)
127 insert into 班级 values(‘bj05‘,‘五班‘)
128 insert into 班级 values(‘bj06‘,‘六班‘)
129 insert into 班级 values(‘bj07‘,‘七班‘)
130 insert into 班级 values(‘bj08‘,‘八班‘)
131 go
132
133 select * from 班级
134 go
135
136 delete from 班级 where 班级编号>‘bj06‘
137 go
138
139 select * from 班级
140 go
141
142
143 insert into 学生 values(‘xs01‘,‘one‘,‘bj01‘)
144 insert into 学生 values(‘xs02‘,‘two‘,‘bj01‘)
145 insert into 学生 values(‘xs03‘,‘three‘,‘bj01‘)
146 insert into 学生 values(‘xs04‘,‘four‘,‘bj02‘)
147 insert into 学生 values(‘xs05‘,‘five‘,‘bj03‘)
148 insert into 学生 values(‘xs06‘,‘six‘,‘bj02‘)
149 insert into 学生 values(‘xs07‘,‘seven‘,‘bj04‘)
150 insert into 学生 values(‘xs08‘,‘eight‘,‘bj03‘)
151 insert into 学生 values(‘xs09‘,‘nine‘,‘bj04‘)
152 insert into 学生 values(‘xs10‘,‘ten‘,‘bj05‘)
153 insert into 学生 values(‘xs11‘,‘eleven‘,‘bj06‘)
154 insert into 学生 values(‘xs12‘,‘twleve‘,‘bj06‘)
155 go
156
157 select * from 学生
158 go
159
160
161 select * from 学生,班级 where 学生.班级编号=班级.班级编号
162 go
163
164
165
166
167 select 学生.学生编号,班级.班级编号, 学生.学生名字,班级.班级名称 from 学生,班级 where 学生.班级编号=班级.班级编号
168 go
169
170
171
172
173
174 select* from 学生 where 班级编号 in(select 班级编号 from 班级 where 班级编号=‘bj01‘)
175 go
176
177 select a.学生编号,a.学生名字,a.班级编号 from 学生 as a ,班级 as b where a.班级编号=b.班级编号 and b.班级编号=‘bj01‘
178 go
179
180
181 select count(学生编号)as 学生统计 from 学生
182 where 班级编号 in(select 班级编号 from 班级 where 班级编号=‘bj01‘)
183 go
184
185
186
187
188
189 select count(学生编号)as 学生统计, 学生名字,班级编号 from 学生
190 where 班级编号 in(select 班级编号 from 班级 where 班级编号=‘bj01‘)
191 group by 班级编号,学生名字
192 go