sp_create_removable (Transact-SQL)
Cette procédure crée une base de données sur un support amovible. Elle crée trois fichiers minimum (un pour les tables de catalogue système, un pour le journal des transactions et un ou plus pour les tables de données) et place la base de données sur ces fichiers.
Important
Cette fonctionnalité sera supprimée dans une prochaine version de Microsoft SQL Server. Évitez d'utiliser cette fonctionnalité dans de nouveaux travaux de développement et prévoyez de modifier les applications qui utilisent actuellement cette fonctionnalité. Il est conseillé d'utiliser plutôt CREATE DATABASE.
Conventions de la syntaxe de Transact-SQL
Syntaxe
sp_create_removable
[ @dbname = ] 'dbname',
[ @syslogical= ] 'syslogical',
[ @sysphysical = ] 'sysphysical',
[ @syssize = ] syssize,
[ @loglogical = ] 'loglogical',
[ @logphysical = ] 'logphysical',
[ @logsize = ] logsize,
[ @datalogical1 = ] 'datalogical1',
[ @dataphysical1 = ] 'dataphysical1',
[ @datasize1 = ] datasize1 ,
[ @datalogical16 = ] 'datalogical16',
[ @dataphysical16 = ] 'dataphysical16',
[ @datasize16 = ] datasize16 ]
Arguments
[ @dbname= ] 'dbname'
Nom de la base de données à créer pour une utilisation sur un support amovible. dbname est de type sysname.[ @syslogical= ] 'syslogical'
Nom logique du fichier qui contient les tables du catalogue système. syslogical est de type sysname.[ @sysphysical= ] 'sysphysical'
Nom physique. Il comprend un chemin d'accès complet du fichier contenant les tables du catalogue système. sysphysical est de type nvarchar(260).[ @syssize= ] syssize
Taille, en Mo, du fichier contenant les tables du catalogue système. syssize est de type int. La valeur minimale de syssize est 1.[ @loglogical= ] 'loglogical'
Nom logique du fichier contenant le journal des transactions. loglogical est de type sysname.[ @logphysical= ] 'logphysical'
Nom physique. Il comprend un chemin d'accès complet du fichier contenant le journal des transactions. logphysical est de type nvarchar(260).[ @logsize= ] logsize
Taille, en Mo, du fichier contenant le journal des transactions. logsize est de type int. La valeur minimale de logsize est 1.[ @datalogical1= ] 'datalogical'
Nom logique d'un fichier contenant les tables de données. datalogical est de type sysname.Il doit exister entre 1 et 16 fichiers de données. Habituellement, plusieurs fichiers de données sont créés lorsqu'il est prévu que la base de données soit volumineuse et qu'elle doive être distribuée sur plusieurs disques.
[ @dataphysical1= ] 'dataphysical'
Nom physique. Il comprend un chemin d'accès complet du fichier contenant les tables de données. dataphysical est de type nvarchar(260).[ @datasize1= ] 'datasize'
Taille, en Mo, du fichier contenant les tables de données. datasize est de type int. La valeur minimale de datasize est 1.
Valeurs des codes de retour
0 (succès) ou 1 (échec)
Ensembles de résultats
Aucun
Notes
Si vous souhaitez faire une copie de votre base de données sur un support amovible (par exemple un CD-ROM) pour la distribuer à d'autres utilisateurs, utilisez cette procédure stockée.
Autorisations
L'autorisation CREATE DATABASE, CREATE ANY DATABASE ou ALTER ANY DATABASE est obligatoire.
Pour garder le contrôle de l'utilisation du disque sur une instance de SQL Server, l'autorisation de création de bases de données est généralement limitée à quelques comptes de connexion.
Autorisations sur les données et les journaux
À compter de SQL Server 2005, chaque fois que certaines opérations sont effectuées sur une base de données, les autorisations correspondantes sont définies sur les données et les fichiers journaux. Les autorisations empêchent les fichiers d'être accidentellement falsifiés s'ils résident dans un répertoire doté d'autorisations d'ouverture.
Opération sur la base de données |
Autorisations d'accès aux fichiers définies |
---|---|
Modifiée pour ajouter un nouveau fichier |
Créé |
Sauvegardée |
Attachée |
Restaurée |
Détachée |
[!REMARQUE]
SQL Server 2005 Express Edition ne définit pas d'autorisations sur les fichiers de données et les journaux.
Exemples
L'exemple suivant crée la base de données inventory comme base de données amovible.
EXEC sp_create_removable 'inventory',
'invsys',
'C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Data\invsys.mdf'
, 2,
'invlog',
'C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Data\invlog.ldf', 4,
'invdata',
'C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Data\invdata.ndf',
10
Voir aussi
Référence
sp_certify_removable (Transact-SQL)
sp_helpfilegroup (Transact-SQL)
Procédures stockées système (Transact-SQL)