Scripts

Technical Article

Send True SMTP Mail using CDOSys instead of CDONTS

SQL Server 2000 and Windows 2000 Only.Microsoft suggest using CDOSys rather than CDONTS.  CDOSys stands for Collaboration Data Objects for Windows 2000 Subsystems.  Below is a script that allows you do do just that.  NO EXCHANGE REQUIRED!!  Sample sends the user HTML Mail!Be sure to change @ServerIPAddr to your SMTP server.

You rated this post out of 5. Change rating

2002-04-22

1,918 reads

Technical Article

sp_CHARINDEX

Here's a stored procedure version of udf_CharIndex for SQL Server 7.Sample Usage: DECLARE @iPos INT DECLARE @nRet INT EXECUTE @nRet = sp_CharIndex 'W', 'Hello World', @nPos = @iPos OUTPUT IF @iPos > 0   PRINT 'found' ELSE   Print 'not found' PRINT @iPos  --Only uses on character.

You rated this post out of 5. Change rating

2002-04-22

551 reads

Technical Article

View/Edit ASP Script from From SQL Server 7.0/2000

Ever want to display (and edit) ASP code from the original .asp file?  (like PHP's PHPInfo() function).To setup:  * Just create a .asp with SQL Server connectivity.  * Change @IISHostNameWWWPath to match your servername      -OR-     if SQL Server is on the same machine, use the next     line instead. (see […]

You rated this post out of 5. Change rating

2002-04-22

547 reads

Technical Article

Change the User Defined Data type

User Defined Data Types (UDF) is one of the useful concepts in SQL Server. However UDF can't be modified after they are being used. You would have to remove your User Defined Data Type from each table before you can change it. This will be a big job under certain circumstances.This procedure changes all tables […]

You rated this post out of 5. Change rating

2002-04-19

1,033 reads

Technical Article

Script to list all user and roles

This script list all the users defined for each database on the server, it give the database name, the login name and the role defined.Its use full to have quick view of witch users are dbo on witch databaseEnsure that you have the result in grid in query analyzer, and just cut and paste the […]

(1)

You rated this post out of 5. Change rating

2002-04-18

961 reads

Technical Article

Write Reports from SQL to Disk (Even HTML!)

Ever need to write reports out to a folder? I have found that creating output files are SA-WEET! (and easy too) The sample script uses BCP to create an HTML file.This process works well for reports that need to be generated nightly and take too long to run in real time.  Use an SMTP mail […]

You rated this post out of 5. Change rating

2002-04-18

4,408 reads

Technical Article

Decimal to Binary Conversion for event scheduling

This procedure was written to create an event schedule     where the schedule may have non-consecutive days.    The input for the procedure is START DATE, END DATE, and DAYMAP    The DAYMAP input parameter is a decimal number whose binary representation    describes the schedule days over potentially a 4 week period (read from right to left).    […]

You rated this post out of 5. Change rating

2002-04-17

313 reads

Blogs

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,...

Rethinking Index Maintenance: Why avg_fragmentation_in_percent Is Outdated and What You Should Do Instead

By

As a SQL Server DBA with years of experience tuning production environments, I’ve seen...

Read the latest Blogs

Forums

What is the Cloud?

By Steve Jones - SSC Editor

Comments posted to this topic are about the item What is the Cloud?

Changing the Schema

By Steve Jones - SSC Editor

Comments posted to this topic are about the item Changing the Schema

Index Fragmentation Explained: Page Splits, Logical Reads, and What to Do

By Sanket Parmar

Comments posted to this topic are about the item Index Fragmentation Explained: Page Splits,...

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