Database model
Si applica a: SQL Server
Il database modello viene usato come modello per tutti i database creati in un'istanza di SQL Server. Poiché il database tempdb viene creato ogni volta che SQL Server viene avviato, il database modello deve essere sempre presente in un sistema SQL Server. L'intero contenuto del database model , incluse le opzioni del database, viene copiato nel nuovo database. Alcune impostazioni del modello vengono inoltre usate per la creazione di un nuovo tempdb all'avvio, pertanto il database modello deve essere sempre presente in un sistema SQL Server.
I database utente appena creati utilizzano lo stesso modello di recupero del database model. La stringa predefinita è configurabile dall'utente. Per informazioni sull'attuale modello di recupero del modello, vedere Visualizzazione o modifica del modello di recupero di un database (SQL Server).
Importante
Se si modifica il database modello con le informazioni sul modello specifiche dell'utente, è consigliabile eseguire il backup del modello. Per altre informazioni, vedere Backup e ripristino di Database di sistema (SQL Server).
Utilizzo del database model
Quando viene eseguita un'istruzione CREATE DATABASE, la prima parte del database viene creata copiando i contenuti del database model . La parte restante del nuovo database viene riempita con pagine vuote.
Se si modifica il database model , le modifiche vengono ereditate da tutti i database creati successivamente. È ad esempio possibile impostare autorizzazioni o opzioni di database oppure aggiungere oggetti, ad esempio tabelle, funzioni o stored procedure. Le proprietà dei file del database model rappresentano un'eccezione e vengono ignorate, eccetto le dimensioni iniziali del file di dati. La dimensione iniziale predefinita del file di dati e di log del database modello è 8 MB.
Proprietà fisiche del database model
Nella tabella seguente sono illustrati i valori di configurazione iniziali dei file di dati e di log del database model .
file | Nome logico | Nome fisico | Aumento di dimensioni del file |
---|---|---|---|
Dati primari | modeldev | model.mdf | Aumento automatico di 64 MB fino a quando il disco risulta pieno. |
Log | modellog | modellog.ldf | Aumento automatico di 64 MB fino a un massimo di 2 terabyte. |
Per SQL Server 2014, vedere Database model per i valori predefiniti di aumento delle dimensioni dei file.
Per spostare il database modello o i file di log, vedere Spostare i database di sistema.
Opzioni di database
Nella tabella seguente vengono elencati i valori predefiniti per ogni opzione di database del database model ed è indicato se è possibile modificare le varie opzioni. Per visualizzare le impostazioni correnti di queste opzioni, usare la vista del catalogo sys.databases .
Opzione di database | Valore predefinito | Modificabile |
---|---|---|
ALLOW_SNAPSHOT_ISOLATION | OFF | Sì |
ANSI_NULL_DEFAULT | OFF | Sì |
ANSI_NULLS | OFF | Sì |
ANSI_PADDING | OFF | Sì |
ANSI_WARNINGS | OFF | Sì |
ARITHABORT | OFF | Sì |
AUTO_CLOSE | OFF | Sì |
AUTO_CREATE_STATISTICS | In... | Sì |
AUTO_SHRINK | OFF | Sì |
AUTO_UPDATE_STATISTICS | In... | Sì |
AUTO_UPDATE_STATISTICS_ASYNC | OFF | Sì |
CHANGE_TRACKING | OFF | No |
CONCAT_NULL_YIELDS_NULL | OFF | Sì |
CURSOR_CLOSE_ON_COMMIT | OFF | Sì |
CURSOR_DEFAULT | GLOBAL | Sì |
Opzioni relative alla disponibilità del database | ONLINE MULTI_USER READ_WRITE |
No Sì Sì |
DATE_CORRELATION_OPTIMIZATION | OFF | Sì |
DB_CHAINING | OFF | No |
ENCRYPTION | OFF | No |
MIXED_PAGE_ALLOCATION | In... | No |
NUMERIC_ROUNDABORT | OFF | Sì |
PAGE_VERIFY | CHECKSUM | Sì |
PARAMETERIZATION | SEMPLICE | Sì |
QUOTED_IDENTIFIER | OFF | Sì |
READ_COMMITTED_SNAPSHOT | OFF | Sì |
RECOVERY | Dipende dall'edizione di SQL Server* | Sì |
RECURSIVE_TRIGGERS | OFF | Sì |
Opzioni relative a Service Broker | DISABLE_BROKER | No |
TRUSTWORTHY | OFF | No |
*Per verificare l'attuale modello di recupero del database, vedere Visualizzazione o modifica del modello di recupero di un database (SQL Server) o sys.databases (Transact-SQL).
Per una descrizione di queste opzioni di database, vedere ALTER DATABASE (Transact-SQL).
Restrizioni
Nel database model non è possibile eseguire le operazioni seguenti:
- Aggiunta di file o di filegroup.
- Modifica delle regole di confronto. Le regole di confronto predefinite corrispondono a quelle del server.
- Modifica del proprietario del database. model è di proprietà di sa.
- Eliminazione del database.
- Eliminazione dell'utente guest dal database.
- Abilitazione dell'acquisizione dei dati delle modifiche.
- Partecipazione al mirroring del database.
- Rimozione del filegroup primario, del file di dati primario o del file di log.
- Ridenominazione del filegroup primario o del database.
- Impostazione del database su OFFLINE.
- Impostazione del filegroup primario su READ_ONLY.
- Creazione di procedure, viste o trigger utilizzando l'opzione WITH ENCRYPTION. La chiave di crittografia è correlata al database in cui viene creato l'oggetto. Gli oggetti crittografati creati nel database model possono essere usati solo in model.