温馨提示:代码在线浏览功能只能做为源码浏览参考,不能展示项目的全部,如果想更进一步了解该代码请下载:多功能在线考试系统源码
当前文件路径:OnLineExam/DB_51aspx/MyOnLineExam.sql

1SET ANSI_NULLS ON 2
GO 3
SET QUOTED_IDENTIFIER ON 4
GO 5
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Users]') AND type in (N'U')) 6
BEGIN 7
--51aspx.com 8
CREATE TABLE [dbo].[Users]( 9
[UserID] [varchar](20) NOT NULL, 10
[UserName] [varchar](20) NOT NULL, 11
[UserPwd] [varchar](20) NOT NULL, 12
[UserPower] [int] NOT NULL, 13
CONSTRAINT [PK_Users] PRIMARY KEY CLUSTERED 14
( 15
[UserID] ASC 16
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] 17
) ON [PRIMARY] 18
END 19
GO 20
SET ANSI_NULLS ON 21
GO 22
SET QUOTED_IDENTIFIER ON 23
GO 24
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Score]') AND type in (N'U')) 25
BEGIN 26
CREATE TABLE [dbo].[Score]( 27
[ID] [int] IDENTITY(1,1) NOT NULL, 28
[UserID] [varchar](20) NOT NULL, 29
[PaperID] [int] NOT NULL, 30
[Score] [int] NOT NULL, 31
[ExamTime] [datetime] NOT NULL CONSTRAINT [DF_Score_ExamTime] DEFAULT (getdate()), 32
CONSTRAINT [PK_Score] PRIMARY KEY CLUSTERED 33
( 34
[ID] ASC 35
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] 36
) ON [PRIMARY] 37
END 38
GO 39
SET ANSI_NULLS ON 40
GO 41
SET QUOTED_IDENTIFIER ON 42
GO 43
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[SingleProblem]') AND type in (N'U')) 44
BEGIN 45
CREATE TABLE [dbo].[SingleProblem]( 46
[ID] [int] IDENTITY(1,1) NOT NULL, 47
[CourseID] [int] NOT NULL, 48
[Title] [varchar](1000) NOT NULL, 49
[AnswerA] [varchar](500) NOT NULL, 50
[AnswerB] [varchar](500) NOT NULL, 51
[AnswerC] [varchar](500) NOT NULL, 52
[AnswerD] [varchar](500) NOT NULL, 53
[Answer] [varchar](2) NOT NULL, 54
CONSTRAINT [PK_SingleProblem] PRIMARY KEY CLUSTERED 55
( 56
[ID] ASC 57
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] 58
) ON [PRIMARY] 59
END 60
GO 61
SET ANSI_NULLS ON 62
GO 63
SET QUOTED_IDENTIFIER ON 64
GO 65
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Course]') AND type in (N'U')) 66
BEGIN 67
CREATE TABLE [dbo].[Course]( 68
[ID] [int] IDENTITY(1,1) NOT NULL, 69
[Name] [varchar](200) NOT NULL, 70
CONSTRAINT [PK_Course] PRIMARY KEY CLUSTERED 71
( 72
[ID] ASC 73
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] 74
) ON [PRIMARY] 75
END 76
GO 77
SET ANSI_NULLS ON 78
GO 79
SET QUOTED_IDENTIFIER ON 80
GO 81
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[JudgeProblem]') AND type in (N'U')) 82
BEGIN 83
CREATE TABLE [dbo].[JudgeProblem]( 84
[ID] [int] IDENTITY(1,1) NOT NULL, 85
[CourseID] [int] NOT NULL, 86
[Title] [varchar](1000) NOT NULL, 87
[Answer] [bit] NOT NULL, 88
CONSTRAINT [PK_JudgeProblem] PRIMARY KEY CLUSTERED 89
( 90
[ID] ASC 91
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] 92
) ON [PRIMARY] 93
END 94
GO 95
SET ANSI_NULLS ON 96
GO 97
SET QUOTED_IDENTIFIER ON 98
GO 99
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[MultiProblem]') AND type in (N'U')) 100
BEGIN 101
CREATE TABLE [dbo].[MultiProblem]( 102
[ID] [int] IDENTITY(1,1) NOT NULL, 103
[CourseID] [int] NOT NULL, 104
[Title] [varchar](1000) NOT NULL, 105
[AnswerA] [varchar](500) NOT NULL, 106
[AnswerB] [varchar](500) NOT NULL, 107
[AnswerC] [varchar](500) NOT NULL, 108
[AnswerD] [varchar](500) NOT NULL, 109
[Answer] [varchar](50) NOT NULL, 110
CONSTRAINT [PK_MultiProblem] PRIMARY KEY CLUSTERED 111
( 112
[ID] ASC 113
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] 114
) ON [PRIMARY] 115
END 116
GO 117
SET ANSI_NULLS ON 118
GO 119
SET QUOTED_IDENTIFIER ON 120
GO 121
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[FillBlankProblem]') AND type in (N'U')) 122
BEGIN 123
CREATE TABLE [dbo].[FillBlankProblem]( 124
[ID] [int] IDENTITY(1,1) NOT NULL, 125
[CourseID] [int] NOT NULL, 126
[FrontTitle] [varchar](500) NULL, 127
[BackTitle] [varchar](500) NULL, 128
[Answer] [varchar](200) NOT NULL, 129
CONSTRAINT [PK_FillBlankProblem] PRIMARY KEY CLUSTERED 130
( 131
[ID] ASC 132
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] 133
) ON [PRIMARY] 134
END 135
GO 136
SET ANSI_NULLS ON 137
GO 138
SET QUOTED_IDENTIFIER ON 139
GO 140
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Paper]') AND type in (N'U')) 141
BEGIN 142
CREATE TABLE [dbo].[Paper]( 143
[PaperID] [int] IDENTITY(1,1) NOT NULL, 144
[CourseID] [int] NOT NULL, 145
[PaperName] [varchar](200) NOT NULL, 146
[PaperState] [bit] NOT NULL, 147
CONSTRAINT [PK_Paper] PRIMARY KEY CLUSTERED 148
( 149
[PaperID] ASC 150
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] 151
) ON [PRIMARY] 152
END 153
GO 154
155
SET ANSI_NULLS ON 156
GO 157
158
SET QUOTED_IDENTIFIER ON 159
GO 160
161
CREATE TRIGGER [Tr_Paper_Insert] ON [dbo].[Paper] FOR INSERT AS SELECT @@IDENTITY 162
GO 163
SET ANSI_NULLS ON 164
GO 165
SET QUOTED_IDENTIFIER ON 166
GO 167
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Proc_PaperDetail]') AND type in (N'P', N'PC')) 168
BEGIN 169
EXEC dbo.sp_executesql @statement = N' 170
171
172
CREATE PROCEDURE [dbo].[Proc_PaperDetail] 173
(@PaperID [int], 174
@Type [varchar](10)) 175
AS 176
begin 177
declare @sql nvarchar(1000) 178
if @Type=''单选题'' 179
begin 180
set @sql=''select * from PaperDetail,SingleProblem where [Type]=''''单选题'''' and PaperDetail.TitleID=SingleProblem.ID and [PaperID]= ''+Cast(@PaperID AS varchar(10)) 181
exec sp_executesql @sql 182
end 183
else if @Type=''多选题'' 184
begin 185
set @sql=''select * from PaperDetail,MultiProblem where [Type]=''''多选题'''' and PaperDetail.TitleID=MultiProblem.ID and [PaperID]='' + +Cast(@PaperID AS varchar(10)) 186
exec sp_executesql @sql 187
end 188
else if @Type=''判断题'' 189
begin 190
set @sql=''select * from PaperDetail,JudgeProblem where [Type]=''''判断题'''' and PaperDetail.TitleID=JudgeProblem.ID and [PaperID]='' + +Cast(@PaperID AS varchar(10)) 191
exec sp_executesql @sql 192
end 193
else 194
begin 195
set @sql=''select * from PaperDetail,FillBlankProblem where [Type]=''''填空题'''' and PaperDetail.TitleID=FillBlankProblem.ID and [PaperID]='' + +Cast(@PaperID AS varchar(10)) 196
exec sp_executesql @sql 197
end 198
end 199
200
' 201
END 202
GO 203
SET ANSI_NULLS ON 204
GO 205
SET QUOTED_IDENTIFIER ON 206
GO 207
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[PaperDetail]') AND type in (N'U')) 208
BEGIN 209
CREATE TABLE [dbo].[PaperDetail]( 210
[ID] [int] IDENTITY(1,1) NOT NULL, 211
[PaperID] [int] NOT NULL, 212
[Type] [varchar](10) NOT NULL, 213
[TitleID] [int] NOT NULL, 214
[Mark] [int] NOT NULL, 215
CONSTRAINT [PK_ExamPaper] PRIMARY KEY CLUSTERED 216
( 217
[ID] ASC 218
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] 219
) ON [PRIMARY] 220
END 221
GO 222
SET ANSI_NULLS ON 223
GO 224
SET QUOTED_IDENTIFIER ON 225
GO 226
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Proc_UsersDetail]') AND type in (N'P', N'PC')) 227
BEGIN 228
EXEC dbo.sp_executesql @statement = N' 229
230
create PROCEDURE [dbo].[Proc_UsersDetail] 231
@UserID [varchar](50) 232
AS SELECT [dbo].[Users].[UserID], 233
[dbo].[Users].[UserName], 234
[dbo].[Users].[UserPwd], 235
[dbo].[Users].[UserPower] 236
237
238
FROM [dbo].[Users] 239
WHERE UserID=@UserID 240
' 241
END 242
GO 243
SET ANSI_NULLS ON 244
GO 245
SET QUOTED_IDENTIFIER ON 246
GO 247
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Proc_ScoreList]') AND type in (N'P', N'PC')) 248
BEGIN 249
EXEC dbo.sp_executesql @statement = N' 250
251
252
253
CREATE PROCEDURE [dbo].[Proc_ScoreList] 254
AS SELECT [dbo].[Users].[UserID], 255
[dbo].[Users].[UserName], 256
[dbo].[Score].[ID], 257
[dbo].[Score].[Score], 258
[dbo].[Score].[ExamTime], 259
[dbo].[Paper].[PaperName] 260
FROM [dbo].[Users],[dbo].[Score],[dbo].[Paper] 261
where Users.UserID=Score.UserID and Score.PaperID=Paper.PaperID 262
' 263
END 264
GO 265
SET ANSI_NULLS ON 266
GO 267
SET QUOTED_IDENTIFIER ON 268
GO 269
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Proc_UsersAdd]') AND type in (N'P', N'PC')) 270
BEGIN 271
EXEC dbo.sp_executesql @statement = N' 272
273
274
275
create PROCEDURE [dbo].[Proc_UsersAdd] 276
(@UserID [varchar](20), 277
@UserName [varchar](20), 278
@UserPwd [varchar](20), 279
@UserPower [int]) 280
281
AS INSERT INTO [MyOnLineExam].[dbo].[Users] 282
([UserID], 283
[UserName], 284
[UserPwd], 285
[UserPower]) 286
287
VALUES 288
( @UserID, 289
@UserName, 290
@UserPwd, 291
@UserPower) 292
293
' 294
END 295
GO 296
SET ANSI_NULLS ON 297
GO 298
SET QUOTED_IDENTIFIER ON 299
GO 300
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Proc_UsersDelete]') AND type in (N'P', N'PC')) 301
BEGIN 302
EXEC dbo.sp_executesql @statement = N' 303
304
create PROCEDURE [dbo].[Proc_UsersDelete] 305
(@UserID [varchar](20)) 306

