SQLQuerySAS.sql 43 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599
  1. USE [master]
  2. GO
  3. /****** Object: Database [SAS] Script Date: 12.12.2024 8:33:59 ******/
  4. CREATE DATABASE [SAS]
  5. CONTAINMENT = NONE
  6. ON PRIMARY
  7. ( NAME = N'SAS', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL16.IS4\MSSQL\DATA\SAS.mdf' , SIZE = 8192KB , MAXSIZE = UNLIMITED, FILEGROWTH = 10%)
  8. LOG ON
  9. ( NAME = N'SAS_log', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL16.IS4\MSSQL\DATA\SAS_log.ldf' , SIZE = 1024KB , MAXSIZE = 2048GB , FILEGROWTH = 10%)
  10. WITH CATALOG_COLLATION = DATABASE_DEFAULT, LEDGER = OFF
  11. GO
  12. ALTER DATABASE [SAS] SET COMPATIBILITY_LEVEL = 160
  13. GO
  14. IF (1 = FULLTEXTSERVICEPROPERTY('IsFullTextInstalled'))
  15. begin
  16. EXEC [SAS].[dbo].[sp_fulltext_database] @action = 'enable'
  17. end
  18. GO
  19. ALTER DATABASE [SAS] SET ANSI_NULL_DEFAULT OFF
  20. GO
  21. ALTER DATABASE [SAS] SET ANSI_NULLS OFF
  22. GO
  23. ALTER DATABASE [SAS] SET ANSI_PADDING OFF
  24. GO
  25. ALTER DATABASE [SAS] SET ANSI_WARNINGS OFF
  26. GO
  27. ALTER DATABASE [SAS] SET ARITHABORT OFF
  28. GO
  29. ALTER DATABASE [SAS] SET AUTO_CLOSE OFF
  30. GO
  31. ALTER DATABASE [SAS] SET AUTO_SHRINK OFF
  32. GO
  33. ALTER DATABASE [SAS] SET AUTO_UPDATE_STATISTICS ON
  34. GO
  35. ALTER DATABASE [SAS] SET CURSOR_CLOSE_ON_COMMIT OFF
  36. GO
  37. ALTER DATABASE [SAS] SET CURSOR_DEFAULT GLOBAL
  38. GO
  39. ALTER DATABASE [SAS] SET CONCAT_NULL_YIELDS_NULL OFF
  40. GO
  41. ALTER DATABASE [SAS] SET NUMERIC_ROUNDABORT OFF
  42. GO
  43. ALTER DATABASE [SAS] SET QUOTED_IDENTIFIER OFF
  44. GO
  45. ALTER DATABASE [SAS] SET RECURSIVE_TRIGGERS OFF
  46. GO
  47. ALTER DATABASE [SAS] SET DISABLE_BROKER
  48. GO
  49. ALTER DATABASE [SAS] SET AUTO_UPDATE_STATISTICS_ASYNC OFF
  50. GO
  51. ALTER DATABASE [SAS] SET DATE_CORRELATION_OPTIMIZATION OFF
  52. GO
  53. ALTER DATABASE [SAS] SET TRUSTWORTHY OFF
  54. GO
  55. ALTER DATABASE [SAS] SET ALLOW_SNAPSHOT_ISOLATION OFF
  56. GO
  57. ALTER DATABASE [SAS] SET PARAMETERIZATION SIMPLE
  58. GO
  59. ALTER DATABASE [SAS] SET READ_COMMITTED_SNAPSHOT OFF
  60. GO
  61. ALTER DATABASE [SAS] SET HONOR_BROKER_PRIORITY OFF
  62. GO
  63. ALTER DATABASE [SAS] SET RECOVERY SIMPLE
  64. GO
  65. ALTER DATABASE [SAS] SET MULTI_USER
  66. GO
  67. ALTER DATABASE [SAS] SET PAGE_VERIFY CHECKSUM
  68. GO
  69. ALTER DATABASE [SAS] SET DB_CHAINING OFF
  70. GO
  71. ALTER DATABASE [SAS] SET FILESTREAM( NON_TRANSACTED_ACCESS = OFF )
  72. GO
  73. ALTER DATABASE [SAS] SET TARGET_RECOVERY_TIME = 0 SECONDS
  74. GO
  75. ALTER DATABASE [SAS] SET DELAYED_DURABILITY = DISABLED
  76. GO
  77. ALTER DATABASE [SAS] SET ACCELERATED_DATABASE_RECOVERY = OFF
  78. GO
  79. EXEC sys.sp_db_vardecimal_storage_format N'SAS', N'ON'
  80. GO
  81. ALTER DATABASE [SAS] SET QUERY_STORE = ON
  82. GO
  83. ALTER DATABASE [SAS] SET QUERY_STORE (OPERATION_MODE = READ_WRITE, CLEANUP_POLICY = (STALE_QUERY_THRESHOLD_DAYS = 30), DATA_FLUSH_INTERVAL_SECONDS = 900, INTERVAL_LENGTH_MINUTES = 60, MAX_STORAGE_SIZE_MB = 1000, QUERY_CAPTURE_MODE = AUTO, SIZE_BASED_CLEANUP_MODE = AUTO, MAX_PLANS_PER_QUERY = 200, WAIT_STATS_CAPTURE_MODE = ON)
  84. GO
  85. USE [SAS]
  86. GO
  87. /****** Object: User [user2] Script Date: 12.12.2024 8:33:59 ******/
  88. CREATE USER [user2] FOR LOGIN [user2] WITH DEFAULT_SCHEMA=[dbo]
  89. GO
  90. /****** Object: User [user19] Script Date: 12.12.2024 8:33:59 ******/
  91. CREATE USER [user19] FOR LOGIN [user19] WITH DEFAULT_SCHEMA=[dbo]
  92. GO
  93. /****** Object: User [user18] Script Date: 12.12.2024 8:33:59 ******/
  94. CREATE USER [user18] FOR LOGIN [user18] WITH DEFAULT_SCHEMA=[db_datareader]
  95. GO
  96. /****** Object: DatabaseRole [developer] Script Date: 12.12.2024 8:33:59 ******/
  97. CREATE ROLE [developer]
  98. GO
  99. ALTER ROLE [db_owner] ADD MEMBER [user2]
  100. GO
  101. ALTER ROLE [db_owner] ADD MEMBER [user19]
  102. GO
  103. ALTER ROLE [developer] ADD MEMBER [user18]
  104. GO
  105. ALTER ROLE [db_owner] ADD MEMBER [user18]
  106. GO
  107. /****** Object: Table [dbo].[Brand] Script Date: 12.12.2024 8:33:59 ******/
  108. SET ANSI_NULLS ON
  109. GO
  110. SET QUOTED_IDENTIFIER ON
  111. GO
  112. CREATE TABLE [dbo].[Brand](
  113. [ID] [int] IDENTITY(1,1) NOT NULL,
  114. [Name] [varchar](35) NOT NULL,
  115. CONSTRAINT [PK_Brand] PRIMARY KEY CLUSTERED
  116. (
  117. [ID] ASC
  118. )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
  119. ) ON [PRIMARY]
  120. GO
  121. /****** Object: Table [dbo].[Category] Script Date: 12.12.2024 8:33:59 ******/
  122. SET ANSI_NULLS ON
  123. GO
  124. SET QUOTED_IDENTIFIER ON
  125. GO
  126. CREATE TABLE [dbo].[Category](
  127. [ID] [int] IDENTITY(1,1) NOT NULL,
  128. [Name] [varchar](3) NOT NULL,
  129. CONSTRAINT [PK_Category] PRIMARY KEY CLUSTERED
  130. (
  131. [ID] ASC
  132. )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
  133. ) ON [PRIMARY]
  134. GO
  135. /****** Object: Table [dbo].[Citizen] Script Date: 12.12.2024 8:33:59 ******/
  136. SET ANSI_NULLS ON
  137. GO
  138. SET QUOTED_IDENTIFIER ON
  139. GO
  140. CREATE TABLE [dbo].[Citizen](
  141. [ID] [int] IDENTITY(1,1) NOT NULL,
  142. [Surname] [varchar](30) NOT NULL,
  143. [Name] [varchar](25) NOT NULL,
  144. [Patronymic] [varchar](30) NULL,
  145. [Job] [int] NULL,
  146. [Email] [varchar](50) NULL,
  147. [Phone] [varchar](16) NULL,
  148. [PassSeries] [varchar](4) NOT NULL,
  149. [PassNumber] [varchar](6) NOT NULL,
  150. [MailIndex] [varchar](6) NULL,
  151. [RegistrationAddress] [varchar](150) NULL,
  152. [Photo] [int] NULL,
  153. [CurrentAddress] [varchar](150) NOT NULL,
  154. [Comment] [varchar](300) NULL,
  155. [Discription] [varchar](300) NULL,
  156. CONSTRAINT [PK_Citizen] PRIMARY KEY CLUSTERED
  157. (
  158. [ID] ASC
  159. )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
  160. ) ON [PRIMARY]
  161. GO
  162. /****** Object: Table [dbo].[Color] Script Date: 12.12.2024 8:33:59 ******/
  163. SET ANSI_NULLS ON
  164. GO
  165. SET QUOTED_IDENTIFIER ON
  166. GO
  167. CREATE TABLE [dbo].[Color](
  168. [ID] [int] IDENTITY(1,1) NOT NULL,
  169. [HEX] [nchar](7) NOT NULL,
  170. [NameRus] [varchar](35) NOT NULL,
  171. [DiscriptionRus] [varchar](35) NOT NULL,
  172. [NameEng] [varchar](35) NOT NULL,
  173. [DiscriptionEng] [varchar](35) NOT NULL,
  174. [IsMetallic] [bit] NOT NULL,
  175. CONSTRAINT [PK_Color] PRIMARY KEY CLUSTERED
  176. (
  177. [ID] ASC
  178. )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
  179. ) ON [PRIMARY]
  180. GO
  181. /****** Object: Table [dbo].[Company] Script Date: 12.12.2024 8:33:59 ******/
  182. SET ANSI_NULLS ON
  183. GO
  184. SET QUOTED_IDENTIFIER ON
  185. GO
  186. CREATE TABLE [dbo].[Company](
  187. [ID] [int] IDENTITY(1,1) NOT NULL,
  188. [Name] [varchar](50) NOT NULL,
  189. CONSTRAINT [PK_Company] PRIMARY KEY CLUSTERED
  190. (
  191. [ID] ASC
  192. )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
  193. ) ON [PRIMARY]
  194. GO
  195. /****** Object: Table [dbo].[DivisionGIBDD] Script Date: 12.12.2024 8:33:59 ******/
  196. SET ANSI_NULLS ON
  197. GO
  198. SET QUOTED_IDENTIFIER ON
  199. GO
  200. CREATE TABLE [dbo].[DivisionGIBDD](
  201. [ID] [int] IDENTITY(1,1) NOT NULL,
  202. [Name] [varchar](50) NOT NULL,
  203. CONSTRAINT [PK_DivisionGIBDD] PRIMARY KEY CLUSTERED
  204. (
  205. [ID] ASC
  206. )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
  207. ) ON [PRIMARY]
  208. GO
  209. /****** Object: Table [dbo].[DriveType] Script Date: 12.12.2024 8:33:59 ******/
  210. SET ANSI_NULLS ON
  211. GO
  212. SET QUOTED_IDENTIFIER ON
  213. GO
  214. CREATE TABLE [dbo].[DriveType](
  215. [ID] [int] IDENTITY(1,1) NOT NULL,
  216. [Name] [varchar](35) NOT NULL,
  217. CONSTRAINT [PK_DriveType] PRIMARY KEY CLUSTERED
  218. (
  219. [ID] ASC
  220. )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
  221. ) ON [PRIMARY]
  222. GO
  223. /****** Object: Table [dbo].[Employee] Script Date: 12.12.2024 8:33:59 ******/
  224. SET ANSI_NULLS ON
  225. GO
  226. SET QUOTED_IDENTIFIER ON
  227. GO
  228. CREATE TABLE [dbo].[Employee](
  229. [ID] [int] IDENTITY(1,1) NOT NULL,
  230. [Surname] [varchar](30) NOT NULL,
  231. [Name] [varchar](25) NOT NULL,
  232. [Patronymic] [varchar](30) NULL,
  233. [DivisionGIBDD] [int] NOT NULL,
  234. [Role] [int] NOT NULL,
  235. [Login] [varchar](50) NOT NULL,
  236. [Password] [varchar](256) NOT NULL,
  237. CONSTRAINT [PK_Employee] PRIMARY KEY CLUSTERED
  238. (
  239. [ID] ASC
  240. )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
  241. ) ON [PRIMARY]
  242. GO
  243. /****** Object: Table [dbo].[EngineType] Script Date: 12.12.2024 8:33:59 ******/
  244. SET ANSI_NULLS ON
  245. GO
  246. SET QUOTED_IDENTIFIER ON
  247. GO
  248. CREATE TABLE [dbo].[EngineType](
  249. [ID] [int] IDENTITY(1,1) NOT NULL,
  250. [NameRus] [varchar](35) NOT NULL,
  251. [NameEng] [varchar](35) NOT NULL,
  252. CONSTRAINT [PK_EngineType] PRIMARY KEY CLUSTERED
  253. (
  254. [ID] ASC
  255. )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
  256. ) ON [PRIMARY]
  257. GO
  258. /****** Object: Table [dbo].[Extension] Script Date: 12.12.2024 8:33:59 ******/
  259. SET ANSI_NULLS ON
  260. GO
  261. SET QUOTED_IDENTIFIER ON
  262. GO
  263. CREATE TABLE [dbo].[Extension](
  264. [ID] [int] IDENTITY(1,1) NOT NULL,
  265. [Name] [varchar](6) NOT NULL,
  266. CONSTRAINT [PK_Extension] PRIMARY KEY CLUSTERED
  267. (
  268. [ID] ASC
  269. )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
  270. ) ON [PRIMARY]
  271. GO
  272. /****** Object: Table [dbo].[File] Script Date: 12.12.2024 8:33:59 ******/
  273. SET ANSI_NULLS ON
  274. GO
  275. SET QUOTED_IDENTIFIER ON
  276. GO
  277. CREATE TABLE [dbo].[File](
  278. [ID] [int] IDENTITY(1,1) NOT NULL,
  279. [Extension] [int] NULL,
  280. [BinaryData] [varbinary](max) NOT NULL,
  281. [Name] [varchar](50) NOT NULL,
  282. CONSTRAINT [PK_File] PRIMARY KEY CLUSTERED
  283. (
  284. [ID] ASC
  285. )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
  286. ) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
  287. GO
  288. /****** Object: Table [dbo].[Job] Script Date: 12.12.2024 8:33:59 ******/
  289. SET ANSI_NULLS ON
  290. GO
  291. SET QUOTED_IDENTIFIER ON
  292. GO
  293. CREATE TABLE [dbo].[Job](
  294. [ID] [int] IDENTITY(1,1) NOT NULL,
  295. [Name] [varchar](50) NOT NULL,
  296. [Company] [int] NOT NULL,
  297. CONSTRAINT [PK_Job] PRIMARY KEY CLUSTERED
  298. (
  299. [ID] ASC
  300. )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
  301. ) ON [PRIMARY]
  302. GO
  303. /****** Object: Table [dbo].[License] Script Date: 12.12.2024 8:33:59 ******/
  304. SET ANSI_NULLS ON
  305. GO
  306. SET QUOTED_IDENTIFIER ON
  307. GO
  308. CREATE TABLE [dbo].[License](
  309. [ID] [int] IDENTITY(1,1) NOT NULL,
  310. [Citizen] [int] NOT NULL,
  311. [DateStart] [date] NOT NULL,
  312. [DiateFinish] [date] NOT NULL,
  313. [Series] [varchar](4) NOT NULL,
  314. [Number] [varchar](6) NOT NULL,
  315. CONSTRAINT [PK_License] PRIMARY KEY CLUSTERED
  316. (
  317. [ID] ASC
  318. )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
  319. ) ON [PRIMARY]
  320. GO
  321. /****** Object: Table [dbo].[LicenseCategory] Script Date: 12.12.2024 8:33:59 ******/
  322. SET ANSI_NULLS ON
  323. GO
  324. SET QUOTED_IDENTIFIER ON
  325. GO
  326. CREATE TABLE [dbo].[LicenseCategory](
  327. [ID] [int] IDENTITY(1,1) NOT NULL,
  328. [Category] [int] NOT NULL,
  329. [License] [int] NOT NULL,
  330. CONSTRAINT [PK_LicenseCategory] PRIMARY KEY CLUSTERED
  331. (
  332. [ID] ASC
  333. )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
  334. ) ON [PRIMARY]
  335. GO
  336. /****** Object: Table [dbo].[LoginAttempt] Script Date: 12.12.2024 8:33:59 ******/
  337. SET ANSI_NULLS ON
  338. GO
  339. SET QUOTED_IDENTIFIER ON
  340. GO
  341. CREATE TABLE [dbo].[LoginAttempt](
  342. [ID] [int] IDENTITY(1,1) NOT NULL,
  343. [Employee] [int] NOT NULL,
  344. [CreatedAt] [datetime2](7) NOT NULL,
  345. CONSTRAINT [PK_LoginAttempt] PRIMARY KEY CLUSTERED
  346. (
  347. [ID] ASC
  348. )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
  349. ) ON [PRIMARY]
  350. GO
  351. /****** Object: Table [dbo].[LoginBlock] Script Date: 12.12.2024 8:33:59 ******/
  352. SET ANSI_NULLS ON
  353. GO
  354. SET QUOTED_IDENTIFIER ON
  355. GO
  356. CREATE TABLE [dbo].[LoginBlock](
  357. [ID] [int] IDENTITY(1,1) NOT NULL,
  358. [Employee] [int] NOT NULL,
  359. [BlockedUntil] [datetime2](7) NOT NULL,
  360. CONSTRAINT [PK_LoginBlock] PRIMARY KEY CLUSTERED
  361. (
  362. [ID] ASC
  363. )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
  364. ) ON [PRIMARY]
  365. GO
  366. /****** Object: Table [dbo].[Model] Script Date: 12.12.2024 8:33:59 ******/
  367. SET ANSI_NULLS ON
  368. GO
  369. SET QUOTED_IDENTIFIER ON
  370. GO
  371. CREATE TABLE [dbo].[Model](
  372. [ID] [int] IDENTITY(1,1) NOT NULL,
  373. [Brand] [int] NOT NULL,
  374. [Name] [varchar](35) NOT NULL,
  375. CONSTRAINT [PK_Model] PRIMARY KEY CLUSTERED
  376. (
  377. [ID] ASC
  378. )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
  379. ) ON [PRIMARY]
  380. GO
  381. /****** Object: Table [dbo].[Region] Script Date: 12.12.2024 8:33:59 ******/
  382. SET ANSI_NULLS ON
  383. GO
  384. SET QUOTED_IDENTIFIER ON
  385. GO
  386. CREATE TABLE [dbo].[Region](
  387. [ID] [int] IDENTITY(1,1) NOT NULL,
  388. [NameRus] [varchar](50) NOT NULL,
  389. [NameEng] [varchar](50) NULL,
  390. [Number] [varchar](3) NOT NULL,
  391. [OKATO] [varchar](3) NULL,
  392. [ISO3166_2] [varchar](7) NULL,
  393. CONSTRAINT [PK_Region] PRIMARY KEY CLUSTERED
  394. (
  395. [ID] ASC
  396. )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
  397. ) ON [PRIMARY]
  398. GO
  399. /****** Object: Table [dbo].[RegionCode] Script Date: 12.12.2024 8:33:59 ******/
  400. SET ANSI_NULLS ON
  401. GO
  402. SET QUOTED_IDENTIFIER ON
  403. GO
  404. CREATE TABLE [dbo].[RegionCode](
  405. [ID] [int] IDENTITY(1,1) NOT NULL,
  406. [Region] [int] NOT NULL,
  407. [Code] [varchar](3) NOT NULL,
  408. CONSTRAINT [PK_RegionCode] PRIMARY KEY CLUSTERED
  409. (
  410. [ID] ASC
  411. )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
  412. ) ON [PRIMARY]
  413. GO
  414. /****** Object: Table [dbo].[Role] Script Date: 12.12.2024 8:33:59 ******/
  415. SET ANSI_NULLS ON
  416. GO
  417. SET QUOTED_IDENTIFIER ON
  418. GO
  419. CREATE TABLE [dbo].[Role](
  420. [ID] [int] IDENTITY(1,1) NOT NULL,
  421. [Name] [varchar](50) NOT NULL,
  422. CONSTRAINT [PK_Role] PRIMARY KEY CLUSTERED
  423. (
  424. [ID] ASC
  425. )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
  426. ) ON [PRIMARY]
  427. GO
  428. /****** Object: Table [dbo].[Transport] Script Date: 12.12.2024 8:33:59 ******/
  429. SET ANSI_NULLS ON
  430. GO
  431. SET QUOTED_IDENTIFIER ON
  432. GO
  433. CREATE TABLE [dbo].[Transport](
  434. [ID] [int] IDENTITY(1,1) NOT NULL,
  435. [Region] [int] NOT NULL,
  436. [VIN] [varchar](17) NOT NULL,
  437. [Category] [int] NOT NULL,
  438. [Color] [int] NOT NULL,
  439. [EngineType] [int] NOT NULL,
  440. [Model] [int] NOT NULL,
  441. [RelaseYear] [date] NOT NULL,
  442. [WeightKg] [int] NOT NULL,
  443. [DriveType] [int] NOT NULL,
  444. CONSTRAINT [PK_Transport] PRIMARY KEY CLUSTERED
  445. (
  446. [ID] ASC
  447. )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
  448. ) ON [PRIMARY]
  449. GO
  450. /****** Object: Table [dbo].[TransportOwnership] Script Date: 12.12.2024 8:33:59 ******/
  451. SET ANSI_NULLS ON
  452. GO
  453. SET QUOTED_IDENTIFIER ON
  454. GO
  455. CREATE TABLE [dbo].[TransportOwnership](
  456. [ID] [int] IDENTITY(1,1) NOT NULL,
  457. [Citizen] [int] NOT NULL,
  458. [Transport] [int] NOT NULL,
  459. [CreatedAt] [date] NOT NULL,
  460. CONSTRAINT [PK_TransportOwnership] PRIMARY KEY CLUSTERED
  461. (
  462. [ID] ASC
  463. )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
  464. ) ON [PRIMARY]
  465. GO
  466. /****** Object: Table [dbo].[TransportPhoto] Script Date: 12.12.2024 8:33:59 ******/
  467. SET ANSI_NULLS ON
  468. GO
  469. SET QUOTED_IDENTIFIER ON
  470. GO
  471. CREATE TABLE [dbo].[TransportPhoto](
  472. [ID] [int] IDENTITY(1,1) NOT NULL,
  473. [Transport] [int] NOT NULL,
  474. [Photo] [int] NOT NULL,
  475. CONSTRAINT [PK_TransportPhoto] PRIMARY KEY CLUSTERED
  476. (
  477. [ID] ASC
  478. )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
  479. ) ON [PRIMARY]
  480. GO
  481. ALTER TABLE [dbo].[Citizen] WITH CHECK ADD CONSTRAINT [FK_Citizen_File] FOREIGN KEY([Photo])
  482. REFERENCES [dbo].[File] ([ID])
  483. GO
  484. ALTER TABLE [dbo].[Citizen] CHECK CONSTRAINT [FK_Citizen_File]
  485. GO
  486. ALTER TABLE [dbo].[Citizen] WITH CHECK ADD CONSTRAINT [FK_Citizen_Job] FOREIGN KEY([Job])
  487. REFERENCES [dbo].[Job] ([ID])
  488. GO
  489. ALTER TABLE [dbo].[Citizen] CHECK CONSTRAINT [FK_Citizen_Job]
  490. GO
  491. ALTER TABLE [dbo].[Employee] WITH CHECK ADD CONSTRAINT [FK_Employee_DivisionGIBDD] FOREIGN KEY([DivisionGIBDD])
  492. REFERENCES [dbo].[DivisionGIBDD] ([ID])
  493. GO
  494. ALTER TABLE [dbo].[Employee] CHECK CONSTRAINT [FK_Employee_DivisionGIBDD]
  495. GO
  496. ALTER TABLE [dbo].[Employee] WITH CHECK ADD CONSTRAINT [FK_Employee_Role] FOREIGN KEY([Role])
  497. REFERENCES [dbo].[Role] ([ID])
  498. GO
  499. ALTER TABLE [dbo].[Employee] CHECK CONSTRAINT [FK_Employee_Role]
  500. GO
  501. ALTER TABLE [dbo].[File] WITH CHECK ADD CONSTRAINT [FK_File_Extension] FOREIGN KEY([Extension])
  502. REFERENCES [dbo].[Extension] ([ID])
  503. GO
  504. ALTER TABLE [dbo].[File] CHECK CONSTRAINT [FK_File_Extension]
  505. GO
  506. ALTER TABLE [dbo].[Job] WITH CHECK ADD CONSTRAINT [FK_Job_Company] FOREIGN KEY([Company])
  507. REFERENCES [dbo].[Company] ([ID])
  508. GO
  509. ALTER TABLE [dbo].[Job] CHECK CONSTRAINT [FK_Job_Company]
  510. GO
  511. ALTER TABLE [dbo].[License] WITH CHECK ADD CONSTRAINT [FK_License_License] FOREIGN KEY([Citizen])
  512. REFERENCES [dbo].[Citizen] ([ID])
  513. GO
  514. ALTER TABLE [dbo].[License] CHECK CONSTRAINT [FK_License_License]
  515. GO
  516. ALTER TABLE [dbo].[LicenseCategory] WITH CHECK ADD CONSTRAINT [FK_LicenseCategory_Category] FOREIGN KEY([Category])
  517. REFERENCES [dbo].[Category] ([ID])
  518. GO
  519. ALTER TABLE [dbo].[LicenseCategory] CHECK CONSTRAINT [FK_LicenseCategory_Category]
  520. GO
  521. ALTER TABLE [dbo].[LicenseCategory] WITH CHECK ADD CONSTRAINT [FK_LicenseCategory_License] FOREIGN KEY([License])
  522. REFERENCES [dbo].[License] ([ID])
  523. GO
  524. ALTER TABLE [dbo].[LicenseCategory] CHECK CONSTRAINT [FK_LicenseCategory_License]
  525. GO
  526. ALTER TABLE [dbo].[LoginAttempt] WITH CHECK ADD CONSTRAINT [FK_LoginAttempt_Employee] FOREIGN KEY([Employee])
  527. REFERENCES [dbo].[Employee] ([ID])
  528. GO
  529. ALTER TABLE [dbo].[LoginAttempt] CHECK CONSTRAINT [FK_LoginAttempt_Employee]
  530. GO
  531. ALTER TABLE [dbo].[LoginBlock] WITH CHECK ADD CONSTRAINT [FK_LoginBlock_Employee] FOREIGN KEY([Employee])
  532. REFERENCES [dbo].[Employee] ([ID])
  533. GO
  534. ALTER TABLE [dbo].[LoginBlock] CHECK CONSTRAINT [FK_LoginBlock_Employee]
  535. GO
  536. ALTER TABLE [dbo].[Model] WITH CHECK ADD CONSTRAINT [FK_Model_Brand] FOREIGN KEY([Brand])
  537. REFERENCES [dbo].[Brand] ([ID])
  538. GO
  539. ALTER TABLE [dbo].[Model] CHECK CONSTRAINT [FK_Model_Brand]
  540. GO
  541. ALTER TABLE [dbo].[RegionCode] WITH CHECK ADD CONSTRAINT [FK_RegionCode_Region] FOREIGN KEY([Region])
  542. REFERENCES [dbo].[Region] ([ID])
  543. GO
  544. ALTER TABLE [dbo].[RegionCode] CHECK CONSTRAINT [FK_RegionCode_Region]
  545. GO
  546. ALTER TABLE [dbo].[Transport] WITH CHECK ADD CONSTRAINT [FK_Transport_Category] FOREIGN KEY([Category])
  547. REFERENCES [dbo].[Category] ([ID])
  548. GO
  549. ALTER TABLE [dbo].[Transport] CHECK CONSTRAINT [FK_Transport_Category]
  550. GO
  551. ALTER TABLE [dbo].[Transport] WITH CHECK ADD CONSTRAINT [FK_Transport_Color] FOREIGN KEY([Color])
  552. REFERENCES [dbo].[Color] ([ID])
  553. GO
  554. ALTER TABLE [dbo].[Transport] CHECK CONSTRAINT [FK_Transport_Color]
  555. GO
  556. ALTER TABLE [dbo].[Transport] WITH CHECK ADD CONSTRAINT [FK_Transport_DriveType] FOREIGN KEY([DriveType])
  557. REFERENCES [dbo].[DriveType] ([ID])
  558. GO
  559. ALTER TABLE [dbo].[Transport] CHECK CONSTRAINT [FK_Transport_DriveType]
  560. GO
  561. ALTER TABLE [dbo].[Transport] WITH CHECK ADD CONSTRAINT [FK_Transport_EngineType] FOREIGN KEY([EngineType])
  562. REFERENCES [dbo].[EngineType] ([ID])
  563. GO
  564. ALTER TABLE [dbo].[Transport] CHECK CONSTRAINT [FK_Transport_EngineType]
  565. GO
  566. ALTER TABLE [dbo].[Transport] WITH CHECK ADD CONSTRAINT [FK_Transport_Model] FOREIGN KEY([Model])
  567. REFERENCES [dbo].[Model] ([ID])
  568. GO
  569. ALTER TABLE [dbo].[Transport] CHECK CONSTRAINT [FK_Transport_Model]
  570. GO
  571. ALTER TABLE [dbo].[Transport] WITH CHECK ADD CONSTRAINT [FK_Transport_Region] FOREIGN KEY([Region])
  572. REFERENCES [dbo].[Region] ([ID])
  573. GO
  574. ALTER TABLE [dbo].[Transport] CHECK CONSTRAINT [FK_Transport_Region]
  575. GO
  576. ALTER TABLE [dbo].[TransportOwnership] WITH CHECK ADD CONSTRAINT [FK_TransportOwnership_Citizen] FOREIGN KEY([Citizen])
  577. REFERENCES [dbo].[Citizen] ([ID])
  578. GO
  579. ALTER TABLE [dbo].[TransportOwnership] CHECK CONSTRAINT [FK_TransportOwnership_Citizen]
  580. GO
  581. ALTER TABLE [dbo].[TransportOwnership] WITH CHECK ADD CONSTRAINT [FK_TransportOwnership_Transport] FOREIGN KEY([Transport])
  582. REFERENCES [dbo].[Transport] ([ID])
  583. GO
  584. ALTER TABLE [dbo].[TransportOwnership] CHECK CONSTRAINT [FK_TransportOwnership_Transport]
  585. GO
  586. ALTER TABLE [dbo].[TransportPhoto] WITH CHECK ADD CONSTRAINT [FK_TransportPhoto_File] FOREIGN KEY([Photo])
  587. REFERENCES [dbo].[File] ([ID])
  588. GO
  589. ALTER TABLE [dbo].[TransportPhoto] CHECK CONSTRAINT [FK_TransportPhoto_File]
  590. GO
  591. ALTER TABLE [dbo].[TransportPhoto] WITH CHECK ADD CONSTRAINT [FK_TransportPhoto_Transport] FOREIGN KEY([Transport])
  592. REFERENCES [dbo].[Transport] ([ID])
  593. GO
  594. ALTER TABLE [dbo].[TransportPhoto] CHECK CONSTRAINT [FK_TransportPhoto_Transport]
  595. GO
  596. USE [master]
  597. GO
  598. ALTER DATABASE [SAS] SET READ_WRITE
  599. GO