External Article

Granting limited permissions to create views in another schema in SQL Server - Part 2

In a previous tip, Granting limited permissions to create views in another schema in SQL Server, I showed how to use the CREATE VIEW permission and the ALTER SCHEMA permission to allow users to create new views using the same schema as the tables. However, I have found that the users can alter and drop tables in this schema which is beyond what I want them to do. A DENY CREATE TABLE does not work, so what can I do to prevent them from touching the tables in this way? In this tip I will show you how you can use a DDL trigger to prevent this unneeded access.

Blogs

Measuring RAG Solutions: Are We Retrieving the Right Information?

By

A RAG pipeline that answers questions in the demo is not the same thing...

Advice I Like: Lots of Ideas

By

“A multitude of bad ideas is necessary for one good idea” – from Excellent...

Building a DBA Agent for Your SQL Server Estate with MCP

By

Yesterday I gave a talk for MSSQLTips called “Building a DBA Agent for Your...

Read the latest Blogs

Forums

Adding new column with DEFAULT

By Thomas Franz

Comments posted to this topic are about the item Adding new column with DEFAULT

How do I connect to a SQL Server database on my ISP?

By Doctor Who 2

I've got a web application for my side business. I've added a SQL Server...

Looking for New Blood

By Grant Fritchey

Comments posted to this topic are about the item Looking for New Blood

Visit the forum

Question of the Day

Adding new column with DEFAULT

Which number will the COUNT() return after executing the following statements:

DROP TABLE IF EXISTS #test;
CREATE TABLE #test (id INT)
INSERT INTO #test (id)
SELECT *
  FROM GENERATE_SERIES(1, 3) AS gs
;

ALTER TABLE #test ADD flag BIT CONSTRAINT DF_#test_flag DEFAULT 0;
go
UPDATE #test SET flag = 0 WHERE id = 1
UPDATE #test SET flag = 1 WHERE id = 2

INSERT INTO #test (id) VALUES (4)

SELECT COUNT(*)
  FROM #test AS t
 WHERE flag = 0
 

See possible answers