Scripts

Technical Article

MSP_Restore

Simple Procedure to rapidly rebuild a copy of Development TEST1 DB...Lovely and fast when Tard Developers have highlevels of access  and you just need them out to restore / refresh a db...KILL KILL KILL !!! Remember to reset / resolve users and permissions after this is run. I use a DTS RUN statment with a […]

You rated this post out of 5. Change rating

2003-12-18

178 reads

Technical Article

Job Status Revised.

This procedure queries the sysjobs, sysjobschedules and sysjobhistory table to produce a resultset showing the jobs on a server plus their schedules(if applicable),how often the interval occurs(every X hours,min.,days,etc), the maximun duration, last duration,last status   of the job.This is a script that I modified and added to from M.Pearson.

You rated this post out of 5. Change rating

2003-12-16

399 reads

Technical Article

Function to Format Select Queries to Columns

This function will strip all extra spaces, CRLFs and tabs from a SELECT statement, from the SELECT keyword to the End of the Order By clause, then reformat the statement to put all keywords at the left margin and subordinate clauses indented by ONE Tab.  There is an example of a SELECT statement that came […]

You rated this post out of 5. Change rating

2003-12-07

168 reads

Technical Article

Comprehensive HTML Database Documentation

This script will document tables (including constraints and triggers, row counts, sizes on disk), views (including all used fields), stored procedures (including used fields and parameters), database users, database settings and server settings.This script has been cobbled together from several others found on this site, so they deserve the recognition, not me 🙂Simply execute it […]

You rated this post out of 5. Change rating

2003-12-05

686 reads

Technical Article

Find Duplicate Indexes

There are plenty of scripts out there that find duplicate indexes, but they all seem to use cursors.  I didn't want to use a cursor so I ended up creating a few that could handle the duplicates and decided to share this one.  This will return the table name and the names of the two […]

(4)

You rated this post out of 5. Change rating

2003-12-04

2,743 reads

Technical Article

SQL Server DB Size Report

This script is similar in style to my previous script SQL Server Job Status Report, but this script generates an HTML report on the size of all databases on a specific SQL Server instance. The report consists of several sections: a summary report on the size of all databases; a summary report on the size […]

You rated this post out of 5. Change rating

2003-12-04

1,150 reads

Technical Article

Flexible searching on tables

In my company's web site there are search pages for allowing users to search info on one or more tables (or in my case a select with 10 joins). Often the requirements for these search pages change over time with users either requesting additional columns to search or remove columns that are no longer useful. […]

You rated this post out of 5. Change rating

2003-12-03

246 reads

Technical Article

Occurs

Returns the number of times a character expression occurs within another character expression.cSearchExpression -- Specifies a character expression that OCCURS( ) searches for within cExpressionSearched. cExpressionSearched -- Specifies the character expression OCCURS( ) searches for cSearchExpression.OCCURS( ) returns 0 (zero) if cSearchExpression isn't found within cExpressionSearched.

You rated this post out of 5. Change rating

2003-12-03

114 reads

Blogs

How AgentDBA Diagnoses SQL Server Issues Fast

By

Not every production incident is a database in RECOVERY_PENDING or a corrupted event (like...

Five Ways Redshift Serverless Quietly Eats Your Budget

By

It is Friday, the queries are running, and nobody is watching the bill. That...

A Career of Memories

By

Annabel retired from Redgate Software this week. Across most of my career at Redgate,...

Read the latest Blogs

Forums

SQL Art, Part 4: Happy 4th of July — A British DBA's Guide to Celebrating a War We Don't Talk About

By Terry Jago

Comments posted to this topic are about the item SQL Art, Part 4: Happy...

BCA KCP Pulogadung Trade Centre Tlp:0817839777

By R4nt4u

WhatsApp: 0817839777 Kw. Industri Pulogadung, Jl. Raya Bekasi Km. 21, Ruko No.A2/18-19, RW.3, Wil,...

Alamat Kantor BCA KCP Klender Tlp:0817839777

By layanan_Bca88

WhatsApp: 0817839777 Jl. I Gusti Ngurah Rai No.8 A-B, RT.8/RW.6, Wil, Kec. Duren Sawit,...

Visit the forum

Question of the Day

Changing the Schema

I set up a few users on my SQL Server 2022 instance.

CREATE LOGIN User1 WITH PASSWORD = 'Demo12#1'
CREATE USER User1 FOR LOGIN User1
GO
CREATE LOGIN User2 WITH PASSWORD = 'Demo12#2'
CREATE USER User2 FOR LOGIN User2
GO
CREATE LOGIN User3 WITH PASSWORD = 'Demo12#3'
CREATE USER User3 FOR LOGIN User3
GO
I then created a schema that one of them owned. Under this schema, I added a table with some data.
CREATE SCHEMA MySchema AUTHORIZATION User1
GO
CREATE TABLE Myschema.MyTable(myid INT)
GO
INSERT MySchema.MyTable
(
    myid
)
VALUES
(1), (2), (3)
GO
SELECT * FROM MySchema.MyTable
GO
I granted rights and verified that User2 could access this table.
GRANT SELECT ON Myschema.MyTable TO User2
GO
SETUSER 'USER2'
GO
SELECT * FROM MySchema.MyTable
GO
This worked. Now, I move this schema to a new user.
ALTER AUTHORIZATION ON SCHEMA::Myschema TO User3;
GO
What happens with this code?
SETUSER 'USER2'
GO
SELECT * FROM MySchema.MyTable
GO

See possible answers