annotate Data/Create Scripts/MsSql.sql @ 5:f7d63a092920

Исправлено условие Where в тех случаях, когда репозитарий не является генериком
author cin
date Tue, 10 Mar 2015 16:02:11 +0300
parents f990fcb411a9
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
1 --CREATE DATABASE BLToolkitData ON PRIMARY
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
2 --(NAME=N'BLToolkitTest', FILENAME=N'C:\Data\MSSQL.1\MSSQL\DATA\BLToolkitData.mdf', SIZE=3072KB, FILEGROWTH=1024KB)
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
3 --LOG ON
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
4 --(NAME=N'BLToolkitTest_log', FILENAME=N'C:\Data\MSSQL.1\MSSQL\DATA\BLToolkitData_log.ldf', SIZE=1024KB, FILEGROWTH=10%)
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
5 --GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
6
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
7 IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID('Doctor') AND type in (N'U'))
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
8 BEGIN DROP TABLE Doctor END
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
9
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
10 IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID('Patient') AND type in (N'U'))
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
11 BEGIN DROP TABLE Patient END
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
12
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
13 -- Person Table
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
14
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
15 IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID('Person') AND type in (N'U'))
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
16 BEGIN DROP TABLE Person END
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
17
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
18 CREATE TABLE Person
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
19 (
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
20 PersonID int NOT NULL IDENTITY(1,1) CONSTRAINT PK_Person PRIMARY KEY CLUSTERED,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
21 FirstName nvarchar(50) NOT NULL,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
22 LastName nvarchar(50) NOT NULL,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
23 MiddleName nvarchar(50) NULL,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
24 Gender char(1) NOT NULL CONSTRAINT CK_Person_Gender CHECK (Gender in ('M', 'F', 'U', 'O'))
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
25 )
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
26 ON [PRIMARY]
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
27 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
28
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
29 INSERT INTO Person (FirstName, LastName, Gender) VALUES ('John', 'Pupkin', 'M')
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
30 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
31 INSERT INTO Person (FirstName, LastName, Gender) VALUES ('Tester', 'Testerson', 'M')
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
32 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
33
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
34 -- Doctor Table Extension
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
35
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
36 CREATE TABLE Doctor
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
37 (
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
38 PersonID int NOT NULL
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
39 CONSTRAINT PK_Doctor PRIMARY KEY CLUSTERED
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
40 CONSTRAINT FK_Doctor_Person FOREIGN KEY
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
41 REFERENCES Person ([PersonID])
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
42 ON UPDATE CASCADE
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
43 ON DELETE CASCADE,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
44 Taxonomy nvarchar(50) NOT NULL
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
45 )
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
46 ON [PRIMARY]
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
47 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
48
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
49 INSERT INTO Doctor (PersonID, Taxonomy) VALUES (1, 'Psychiatry')
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
50 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
51
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
52 -- Patient Table Extension
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
53
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
54 CREATE TABLE Patient
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
55 (
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
56 PersonID int NOT NULL
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
57 CONSTRAINT PK_Patient PRIMARY KEY CLUSTERED
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
58 CONSTRAINT FK_Patient_Person FOREIGN KEY
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
59 REFERENCES Person ([PersonID])
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
60 ON UPDATE CASCADE
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
61 ON DELETE CASCADE,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
62 Diagnosis nvarchar(256) NOT NULL
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
63 )
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
64 ON [PRIMARY]
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
65 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
66
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
67 INSERT INTO Patient (PersonID, Diagnosis) VALUES (2, 'Hallucination with Paranoid Bugs'' Delirium of Persecution')
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
68 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
69
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
70 -- Person_SelectByKey
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
71
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
72 IF EXISTS (SELECT * FROM sys.objects WHERE type = 'P' AND name = 'Person_SelectByKey')
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
73 BEGIN DROP Procedure Person_SelectByKey
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
74 END
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
75 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
76
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
77 CREATE Procedure Person_SelectByKey
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
78 @id int
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
79 AS
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
80
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
81 SELECT * FROM Person WHERE PersonID = @id
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
82
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
83 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
84
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
85 GRANT EXEC ON Person_SelectByKey TO PUBLIC
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
86 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
87
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
88 -- Person_SelectAll
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
89
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
90 IF EXISTS (SELECT * FROM sys.objects WHERE type = 'P' AND name = 'Person_SelectAll')
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
91 BEGIN DROP Procedure Person_SelectAll END
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
92 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
93
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
94 CREATE Procedure Person_SelectAll
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
95 AS
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
96
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
97 SELECT * FROM Person
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
98
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
99 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
100
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
101 GRANT EXEC ON Person_SelectAll TO PUBLIC
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
102 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
103
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
104 -- Person_SelectByName
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
105
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
106 IF EXISTS (SELECT * FROM sys.objects WHERE type = 'P' AND name = 'Person_SelectByName')
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
107 BEGIN DROP Procedure Person_SelectByName END
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
108 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
109
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
110 CREATE Procedure Person_SelectByName
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
111 @firstName nvarchar(50),
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
112 @lastName nvarchar(50)
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
113 AS
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
114
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
115 SELECT
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
116 *
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
117 FROM
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
118 Person
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
119 WHERE
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
120 FirstName = @firstName AND LastName = @lastName
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
121
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
122 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
123
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
124 GRANT EXEC ON Person_SelectByName TO PUBLIC
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
125 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
126
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
127 -- Person_SelectListByName
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
128
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
129 IF EXISTS (SELECT * FROM sys.objects WHERE type = 'P' AND name = 'Person_SelectListByName')
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
130 BEGIN DROP Procedure Person_SelectListByName
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
131 END
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
132 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
133
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
134 CREATE Procedure Person_SelectListByName
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
135 @firstName nvarchar(50),
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
136 @lastName nvarchar(50)
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
137 AS
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
138
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
139 SELECT
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
140 *
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
141 FROM
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
142 Person
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
143 WHERE
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
144 FirstName like @firstName AND LastName like @lastName
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
145
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
146 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
147
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
148 GRANT EXEC ON Person_SelectByName TO PUBLIC
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
149 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
150
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
151 -- Person_Insert
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
152
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
153 IF EXISTS (SELECT * FROM sys.objects WHERE type = 'P' AND name = 'Person_Insert')
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
154 BEGIN DROP Procedure Person_Insert END
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
155 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
156
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
157 CREATE Procedure Person_Insert
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
158 @FirstName nvarchar(50),
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
159 @LastName nvarchar(50),
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
160 @MiddleName nvarchar(50),
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
161 @Gender char(1)
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
162 AS
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
163
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
164 INSERT INTO Person
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
165 ( LastName, FirstName, MiddleName, Gender)
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
166 VALUES
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
167 (@LastName, @FirstName, @MiddleName, @Gender)
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
168
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
169 SELECT Cast(SCOPE_IDENTITY() as int) PersonID
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
170
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
171 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
172
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
173 GRANT EXEC ON Person_Insert TO PUBLIC
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
174 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
175
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
176 -- Person_Insert_OutputParameter
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
177
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
178 IF EXISTS (SELECT * FROM sys.objects WHERE type = 'P' AND name = 'Person_Insert_OutputParameter')
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
179 BEGIN DROP Procedure Person_Insert_OutputParameter END
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
180 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
181
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
182 CREATE Procedure Person_Insert_OutputParameter
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
183 @FirstName nvarchar(50),
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
184 @LastName nvarchar(50),
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
185 @MiddleName nvarchar(50),
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
186 @Gender char(1),
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
187 @PersonID int output
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
188 AS
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
189
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
190 INSERT INTO Person
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
191 ( LastName, FirstName, MiddleName, Gender)
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
192 VALUES
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
193 (@LastName, @FirstName, @MiddleName, @Gender)
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
194
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
195 SET @PersonID = Cast(SCOPE_IDENTITY() as int)
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
196
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
197 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
198
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
199 GRANT EXEC ON Person_Insert_OutputParameter TO PUBLIC
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
200 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
201
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
202 -- Person_Update
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
203
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
204 IF EXISTS (SELECT * FROM sys.objects WHERE type = 'P' AND name = 'Person_Update')
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
205 BEGIN DROP Procedure Person_Update END
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
206 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
207
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
208 CREATE Procedure Person_Update
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
209 @PersonID int,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
210 @FirstName nvarchar(50),
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
211 @LastName nvarchar(50),
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
212 @MiddleName nvarchar(50),
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
213 @Gender char(1)
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
214 AS
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
215
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
216 UPDATE
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
217 Person
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
218 SET
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
219 LastName = @LastName,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
220 FirstName = @FirstName,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
221 MiddleName = @MiddleName,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
222 Gender = @Gender
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
223 WHERE
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
224 PersonID = @PersonID
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
225
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
226 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
227
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
228 GRANT EXEC ON Person_Update TO PUBLIC
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
229 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
230
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
231 -- Person_Delete
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
232
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
233 IF EXISTS (SELECT * FROM sys.objects WHERE type = 'P' AND name = 'Person_Delete')
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
234 BEGIN DROP Procedure Person_Delete END
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
235 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
236
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
237 CREATE Procedure Person_Delete
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
238 @PersonID int
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
239 AS
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
240
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
241 DELETE FROM Person WHERE PersonID = @PersonID
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
242
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
243 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
244
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
245 GRANT EXEC ON Person_Delete TO PUBLIC
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
246 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
247
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
248 -- Patient_SelectAll
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
249
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
250 IF EXISTS (SELECT * FROM sys.objects WHERE type = 'P' AND name = 'Patient_SelectAll')
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
251 BEGIN DROP Procedure Patient_SelectAll END
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
252 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
253
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
254 CREATE Procedure Patient_SelectAll
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
255 AS
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
256
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
257 SELECT
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
258 Person.*, Patient.Diagnosis
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
259 FROM
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
260 Patient, Person
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
261 WHERE
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
262 Patient.PersonID = Person.PersonID
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
263
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
264 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
265
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
266 GRANT EXEC ON Patient_SelectAll TO PUBLIC
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
267 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
268
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
269 -- Patient_SelectByName
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
270
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
271 IF EXISTS (SELECT * FROM sys.objects WHERE type = 'P' AND name = 'Patient_SelectByName')
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
272 BEGIN DROP Procedure Patient_SelectByName END
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
273 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
274
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
275 CREATE Procedure Patient_SelectByName
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
276 @firstName nvarchar(50),
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
277 @lastName nvarchar(50)
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
278 AS
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
279
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
280 SELECT
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
281 Person.*, Patient.Diagnosis
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
282 FROM
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
283 Patient, Person
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
284 WHERE
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
285 Patient.PersonID = Person.PersonID
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
286 AND FirstName = @firstName AND LastName = @lastName
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
287
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
288 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
289
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
290 GRANT EXEC ON Person_SelectByName TO PUBLIC
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
291 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
292
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
293 -- BinaryData Table
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
294
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
295 IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID('BinaryData') AND type in (N'U'))
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
296 BEGIN DROP TABLE BinaryData END
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
297
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
298 CREATE TABLE BinaryData
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
299 (
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
300 BinaryDataID int NOT NULL IDENTITY(1,1) CONSTRAINT PK_BinaryData PRIMARY KEY CLUSTERED,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
301 Stamp timestamp NOT NULL,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
302 Data varbinary(1024) NOT NULL)
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
303 ON [PRIMARY]
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
304 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
305
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
306 -- OutRefTest
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
307
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
308 IF EXISTS (SELECT * FROM sys.objects WHERE type = 'P' AND name = 'OutRefTest')
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
309 BEGIN DROP Procedure OutRefTest END
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
310 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
311
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
312 CREATE Procedure OutRefTest
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
313 @ID int,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
314 @outputID int output,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
315 @inputOutputID int output,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
316 @str varchar(50),
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
317 @outputStr varchar(50) output,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
318 @inputOutputStr varchar(50) output
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
319 AS
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
320
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
321 SET @outputID = @ID
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
322 SET @inputOutputID = @ID + @inputOutputID
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
323 SET @outputStr = @str
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
324 SET @inputOutputStr = @str + @inputOutputStr
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
325
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
326 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
327
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
328 -- OutRefEnumTest
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
329
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
330 IF EXISTS (SELECT * FROM sys.objects WHERE type = 'P' AND name = 'OutRefEnumTest')
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
331 BEGIN DROP Procedure OutRefEnumTest END
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
332 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
333
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
334 CREATE Procedure OutRefEnumTest
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
335 @str varchar(50),
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
336 @outputStr varchar(50) output,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
337 @inputOutputStr varchar(50) output
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
338 AS
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
339
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
340 SET @outputStr = @str
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
341 SET @inputOutputStr = @str + @inputOutputStr
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
342
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
343 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
344
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
345 -- ExecuteScalarTest
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
346
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
347 IF EXISTS (SELECT * FROM sys.objects WHERE type = 'P' AND name = 'Scalar_DataReader')
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
348 BEGIN DROP Procedure Scalar_DataReader END
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
349 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
350
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
351 CREATE Procedure Scalar_DataReader
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
352 AS
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
353 SELECT Cast(12345 as int) AS intField, Cast('54321' as varchar(50)) AS stringField
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
354
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
355 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
356
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
357 IF EXISTS (SELECT * FROM sys.objects WHERE type = 'P' AND name = 'Scalar_OutputParameter')
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
358 BEGIN DROP Procedure Scalar_OutputParameter END
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
359 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
360
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
361 CREATE Procedure Scalar_OutputParameter
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
362 @outputInt int = 0 output,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
363 @outputString varchar(50) = '' output
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
364 AS
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
365 BEGIN
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
366 SET @outputInt = 12345
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
367 SET @outputString = '54321'
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
368 END
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
369
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
370 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
371
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
372 IF EXISTS (SELECT * FROM sys.objects WHERE type in (N'FN', N'IF', N'TF', N'FS', N'FT') AND name = 'Scalar_ReturnParameter')
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
373 BEGIN DROP Function Scalar_ReturnParameter END
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
374 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
375
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
376 CREATE Function Scalar_ReturnParameter()
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
377 RETURNS int
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
378 AS
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
379 BEGIN
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
380 RETURN 12345
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
381 END
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
382
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
383 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
384
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
385 IF EXISTS (SELECT * FROM sys.objects WHERE type ='P' AND name = 'Scalar_ReturnParameterWithObject')
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
386 BEGIN DROP Procedure Scalar_ReturnParameterWithObject END
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
387 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
388
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
389 CREATE Procedure Scalar_ReturnParameterWithObject
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
390 @id int
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
391 AS
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
392 BEGIN
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
393 SELECT * FROM Person WHERE PersonID = @id
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
394 RETURN @id
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
395 END
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
396
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
397 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
398
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
399 -- Data Types test
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
400
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
401 IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID('DataTypeTest') AND type in (N'U'))
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
402 BEGIN DROP TABLE DataTypeTest END
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
403 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
404
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
405 CREATE TABLE DataTypeTest
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
406 (
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
407 DataTypeID int NOT NULL IDENTITY(1,1) CONSTRAINT PK_DataType PRIMARY KEY CLUSTERED,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
408 Binary_ binary(50) NULL,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
409 Boolean_ bit NULL,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
410 Byte_ tinyint NULL,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
411 Bytes_ varbinary(50) NULL,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
412 Char_ char(1) NULL,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
413 DateTime_ datetime NULL,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
414 Decimal_ decimal(20,2) NULL,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
415 Double_ float NULL,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
416 Guid_ uniqueidentifier NULL,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
417 Int16_ smallint NULL,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
418 Int32_ int NULL,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
419 Int64_ bigint NULL,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
420 Money_ money NULL,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
421 SByte_ tinyint NULL,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
422 Single_ real NULL,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
423 Stream_ varbinary(50) NULL,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
424 String_ nvarchar(50) NULL,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
425 UInt16_ smallint NULL,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
426 UInt32_ int NULL,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
427 UInt64_ bigint NULL,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
428 Xml_ xml NULL
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
429 ) ON [PRIMARY]
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
430 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
431
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
432 INSERT INTO DataTypeTest
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
433 (Binary_, Boolean_, Byte_, Bytes_, Char_, DateTime_, Decimal_,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
434 Double_, Guid_, Int16_, Int32_, Int64_, Money_, SByte_,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
435 Single_, Stream_, String_, UInt16_, UInt32_, UInt64_, Xml_)
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
436 VALUES
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
437 ( NULL, NULL, NULL, NULL, NULL, NULL, NULL,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
438 NULL, NULL, NULL, NULL, NULL, NULL, NULL,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
439 NULL, NULL, NULL, NULL, NULL, NULL, NULL)
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
440 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
441
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
442 INSERT INTO DataTypeTest
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
443 (Binary_, Boolean_, Byte_, Bytes_, Char_, DateTime_, Decimal_,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
444 Double_, Guid_, Int16_, Int32_, Int64_, Money_, SByte_,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
445 Single_, Stream_, String_, UInt16_, UInt32_, UInt64_,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
446 Xml_)
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
447 VALUES
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
448 (NewID(), 1, 255, NewID(), 'B', GetDate(), 12345.67,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
449 1234.567, NewID(), 32767, 32768, 1000000, 12.3456, 127,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
450 1234.123, NewID(), 'string', 32767, 32768, 200000000,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
451 '<root><element strattr="strvalue" intattr="12345"/></root>')
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
452 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
453
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
454 -- SKIP Sql2005 BEGIN
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
455 --
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
456 -- Arrays
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
457 --
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
458 IF EXISTS (SELECT * FROM sys.objects WHERE type = 'P' AND name = 'ArrayTest')
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
459 BEGIN DROP PROCEDURE ArrayTest END
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
460 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
461
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
462 --IF EXISTS (SELECT * FROM sys.objects WHERE type = 'T' AND name = 'IntArray')
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
463 --BEGIN
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
464 DROP TYPE IntArray
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
465 --END
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
466 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
467
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
468 CREATE TYPE IntArray AS TABLE
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
469 (
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
470 Num int NULL
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
471 )
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
472 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
473
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
474 CREATE PROCEDURE ArrayTest
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
475 @InputIntArray IntArray READONLY
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
476 AS
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
477 BEGIN
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
478 SELECT Num * 2 FROM @InputIntArray;
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
479 END
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
480 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
481 -- SKIP Sql2005 END
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
482
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
483 DROP FUNCTION GetParentByID
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
484 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
485
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
486 DROP TABLE Parent
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
487 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
488 DROP TABLE Child
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
489 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
490 DROP TABLE GrandChild
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
491 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
492
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
493 CREATE TABLE Parent (ParentID int, Value1 int)
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
494 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
495 CREATE TABLE Child (ParentID int, ChildID int)
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
496 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
497 CREATE TABLE GrandChild (ParentID int, ChildID int, GrandChildID int)
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
498 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
499
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
500 CREATE FUNCTION GetParentByID(@id int)
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
501 RETURNS TABLE
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
502 AS
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
503 RETURN
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
504 (
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
505 SELECT * FROM Parent WHERE ParentID = @id
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
506 )
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
507 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
508
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
509 IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID('LinqDataTypes') AND type in (N'U'))
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
510 BEGIN DROP TABLE LinqDataTypes END
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
511 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
512
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
513 -- SKIP Sql2005 BEGIN
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
514 CREATE TABLE LinqDataTypes
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
515 (
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
516 ID int,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
517 MoneyValue decimal(10,4),
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
518 DateTimeValue datetime,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
519 DateTimeValue2 datetime2,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
520 BoolValue bit,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
521 GuidValue uniqueidentifier,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
522 BinaryValue varbinary(5000),
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
523 SmallIntValue smallint,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
524 IntValue int NULL,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
525 BigIntValue bigint NULL
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
526 )
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
527 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
528 -- SKIP Sql2005 END
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
529
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
530 -- SKIP Sql2008 BEGIN
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
531 -- SKIP Sql2012 BEGIN
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
532 CREATE TABLE LinqDataTypes
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
533 (
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
534 ID int,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
535 MoneyValue decimal(10,4),
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
536 DateTimeValue datetime,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
537 DateTimeValue2 datetime,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
538 BoolValue bit,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
539 GuidValue uniqueidentifier,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
540 BinaryValue varbinary(5000) NULL,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
541 SmallIntValue smallint,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
542 IntValue int NULL,
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
543 BigIntValue bigint NULL
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
544 )
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
545 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
546 -- SKIP Sql2012 END
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
547 -- SKIP Sql2008 END
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
548
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
549 DROP TABLE TestIdentity
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
550 GO
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
551
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
552 CREATE TABLE TestIdentity (
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
553 ID int NOT NULL IDENTITY(1,1) CONSTRAINT PK_TestIdentity PRIMARY KEY CLUSTERED
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
554 )
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
555 GO