home *** CD-ROM | disk | FTP | other *** search
/ PC Professionell 2006 May / PCpro_2006_05.ISO / files / free_security / languard / languardnss7.exe / mssqlserver.sql < prev    next >
Encoding:
Text File  |  2005-12-05  |  14.7 KB  |  565 lines

  1. /* UPGRADE FROM: LNSS 5 */
  2. /* UPGRADE TO: LNSS 6 */
  3.  
  4.  
  5. /****** Rename database 
  6. ******/
  7.  
  8. /* Open DB conn in single user mode */
  9. IF EXISTS (SELECT name FROM master.dbo.sysdatabases WHERE name = 'LNSSScanResults')
  10.     EXEC sp_dboption LNSSScanResults, 'single user', 'TRUE'
  11. ;
  12.  
  13. /****** Rename lnssscanresult to lnssscanresult6 ******/
  14. IF EXISTS (SELECT name FROM master.dbo.sysdatabases WHERE name = 'LNSSScanResults')
  15.     ALTER DATABASE LNSSScanResults MODIFY NAME = LNSSScanResults6
  16. ;    
  17.  
  18. EXEC sp_dboption LNSSScanResults6, 'single user', 'FALSE'
  19.  
  20. use LNSSScanResults6
  21. ;
  22.  
  23.  
  24. /****** Add new tables 
  25. ******/
  26.  
  27.  
  28. /****** Add tables ******/
  29. CREATE TABLE [dbo].[ALERTDETAILS] (
  30.     [ALERT_DETAILID] [int] IDENTITY (1, 1) NOT NULL ,
  31.     [ALERTID] [int] NULL ,
  32.     [DETAIL_LINE] [varchar] (255) NULL ,
  33.     [DETAIL_LINE_PARENT] [varchar] (255) NULL ,
  34.     [FLAGS] [int] NULL 
  35. ) ON [PRIMARY]
  36.  
  37. CREATE TABLE [dbo].[GroupsMembers] (
  38.     [GroupID] [int] NULL ,
  39.     [MemberID] [int] IDENTITY (1, 1) NOT NULL ,
  40.     [Name] [varchar] (255) NULL ,
  41.     [Type] [int] NULL 
  42. ) ON [PRIMARY]
  43.  
  44. CREATE TABLE [dbo].[LoggedOnUsers] (
  45.     [ClientType] [varchar] (255) NULL ,
  46.     [ElapsedTime] [int] NULL ,
  47.     [IdleTime] [int] NULL ,
  48.     [ItemsCount] [int] NULL ,
  49.     [LoggedOnID] [int] IDENTITY (1, 1) NOT NULL ,
  50.     [LogonDate] [varchar] (50) NULL ,
  51.     [ScanID] [int] NULL ,
  52.     [Transport] [varchar] (255) NULL ,
  53.     [UserFlags] [int] NULL ,
  54.     [UserName] [varchar] (255) NULL ,
  55.     [UserType] [tinyint] NULL 
  56. ) ON [PRIMARY]
  57.  
  58. CREATE TABLE [dbo].[USBDevices] (
  59.     [ClassGuid] [varchar] (40) NULL ,
  60.     [Description] [varchar] (255) NULL ,
  61.     [Manufacturer] [varchar] (100) NULL ,
  62.     [Name] [varchar] (50) NULL ,
  63.     [ScanID] [int] NULL ,
  64.     [USBDevID] [int] IDENTITY (1, 1) NOT NULL ,
  65.     [WhiteStatus] [int] NULL 
  66. ) ON [PRIMARY]
  67.  
  68. CREATE TABLE [dbo].[WMINet] (
  69.     [CardName] [varchar] (255) NULL ,
  70.     [Description] [varchar] (255) NULL ,
  71.     [DeviceID] [int] NULL ,
  72.     [DeviceType] [int] NULL ,
  73.     [DHCPEnabled] [varchar] (20) NULL ,
  74.     [DHCPServer] [varchar] (50) NULL ,
  75.     [DNSServers] [varchar] (255) NULL ,
  76.     [Domain] [varchar] (255) NULL ,
  77.     [Gateways] [varchar] (255) NULL ,
  78.     [HostName] [varchar] (30) NULL ,
  79.     [IPAddresses] [varchar] (255) NULL ,
  80.     [MACAddress] [varchar] (18) NULL ,
  81.     [ScanID] [int] NULL ,
  82.     [SSID] [varchar] (50) NULL ,
  83.     [Status] [varchar] (20) NULL ,
  84.     [WEP] [varchar] (50) NULL ,
  85.     [WhiteStatus] [int] NULL ,
  86.     [WMINetID] [int] IDENTITY (1, 1) NOT NULL 
  87. ) ON [PRIMARY]
  88.  
  89. /****** Add new tables constraints ******/
  90. ALTER TABLE [dbo].[ALERTDETAILS] ADD 
  91.     CONSTRAINT [IDX_ALERTDETAILS_ALERT_DETAILID] PRIMARY KEY  NONCLUSTERED 
  92.     (
  93.         [ALERT_DETAILID]
  94.     )  ON [PRIMARY] 
  95.  
  96. ALTER TABLE [dbo].[GroupsMembers] ADD 
  97.     CONSTRAINT [IDX_GroupsMembers_MemberID] PRIMARY KEY  NONCLUSTERED 
  98.     (
  99.         [MemberID]
  100.     )  ON [PRIMARY] 
  101.  
  102. ALTER TABLE [dbo].[LoggedOnUsers] ADD 
  103.     CONSTRAINT [IDX_LoggedOnUsers_LoggedOnID] PRIMARY KEY  NONCLUSTERED 
  104.     (
  105.         [LoggedOnID]
  106.     )  ON [PRIMARY] 
  107.  
  108. ALTER TABLE [dbo].[USBDevices] ADD 
  109.     CONSTRAINT [IDX_USBDevices_USBDevID] PRIMARY KEY  NONCLUSTERED 
  110.     (
  111.         [USBDevID]
  112.     )  ON [PRIMARY] 
  113.  
  114. ALTER TABLE [dbo].[WMINet] ADD 
  115.     CONSTRAINT [IDX_WMINet_WMINetID] PRIMARY KEY  NONCLUSTERED 
  116.     (
  117.         [WMINetID]
  118.     )  ON [PRIMARY] 
  119.  
  120. /****** Add new tables relations ******/
  121. ALTER TABLE [dbo].[ALERTDETAILS] ADD 
  122.     CONSTRAINT [AlertALERTDETAILS] FOREIGN KEY 
  123.     (
  124.         [ALERTID]
  125.     ) REFERENCES [dbo].[Alert] (
  126.         [AlertID]
  127.     ) ON DELETE CASCADE  ON UPDATE CASCADE 
  128.  
  129. ALTER TABLE [dbo].[GroupsMembers] ADD 
  130.     CONSTRAINT [GroupsGroupsMembers] FOREIGN KEY 
  131.     (
  132.         [GroupID]
  133.     ) REFERENCES [dbo].[Groups] (
  134.         [GroupsID]
  135.     ) ON DELETE CASCADE  ON UPDATE CASCADE 
  136.  
  137. ALTER TABLE [dbo].[LoggedOnUsers] ADD 
  138.     CONSTRAINT [ScanLoggedOnUsers] FOREIGN KEY 
  139.     (
  140.         [ScanID]
  141.     ) REFERENCES [dbo].[Scan] (
  142.         [ScanID]
  143.     ) ON DELETE CASCADE  ON UPDATE CASCADE 
  144.  
  145. ALTER TABLE [dbo].[USBDevices] ADD 
  146.     CONSTRAINT [ScanUSBDevices] FOREIGN KEY 
  147.     (
  148.         [ScanID]
  149.     ) REFERENCES [dbo].[Scan] (
  150.         [ScanID]
  151.     ) ON DELETE CASCADE  ON UPDATE CASCADE 
  152.  
  153. ALTER TABLE [dbo].[WMINet] ADD 
  154.     CONSTRAINT [ScanWMINet] FOREIGN KEY 
  155.     (
  156.         [ScanID]
  157.     ) REFERENCES [dbo].[Scan] (
  158.         [ScanID]
  159.     ) ON DELETE CASCADE  ON UPDATE CASCADE 
  160.  
  161.  
  162. /****** Delete unused tables 
  163. ******/
  164.  
  165. /****** Rename fields in Registry table ******/
  166. Exec sp_rename '[dbo].[Registry].[Description]', 'NodeName', 'COLUMN' 
  167.  
  168. Exec sp_rename '[dbo].[Registry].[Name]', 'RegEntry', 'COLUMN'
  169. ;
  170.  
  171. ALTER TABLE [dbo].[Registry] ALTER COLUMN
  172.     [NodeName] [varchar] (255) NULL 
  173. ;
  174.  
  175. ALTER TABLE [dbo].[Registry] ALTER COLUMN
  176.     [RegEntry] [varchar] (255) NULL
  177. ;
  178.  
  179. /****** Change data in Registry table ******/
  180. update [dbo].[Registry] SET 
  181.     [RegEntry] = [RegEntry] + ' : ' + [NodeName],
  182.     [NodeName] = ' '
  183. ;
  184.  
  185. /****** Move data from RegRun table to Registry table ******/
  186. INSERT INTO [dbo].[Registry] SELECT 'Run', [RunEntry], [ScanID] FROM [dbo].[RegRun]
  187. ;
  188.  
  189. /****** Delete unused tables constraints ******/
  190. if exists (select * from dbo.sysobjects where id = object_id('[dbo].[ScanHotfixes]') and OBJECTPROPERTY(id, 'IsForeignKey') = 1)
  191. ALTER TABLE [dbo].[Hotfixes] DROP CONSTRAINT ScanHotfixes
  192. ;
  193.  
  194. if exists (select * from dbo.sysobjects where id = object_id('[dbo].[ScanRegRun]') and OBJECTPROPERTY(id, 'IsForeignKey') = 1)
  195. ALTER TABLE [dbo].[RegRun] DROP CONSTRAINT ScanRegRun
  196. ;
  197.  
  198. if exists (select * from dbo.sysobjects where id = object_id('[dbo].[ScanTransports]') and OBJECTPROPERTY(id, 'IsForeignKey') = 1)
  199. ALTER TABLE [dbo].[Transports] DROP CONSTRAINT ScanTransports
  200. ;
  201.  
  202. /****** Delete tables ******/
  203. if exists (select * from dbo.sysobjects where id = object_id('[dbo].[Hotfixes]') and OBJECTPROPERTY(id, 'IsUserTable') = 1)
  204. drop table [dbo].[Hotfixes]
  205. ;
  206.  
  207. if exists (select * from dbo.sysobjects where id = object_id('[dbo].[RegRun]') and OBJECTPROPERTY(id, 'IsUserTable') = 1)
  208. drop table [dbo].[RegRun]
  209. ;
  210.  
  211. if exists (select * from dbo.sysobjects where id = object_id('[dbo].[Transports]') and OBJECTPROPERTY(id, 'IsUserTable') = 1)
  212. drop table [dbo].[Transports]
  213. ;
  214.  
  215.  
  216. /****** Change tables by adding or renaming fields 
  217. ******/
  218.  
  219. /****** Add new fields to tables ******/
  220. ALTER TABLE [dbo].[Permissions] ADD
  221.     [Flags] [varchar] (255) NULL,
  222.     [NTFS] [int] NULL
  223. ;
  224.  
  225. /****** Change data in Permissions table ******/
  226. UPDATE [dbo].[Permissions] SET 
  227.     [NTFS] = 0
  228. ;
  229.  
  230. ALTER TABLE [dbo].[Scan] ADD
  231.     [WMI] [int] NULL
  232.  
  233. ALTER TABLE [dbo].[Scans] ADD
  234.     [ReadOnly] [int] NULL,
  235.     [ScansEnded] [int] NULL
  236.  
  237. /****** Set data in Scans table ******/
  238. UPDATE Scans SET Scans.ReadOnly = 0
  239. ;
  240.  
  241. UPDATE [Scans] SET [Scans].[ScansEnded] = 1
  242. WHERE (SELECT COUNT([Scan].[ScanID]) FROM [Scan] WHERE [Scans].[ScansID]=[Scan].[ScansID] AND [Scan].[ScanEnded]=1) =
  243. (SELECT COUNT([Scan].[ScanID]) FROM [Scan] WHERE [Scans].[ScansID]=[Scan].[ScansID])
  244.  
  245. /* Open DB conn in multi user mode */
  246. /*
  247. EXEC sp_dboption LNSSScanResults6, 'single user', 'FALSE'
  248. */
  249.  
  250.  
  251.  
  252.  
  253. /* UPGRADE FROM: LNSS 6 */
  254. /* UPGRADE TO: LNSS 7 */
  255.  
  256.  
  257. /****** Rename database 
  258. ******/
  259.  
  260. /* Open DB conn in single user mode */
  261. IF EXISTS (SELECT name FROM master.dbo.sysdatabases WHERE name = 'LNSSScanResults6')
  262.     EXEC sp_dboption LNSSScanResults6, 'single user', 'TRUE'
  263.  
  264. /****** Rename lnssscanresult to lnssscanresult6 ******/
  265. IF EXISTS (SELECT name FROM master.dbo.sysdatabases WHERE name = 'LNSSScanResults6')
  266.     ALTER DATABASE LNSSScanResults6 MODIFY NAME = LNSSScanResults
  267. ;    
  268.  
  269. EXEC sp_dboption LNSSScanResults, 'single user', 'FALSE'
  270.  
  271. use LNSSScanResults
  272.  
  273.  
  274. /****** Add new tables 
  275. ******/
  276.  
  277.  
  278. /****** Add tables ******/
  279. CREATE TABLE [dbo].[AppsInstalled] (
  280.     [AppName] [varchar] (255) NULL ,
  281.     [AppsID] [int] IDENTITY (1, 1) NOT NULL ,
  282.     [IsRealtime] [int] NULL ,
  283.     [IsUpToDate] [int] NULL ,
  284.     [LastUpdate] [datetime] NULL ,
  285.     [ScanID] [int] NULL ,
  286.     [SecurityAppType] [int] NULL ,
  287.     [Unauthorized] [int] NULL, 
  288.     [AppVersion] [varchar] (255) NULL ,
  289.     [AppPublisher] [varchar] (255) NULL
  290. ) ON [PRIMARY]
  291.  
  292. CREATE TABLE [dbo].[Cache] (
  293.     [CacheID] [int] IDENTITY (1, 1) NOT NULL ,
  294.     [Name] [varchar] (255) NULL ,
  295.     [ScansID] [int] NULL ,
  296.     [Value] [varchar] (255) NULL 
  297. ) ON [PRIMARY]
  298.  
  299. CREATE TABLE [dbo].[IISAuditInfo] (
  300.     [AccessBrowse] [bit] NULL ,
  301.     [AccessRead] [bit] NULL ,
  302.     [AccessWrite] [bit] NULL ,
  303.     [DefDoc] [varchar] (255) NULL ,
  304.     [DirName] [varchar] (255) NULL ,
  305.     [IISAuditInfoID] [int] IDENTITY (1, 1) NOT NULL ,
  306.     [LocalPath] [varchar] (255) NULL ,
  307.     [LoggingEnabled] [bit] NULL ,
  308.     [ScanID] [int] NULL ,
  309.     [SendASPErr] [bit] NULL ,
  310.     [ServerName] [varchar] (255) NULL ,
  311.     [Session] [int] NULL ,
  312.     [Status] [int] NULL ,
  313.     [TypeServ] [int] NULL 
  314. ) ON [PRIMARY]
  315.  
  316. CREATE TABLE [dbo].[Patches] (
  317.     [UpdateID] [int] IDENTITY (1, 1) NOT NULL ,
  318.     [ScanID] [int] NULL ,
  319.     [BulletinID] [varchar] (50) NULL ,
  320.     [Date] [varchar] (50) NULL ,
  321.     [Name] [varchar] (50) NULL ,
  322.     [Title] [varchar] (255) NULL ,
  323.     [Severity] [varchar] (50) NULL ,
  324.     [AppliesToCategory] [varchar] (50) NULL ,
  325.     [UpdateType] [varchar] (50) NULL ,
  326.     [Url] [varchar] (255) NULL ,
  327.     [Supersedindex] [varchar] (50) NULL ,
  328.     [FileDigest] [varchar] (50) NULL ,
  329.     [FileName] [varchar] (4000) NULL,
  330.     [FileSize] [varchar] (50) NULL ,
  331.     [FileURL] [varchar] (4000) NULL,
  332.     [InstallParameters] [varchar] (255) NULL ,
  333.     [MSIPatchGUID] [varchar] (50) NULL ,
  334.     [IsMissing] [int] NULL ,
  335.     [DigestAlgorithm] [varchar] (50) NULL
  336. );
  337.  
  338. CREATE TABLE [dbo].[Processors] (
  339.     [ProcessorID] [int] IDENTITY (1, 1) NOT NULL ,
  340.     [ScanID] [int] NULL ,
  341.     [Vendor] [varchar] (255) NULL ,
  342.     [Model] [varchar] (255) NULL ,
  343.     [Speed] [varchar] (50) NULL ,
  344.     [Flags] [varchar] (255) NULL
  345. );
  346.  
  347.  
  348. /****** Add new tables constraints ******/
  349. ALTER TABLE [dbo].[AppsInstalled] ADD 
  350.     CONSTRAINT [IDX_AppsInstalled_AppsID] PRIMARY KEY  NONCLUSTERED 
  351.     (
  352.         [AppsID]
  353.     )  ON [PRIMARY] 
  354.  
  355. ALTER TABLE [dbo].[Cache] ADD 
  356.     CONSTRAINT [IDX_Cache_CacheID] PRIMARY KEY  NONCLUSTERED 
  357.     (
  358.         [CacheID]
  359.     )  ON [PRIMARY] 
  360.  
  361. ALTER TABLE [dbo].[IISAuditInfo] ADD 
  362.     CONSTRAINT [IDX_IISAuditInfo_IISAuditInfoID] PRIMARY KEY  NONCLUSTERED 
  363.     (
  364.         [IISAuditInfoID]
  365.     )  ON [PRIMARY] 
  366.  
  367. ALTER TABLE [dbo].[Patches] ADD 
  368.     CONSTRAINT [IDX_Patches_UpdateID] PRIMARY KEY  NONCLUSTERED 
  369.     (
  370.         [UpdateID]
  371.     )  ON [PRIMARY] 
  372.  
  373. ALTER TABLE [dbo].[Processors] ADD 
  374.     CONSTRAINT [IDX_Processors_ProcessorID] PRIMARY KEY  NONCLUSTERED 
  375.     (
  376.         [ProcessorID]
  377.     )  ON [PRIMARY] 
  378.  
  379. /****** Add new tables relations ******/
  380. ALTER TABLE [dbo].[AppsInstalled] ADD 
  381.     CONSTRAINT [ScanAppsInstalled] FOREIGN KEY 
  382.     (
  383.         [ScanID]
  384.     ) REFERENCES [dbo].[Scan] (
  385.         [ScanID]
  386.     ) ON DELETE CASCADE  ON UPDATE CASCADE 
  387.  
  388. ALTER TABLE [dbo].[Cache] ADD 
  389.     CONSTRAINT [ScansCache] FOREIGN KEY 
  390.     (
  391.         [ScansID]
  392.     ) REFERENCES [dbo].[Scans] (
  393.         [ScansID]
  394.     ) ON DELETE CASCADE  ON UPDATE CASCADE 
  395.  
  396. ALTER TABLE [dbo].[IISAuditInfo] ADD 
  397.     CONSTRAINT [ScanIISAuditInfo] FOREIGN KEY 
  398.     (
  399.         [ScanID]
  400.     ) REFERENCES [dbo].[Scan] (
  401.         [ScanID]
  402.     ) ON DELETE CASCADE  ON UPDATE CASCADE 
  403.  
  404. ALTER TABLE [dbo].[Patches] ADD 
  405.     CONSTRAINT [ScanPatches] FOREIGN KEY 
  406.     (
  407.         [ScanID]
  408.     ) REFERENCES [dbo].[Scan] (
  409.         [ScanID]
  410.     ) ON DELETE CASCADE  ON UPDATE CASCADE 
  411.  
  412. ALTER TABLE [dbo].[Processors] ADD 
  413.     CONSTRAINT [ScanProcessors] FOREIGN KEY 
  414.     (
  415.         [ScanID]
  416.     ) REFERENCES [dbo].[Scan] (
  417.         [ScanID]
  418.     ) ON DELETE CASCADE  ON UPDATE CASCADE 
  419.  
  420. /****** Change tables by adding fields 
  421. ******/
  422.  
  423. /****** Add new fields to tables ******/
  424. ALTER TABLE [Scans] ADD
  425.     [ComputerProfilesEnabled] [int] NULL
  426. ;
  427.  
  428. ALTER TABLE [dbo].[Scan] ADD
  429.     [Kernel] [varchar] (50) NULL,
  430.     [ServicesNextRunLevel] [int] NULL,
  431.     [ServicesRunLevel] [int] NULL
  432.  
  433. ALTER TABLE [dbo].[LoggedOnUsers] ADD
  434.     [Application] [varchar] (255) NULL,
  435.     [TTY] [varchar] (255) NULL
  436.  
  437. ALTER TABLE [dbo].[MissingHotfix] ADD
  438.     [Switches] [varchar] (255) NULL
  439.  
  440. ALTER TABLE [dbo].[Ports] ADD
  441.     [Service] [varchar] (255) NULL
  442.  
  443. ALTER TABLE [dbo].[Processes] ADD
  444.     [CommandLine] [varchar] (255) NULL,
  445.     [Domain] [varchar] (255) NULL,
  446.     [HandleCount] [int] NULL,
  447.     [Path] [varchar] (255) NULL,
  448.     [PID] [int] NULL,
  449.     [PPID] [int] NULL,
  450.     [Priority] [int] NULL,
  451.     [ThreadCount] [int] NULL,
  452.     [UserName] [varchar] (255) NULL
  453.  
  454. ALTER TABLE [dbo].[Services] ADD
  455.     [AccountName] [varchar] (255) NULL
  456.  
  457. ALTER TABLE [dbo].[USBDevices] ADD
  458.     [Vendor] [varchar] (255) NULL
  459.  
  460. ALTER TABLE [dbo].[Users] ADD
  461.     [LoginShell] [varchar] (255) NULL
  462.  
  463. ALTER TABLE [dbo].[Drives] ADD
  464.     [FileSystemType] [varchar] (50) NULL
  465. ;
  466.  
  467. ALTER TABLE [dbo].[WMINet] ADD
  468.     [BCast] [varchar] (20) NULL,
  469.     [IP6] [varchar] (50) NULL,
  470.     [Name] [varchar] (255) NULL,
  471.     [NMask] [varchar] (20) NULL,
  472.     [Vendor] [varchar] (255) NULL
  473. ;
  474.  
  475. /****** Change the type of field Ports.Lines from ntext to varchar(4000)
  476. ******/
  477.  
  478. Exec sp_rename '[dbo].[Ports].[Lines]', 'Lines1', 'COLUMN'
  479. ;
  480. ALTER TABLE [dbo].[Ports] ADD [Lines] [varchar](4000) NULL
  481. ;
  482. UPDATE [dbo].[Ports] SET [Lines] = CONVERT(varchar(4000), [Lines1])
  483. ;
  484. ALTER TABLE [dbo].[Ports] DROP COLUMN [Lines1]
  485. ;
  486.  
  487. /****** Change the type of field Compare.Text from ntext to varchar(4000)
  488. ******/
  489.  
  490. Exec sp_rename '[dbo].[Compare].[Text]', 'Text1', 'COLUMN'
  491. ;
  492. ALTER TABLE [dbo].[Compare] ADD [Text] [varchar](4000) NULL
  493. ;
  494. UPDATE [dbo].[Compare] SET [Text] = CONVERT(varchar(4000), [Text1])
  495. ;
  496. ALTER TABLE [dbo].[Compare] DROP COLUMN [Text1]
  497. ;
  498.  
  499. /****** Move data from old tables to new table 
  500. ******/
  501.  
  502. /****** Move service packs information from MissingHotfix table to Patches table ******/
  503. INSERT INTO [dbo].[Patches] ([ScanID], [BulletinID], [Date], [Name], [Title], [Severity], [AppliesToCategory],
  504.     [UpdateType], [Url], [Supersedindex], [FileDigest], [FileName], [FileSize], [FileUrl], [InstallParameters],
  505.     [MSIPatchGUID], [IsMissing])
  506. SELECT [MissingHotfix].[ScanID], [MissingHotfix].[LatestSPAvailable],  [MissingHotfix].[LatestSPReleaseDate], '',
  507.     [MissingHotfix].[LatestSPAvailable], 0, SUBSTRING([MissingHotfix].[Name], 1, 50), 9, '', [MissingHotfix].[SPId], '',
  508.     [MissingHotfix].[FileName], 0, [MissingHotfix].[LatestSPURL], [MissingHotfix].[Switches], '', 1
  509. FROM [dbo].[MissingHotfix]
  510. WHERE [MissingHotfix].[SpId] <> 0
  511. ;
  512.  
  513. /****** Move hotfix information from MissingHotfix and Hotfix tables to Patches table ******/
  514. INSERT INTO [dbo].[Patches] ([ScanID], [BulletinID], [Date], [Name], [Title], [Severity], [AppliesToCategory],
  515.     [UpdateType], [Url], [Supersedindex], [FileDigest], [FileName], [FileSize], [FileUrl], [InstallParameters],
  516.     [MSIPatchGUID], [IsMissing])
  517. SELECT [MissingHotfix].[ScanID], [Hotfix].[Name],  [Hotfix].[DatePosted], [Hotfix].[QName], [Hotfix].[Name],
  518.     0, SUBSTRING([MissingHotfix].[Name], 1, 50), 5, '', [Hotfix].[PatchLocationID], '', [Hotfix].[PName], 0, [Hotfix].[URL], 
  519.     [Hotfix].[Switches], '', (CASE [Hotfix].[IsNote] WHEN 0 THEN 1 WHEN 1 THEN 1 WHEN 2 THEN 0 END)
  520. FROM [dbo].[MissingHotfix] INNER JOIN [dbo].[Hotfix] ON [MissingHotfix].[MissingHotfixID] = [Hotfix].[MissingHotfixID]
  521.  
  522.