View SQL- IDs Identity values & PKs.sql
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
--A brief demo script about IDs, IDENTITY values, and boxes. | |
USE tempdb; --> we'll work in TempDB because it's quick, easy, and doesn't require any extra permissions | |
IF (OBJECT_ID('dbo.IdentityIsPK') IS NOT NULL) | |
DROP TABLE dbo.IdentityIsPK; | |
CREATE TABLE dbo.IdentityIsPK ( | |
ID int IDENTITY(1,1) | |
CONSTRAINT PK_IdentityIsPK PRIMARY KEY CLUSTERED | |
, Foo varchar(100) NOT NULL |
View AtTimeZoneDemo.sql
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* The system table that contains TZ info | |
SELECT tzi.name, tzi.current_utc_offset, tzi.is_currently_dst | |
FROM master.sys.time_zone_info tzi | |
*/ | |
--Drop & create tables | |
IF (OBJECT_ID('dbo.OfficeLocation') IS NOT NULL) | |
DROP TABLE dbo.OfficeLocation; | |
IF (OBJECT_ID('dbo.MyTrans') IS NOT NULL) | |
DROP TABLE dbo.MyTrans; |
View DemoCribbageHandScorer.sql
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
--Put this stuff in a new schema so we can easily clean up afterward. | |
CREATE SCHEMA [play] AUTHORIZATION [dbo]; | |
GO | |
--Set up our Cards model | |
--DROP TABLE play.Cards; | |
CREATE TABLE play.Cards | |
( | |
CardID int IDENTITY(1,1) PRIMARY KEY CLUSTERED | |
, Face varchar(2) |
View FetchAndReadSqlErrorLogs.sql
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
USE master; | |
DECLARE @CONST_P2 int = 1; --Error log, not Agent log. | |
DECLARE @NumLogFiles int = 30; --SET THIS APPROPRIATELY! | |
--^ (there's no way to get it programatically outside of registry-reads/other-xp's, none of which is doable in RDS, AFAIK. | |
--Example: show events from 7/19/2018 between 2am and 2:30am PDT | |
DECLARE @StartDate datetime = '2018-07-19T02:00:00' | |
, @EndDate datetime = '2018-07-19T02:30:00'; | |
CREATE TABLE #ErrorLogs ([LogDate] datetime, [ProcessInfo] nvarchar(50), [Text] nvarchar(max)); |
View GetSsrsSubscriptionInfoFromReportServer.sql
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
USE ReportServer; | |
--Fetch the subscription settings XML | |
WITH subscriptionXmL AS ( | |
SELECT SubscriptionID, OwnerID, Report_OID, Locale, InactiveFlags | |
, ExtensionSettings, ExtensionSettingsXML = CONVERT(xml, ExtensionSettings) | |
, ModifiedByID, ModifiedDate, [Description], LastStatus | |
, EventType, MatchData, LastRunTime, [Parameters] | |
, DeliveryExtension, [Version] | |
FROM ReportServer.dbo.Subscriptions | |
) |
View GetSqlReplicationArticles.sql
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
USE [dbName]; | |
SELECT pdb.publisher_db [DB], objs.[type] AS [ObjType], art.destination_object AS [Name], pub.publication [Pub], objs.[PubType] | |
FROM [distribution].dbo.MSpublisher_databases pdb with (nolock) | |
JOIN [distribution].dbo.MSarticles art with (nolock) | |
ON art.[publisher_db] = pdb.[publisher_db] | |
JOIN [distribution].dbo.MSpublications pub with (nolock) | |
on pub.[publication_id] = art.[publication_id] | |
and pub.[publisher_db] = pdb.[publisher_db] | |
LEFT JOIN ( | |
SELECT 'table' AS [type], name |
View GetDatabaseFilesAndSpaceUsed.sql
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
DECLARE @SummaryView BIT = 0 | |
DECLARE @GenFileRenames BIT = 0 | |
DECLARE @IgnoreSpecials BIT = 0 | |
--Only w/ @SummaryView = 0 && @GenFileRenames = 0 | |
DECLARE @LimitBySize bit = 0 | |
DECLARE @MinSizeGB decimal(10,2) = 5.0 | |
DECLARE @MinPctFree decimal(10,2) = 10.0 | |
--Customized view using GB answer w/ SO temp-table |
View Trigger_AfterDelete_LogEvidence.sql
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
CREATE OR ALTER TRIGGER dbo.Victims_DEL | |
ON dbo.Victims | |
AFTER DELETE | |
AS | |
BEGIN | |
INSERT INTO aud.Evidence (SchemaName, TableName, ActionType, RecordID | |
, DatabaseUser, ServerLogin, ActionTime) | |
SELECT SchemName = 'dbo', TableName = 'Victims', ActionType = 'delete', RecordID = Deleted.Id | |
, DbUser = USER_NAME(), SrvLogin = SUSER_SNAME(), ActionTime = SYSDATETIME() | |
FROM Deleted; |
View OrphanedUsersFixByName.sql
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* NJohnson9402 / natethedba.wordpress.com | |
An example of how to check for orphaned database users (users that do not map to a server login). | |
Basically the idea here is to take the output of `sys.sp_helpuser` and utilize it to find & fix. | |
There are much cooler ways out there, such as dbatools.io/functions/repair-dbaorphanuser/, but | |
I have occasionally seen these not work in odd situations. Plus, if your login names and user names | |
don't exactly match, this method could be extended to enter custom mappings-- you'd simply add a new | |
column to #HelpUser, say [NewLoginName], and use that in the 'fix-it' statement-generator query. | |
*/ | |
USE MyDatabase; |
View RenameDatabaseByBackupDetachAttach.sql
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* NJohnson9402 / natethedba.wordpress.com | |
An example of how to rename a database by work-around involving backup, restore, detach, attach. | |
Basically the idea here is that 'OriginalDB' is in heavy use, and can't tolerate much "downtime", | |
but "readonly time" is OK for a bit. | |
Drive letters for clarification in this case: 'D' for slow data, 'L' for slow tlog, | |
'E' for fast data, 'M' for fast tlog. The 'fast' storage system is our destination. | |
*/ | |
USE master; | |
EXEC OriginalDB.sys.sp_helpfile; |
NewerOlder