sql >> Database teknologi >  >> RDS >> Sqlserver

Hvordan laver man en tabel skrivebeskyttet i SQL Server?

Et simpelt alternativ, der ville blokere opdatering og indsætte på en bestemt tabel, men stadig tillade sletning:

ALTER TABLE mytable WITH NOCHECK ADD CONSTRAINT chk_read_only CHECK( 1 = 0 )

Vær opmærksom på:dette undgår INDSÆT og OPDATERINGER, men tillader SLETNINGER.

Hvis du virkelig har brug for en tabel, der virkelig kan læses, kan du også enten:

a) læg den i sin egen database eller
b) læg den i en filgruppe og marker den skrivebeskyttet. Sådan gør du:

USE [master]

GO

ALTER DATABASE [csvtosp] ADD FILEGROUP [READONLYTABLES]

GO

ALTER DATABASE [csvtosp] ADD FILE ( NAME = N'mydb_readonly_tables', FILENAME = N'G:\SQL2005DATA\mydb_readonly_tables.ndf' , SIZE = 3072KB , FILEGROWTH = 1024KB ) TO FILEGROUP [READONLYTABLES]

GO

USE csvtosp

GO

DROP TABLE mytable

CREATE TABLE mytable (

    somedata    char(8000) not null

) ON READONLYTABLES

GO

For flere detaljer om dette emne, gå her:

Sådan laver man en tabel skrivebeskyttet i SQL Server



  1. Hvordan tilføjer du PostgreSQL Driver som en afhængighed i Maven?

  2. Log til fil via PHP eller log til MySQL-database - hvad er hurtigere?

  3. Brug gruppe efter indvendig underforespørgsel

  4. opsætning af en database til sporing af, hvilke brugere der har klikket på hvilke links?