Advertisement
Guest User

Untitled

a guest
Apr 27th, 2017
581
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.10 KB | None | 0 0
  1. USE [master]
  2. GO
  3. IF db_id('TPBD2e1147782') is not null DROP DATABASE [TPBD2e1147782]
  4. GO
  5.  
  6. CREATE DATABASE [TPBD2e1147782]
  7. CONTAINMENT = NONE
  8. ON PRIMARY
  9. ( NAME = N'TPBD2e1147782', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL12.SQLEXPRESS\MSSQL\DATA\TPBD2e1147782.mdf' , SIZE = 5120KB , FILEGROWTH = 10%)
  10. LOG ON
  11. ( NAME = N'TPBD2e1147782_log', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL12.SQLEXPRESS\MSSQL\DATA\TPBD2e1147782_log.ldf' , SIZE = 1024KB , FILEGROWTH = 10%)
  12. GO
  13. ALTER DATABASE [TPBD2e1147782] SET ANSI_NULL_DEFAULT OFF
  14. GO
  15. ALTER DATABASE [TPBD2e1147782] SET ANSI_NULLS OFF
  16. GO
  17. ALTER DATABASE [TPBD2e1147782] SET ANSI_PADDING OFF
  18. GO
  19. ALTER DATABASE [TPBD2e1147782] SET ANSI_WARNINGS OFF
  20. GO
  21. ALTER DATABASE [TPBD2e1147782] SET ARITHABORT OFF
  22. GO
  23. ALTER DATABASE [TPBD2e1147782] SET AUTO_CLOSE OFF
  24. GO
  25. ALTER DATABASE [TPBD2e1147782] SET AUTO_SHRINK OFF
  26. GO
  27. ALTER DATABASE [TPBD2e1147782] SET AUTO_CREATE_STATISTICS ON(INCREMENTAL = OFF)
  28. GO
  29. ALTER DATABASE [TPBD2e1147782] SET AUTO_UPDATE_STATISTICS ON
  30. GO
  31. ALTER DATABASE [TPBD2e1147782] SET CURSOR_CLOSE_ON_COMMIT OFF
  32. GO
  33. ALTER DATABASE [TPBD2e1147782] SET CURSOR_DEFAULT GLOBAL
  34. GO
  35. ALTER DATABASE [TPBD2e1147782] SET CONCAT_NULL_YIELDS_NULL OFF
  36. GO
  37. ALTER DATABASE [TPBD2e1147782] SET NUMERIC_ROUNDABORT OFF
  38. GO
  39. ALTER DATABASE [TPBD2e1147782] SET QUOTED_IDENTIFIER OFF
  40. GO
  41. ALTER DATABASE [TPBD2e1147782] SET RECURSIVE_TRIGGERS OFF
  42. GO
  43. ALTER DATABASE [TPBD2e1147782] SET DISABLE_BROKER
  44. GO
  45. ALTER DATABASE [TPBD2e1147782] SET AUTO_UPDATE_STATISTICS_ASYNC OFF
  46. GO
  47. ALTER DATABASE [TPBD2e1147782] SET DATE_CORRELATION_OPTIMIZATION OFF
  48. GO
  49. ALTER DATABASE [TPBD2e1147782] SET PARAMETERIZATION SIMPLE
  50. GO
  51. ALTER DATABASE [TPBD2e1147782] SET READ_COMMITTED_SNAPSHOT OFF
  52. GO
  53. ALTER DATABASE [TPBD2e1147782] SET READ_WRITE
  54. GO
  55. ALTER DATABASE [TPBD2e1147782] SET RECOVERY SIMPLE
  56. GO
  57. ALTER DATABASE [TPBD2e1147782] SET MULTI_USER
  58. GO
  59. ALTER DATABASE [TPBD2e1147782] SET PAGE_VERIFY CHECKSUM
  60. GO
  61. ALTER DATABASE [TPBD2e1147782] SET TARGET_RECOVERY_TIME = 0 SECONDS
  62. GO
  63. ALTER DATABASE [TPBD2e1147782] SET DELAYED_DURABILITY = DISABLED
  64. GO
  65. USE [TPBD2e1147782]
  66. GO
  67. IF NOT EXISTS (SELECT name FROM sys.filegroups WHERE is_default=1 AND name = N'PRIMARY') ALTER DATABASE [TPBD2e1147782] MODIFY FILEGROUP [PRIMARY] DEFAULT
  68. GO
  69.  
  70.  
  71. IF OBJECT_ID('dbo.Inventaire') IS NOT NULL DROP TABLE dbo.Inventaire;
  72. GO
  73. IF OBJECT_ID('dbo.Character_Class') IS NOT NULL DROP TABLE dbo.Character_Class;
  74. GO
  75. IF OBJECT_ID('dbo.Class') IS NOT NULL DROP TABLE dbo.Class;
  76. GO
  77. IF OBJECT_ID('dbo.Character') IS NOT NULL DROP TABLE dbo.Character;
  78. GO
  79. IF OBJECT_ID('dbo.EmailAddress') IS NOT NULL DROP TABLE dbo.EmailAddress;
  80. GO
  81. IF OBJECT_ID('dbo.Users') IS NOT NULL DROP TABLE dbo.Users;
  82. GO
  83.  
  84. USE [TPBD2e1147782]
  85. GO
  86.  
  87. CREATE TABLE dbo.Users (
  88. UserID INT NOT NULL IDENTITY(1, 1)
  89. CONSTRAINT PK_Users_UserID PRIMARY KEY,
  90. Name nvarchar(255) NOT NULL,
  91. Billing_Address nvarchar(255) NOT NULL,
  92. Country nvarchar(255) NOT NULL
  93. )
  94. GO
  95.  
  96. CREATE TABLE dbo.Character (
  97. CharacterID INT NOT NULL IDENTITY(1, 1),
  98. UserID INT NOT NULL
  99. CONSTRAINT FK_Character_UserID FOREIGN KEY (UserID)
  100. REFERENCES dbo.Users (UserID)
  101. ON DELETE CASCADE
  102. ON UPDATE CASCADE,
  103. CharacterName nvarchar(255) NOT NULL,
  104. CharacterLevel integer NOT NULL,
  105. CharacterRace nvarchar(255) NOT NULL
  106. CONSTRAINT PK_Character PRIMARY KEY (UserID, CharacterID)
  107. )
  108. GO
  109.  
  110. CREATE TABLE dbo.EmailAddress (
  111. EmailAddressID INT NOT NULL IDENTITY(1, 1),
  112. UserID INT NOT NULL
  113. CONSTRAINT FK_EmailAddress_UserID FOREIGN KEY (UserID)
  114. REFERENCES dbo.Users (UserID)
  115. ON DELETE CASCADE
  116. ON UPDATE CASCADE,
  117. EmailAddress nvarchar(255) NOT NULL,
  118. CONSTRAINT PK_EmailAddress PRIMARY KEY (UserID, EmailAddressID)
  119. )
  120. GO
  121.  
  122. CREATE TABLE dbo.Class (
  123. ClassID INT NOT NULL IDENTITY(1, 1)
  124. CONSTRAINT PK_Class_ClassID PRIMARY KEY,
  125. Name nvarchar(255) NOT NULL,
  126. )
  127. GO
  128.  
  129. CREATE TABLE dbo.Character_Class (
  130. CharacterCharacterID INT NOT NULL
  131. CONSTRAINT FK_Character_Class_CharacterCharacterID FOREIGN KEY (CharacterCharacterID)
  132. REFERENCES dbo.Character (CharacterID)
  133. ON DELETE CASCADE
  134. ON UPDATE CASCADE,
  135. ClassClassID INT NOT NULL
  136. CONSTRAINT FK_Character_Class_ClassClassID FOREIGN KEY (ClassClassID)
  137. REFERENCES dbo.Class (ClassID)
  138. ON DELETE CASCADE
  139. ON UPDATE CASCADE,
  140. CONSTRAINT PK_Character_Class PRIMARY KEY (CharacterCharacterID, ClassClassID)
  141. )
  142. GO
  143.  
  144. CREATE TABLE dbo.Inventaire (
  145. ItemID INT NOT NULL IDENTITY(1, 1),
  146. CharacterCharacterID INT NOT NULL
  147. CONSTRAINT FK_Inventory_CharacterCharacterID FOREIGN KEY (CharacterCharacterID)
  148. REFERENCES dbo.Character (CharacterID)
  149. ON DELETE CASCADE
  150. ON UPDATE CASCADE,
  151. ItemName nvarchar(255) NOT NULL,
  152. ItemValue integer NOT NULL,
  153. CONSTRAINT PK_Inventory PRIMARY KEY (CharacterCharacterID, ItemID)
  154. )
  155. GO
  156.  
  157. -----------------------
  158. -- PARTIE INSERTION
  159. -----------------------
  160.  
  161. DELETE FROM dbo.Users
  162. WHERE 1 = 1
  163. GO
  164.  
  165. DELETE FROM dbo.Character
  166. WHERE 1 = 1
  167. GO
  168.  
  169. DELETE FROM dbo.Class
  170. WHERE 1 = 1
  171. GO
  172.  
  173. DELETE FROM dbo.EmailAddress
  174. WHERE 1 = 1
  175. GO
  176.  
  177. DELETE FROM dbo.Inventaire
  178. WHERE 1 = 1
  179. GO
  180.  
  181. DELETE FROM dbo.Character_Class
  182. WHERE 1 = 1
  183. GO
  184.  
  185. -- Déclaration des variables
  186. DECLARE @ID_BenDes as INT;
  187. DECLARE @ID_PhiGui as INT;
  188. DECLARE @ID_ÉtiBou as INT;
  189. DECLARE @ID_JosBoi as INT;
  190. DECLARE @ID_MikTur as INT;
  191.  
  192. DECLARE @ID_Goth as INT;
  193. DECLARE @ID_Arag as INT;
  194. DECLARE @ID_Giml as INT;
  195. DECLARE @ID_Necr as INT;
  196. DECLARE @ID_Jova as INT;
  197. DECLARE @ID_Kash as INT;
  198.  
  199. INSERT INTO dbo.Users (Name, Billing_Address, Country) VALUES
  200. ('Benoit Desrosiers', '54 Rue des Abeilles', 'Canada'),
  201. ('Philippe Guilmette', '185 Rue du Slav', 'Russie'),
  202. ('Étienne Boutet', '23 Rue de la Baguette', 'Niger'),
  203. ('Joseph Boisvert', '99 Boulevard Allard', 'Pakistan'),
  204. ('Mike Turcotte', '550 Broadway Avenue', 'États-Unis' )
  205.  
  206. SET @ID_BenDes = (SELECT UserID FROM dbo.Users WHERE Name = 'Benoit Desrosiers')
  207. SET @ID_PhiGui = (SELECT UserID FROM dbo.Users WHERE Name = 'Philippe Guilmette')
  208. SET @ID_ÉtiBou = (SELECT UserID FROM dbo.Users WHERE Name = 'Étienne Boutet')
  209. SET @ID_JosBoi = (SELECT UserID FROM dbo.Users WHERE Name = 'Joseph Boisvert')
  210. SET @ID_MikTur = (SELECT UserID FROM dbo.Users WHERE Name = 'Mike Turcotte')
  211.  
  212. INSERT INTO dbo.Character (CharacterName, CharacterLevel, CharacterRace) VALUES
  213. ('Gothtarte', 60, 'Dark Elf'),
  214. ('Aragorn', 52, 'Human'),
  215. ('Gimli', 30, 'Dwarf'),
  216. ('Necromanco', 22, 'High Elf'),
  217. ('Jova', 5, 'Human'),
  218. ('Kashir', 17, 'Khajit')
  219.  
  220. SET @ID_Goth = (SELECT CharacterID from dbo.Character WHERE CharacterName = 'Gothtarte')
  221. SET @ID_Arag = (SELECT CharacterID from dbo.Character WHERE CharacterName = 'Aragorn')
  222. SET @ID_Giml = (SELECT CharacterID from dbo.Character WHERE CharacterName = 'Gimli')
  223. SET @ID_Necr = (SELECT CharacterID from dbo.Character WHERE CharacterName = 'Necromanco')
  224. SET @ID_Jova = (SELECT CharacterID from dbo.Character WHERE CharacterName = 'Jova')
  225. SET @ID_Kash = (SELECT CharacterID from dbo.Character WHERE CharacterName = 'Kashir')
  226.  
  227. INSERT INTO dbo.Class (Name) VALUES
  228. ('Warrior'),
  229. ('Mage'),
  230. ('Necromancer'),
  231. ('Archer'),
  232. ('Thief'),
  233. ('Paladin'),
  234. ('Monk'),
  235. ('Cleric')
  236.  
  237. INSERT INTO dbo.EmailAddress (UserID, EmailAddress) VALUES
  238. (@ID_BenDes, 'ben1@hotmail.com'),
  239. (@ID_BenDes, 'ben2@gmail.com'),
  240. (@ID_PhiGui, 'phil1@hotmail.com'),
  241. (@ID_PhiGui, 'phil2@gmail.com'),
  242. (@ID_ÉtiBou, 'et1@hotmail.com'),
  243. (@ID_ÉtiBou, 'et2@gmail.com'),
  244. (@ID_JosBoi, 'jos1@hotmail.com'),
  245. (@ID_JosBoi, 'jos2@gmail.com'),
  246. (@ID_MikTur, 'mike1@hotmail.com'),
  247. (@ID_MikTur, 'mike2@gmail.com')
  248.  
  249. INSERT INTO dbo.Inventaire (CharacterCharacterID, ItemName, ItemValue) VALUES
  250. (@ID_Goth, 'Spade', 5),
  251. (@ID_Goth, 'Iron Sword', 50),
  252. (@ID_Arag, 'Lobster', 15),
  253. (@ID_Arag, 'Mithril Mace', 75),
  254. (@ID_Giml, 'Rune Helm', 250),
  255. (@ID_Giml, 'Magic Staff', 100),
  256. (@ID_Necr, 'Spade', 5),
  257. (@ID_Necr, 'Bow', 20),
  258. (@ID_Jova, 'Magic Staff', 100),
  259. (@ID_Kash, 'Steel Sword', 80)
  260.  
  261. DECLARE @ID_Warrior as INT;
  262. DECLARE @ID_Mage as INT;
  263. DECLARE @ID_Necromancer as INT;
  264. DECLARE @ID_Archer as INT;
  265. DECLARE @ID_Thief as INT;
  266. DECLARE @ID_Paladin as INT;
  267. DECLARE @ID_Monk as INT;
  268. DECLARE @ID_Cleric as INT;
  269.  
  270. SET @ID_Warrior = (SELECT ClassID from dbo.Class WHERE Name = 'Warrior')
  271. SET @ID_Mage = (SELECT ClassID from dbo.Class WHERE Name = 'Mage')
  272. SET @ID_Necromancer = (SELECT ClassID from dbo.Class WHERE Name = 'Necromancer')
  273. SET @ID_Archer = (SELECT ClassID from dbo.Class WHERE Name = 'Archer')
  274. SET @ID_Thief = (SELECT ClassID from dbo.Class WHERE Name = 'Thief')
  275. SET @ID_Paladin = (SELECT ClassID from dbo.Class WHERE Name = 'Paladin')
  276. SET @ID_Monk = (SELECT ClassID from dbo.Class WHERE Name = 'Monk')
  277. SET @ID_Cleric = (SELECT ClassID from dbo.Class WHERE Name = 'Cleric')
  278.  
  279. INSERT INTO dbo.Character_Class (CharacterCharacterID, ClassClassID) VALUES
  280. (@ID_Goth, @ID_Paladin),
  281. (@ID_Goth, @ID_Mage),
  282. (@ID_Arag, @ID_Mage),
  283. (@ID_Arag, @ID_Thief),
  284. (@ID_Giml, @ID_Warrior),
  285. (@ID_Giml, @ID_Necromancer),
  286. (@ID_Necr, @ID_Monk),
  287. (@ID_Jova, @ID_Mage),
  288. (@ID_Jova, @ID_Cleric),
  289. (@ID_Kash, @ID_Archer)
  290. GO
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement