Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Propriétaire de tables

1 réponse
Avatar
Olivier
J'ai un script sql qui s'ex=E9cute en sa et qui cr=E9e une=20
base, un login (par sp_addogin + sp_grantdbaccess) puis=20
des tables.
Ces tables ont donc pour propri=E9taire dbo (et non le=20
login en question).
Or ce login cr=E9e lui-m=EAme certaines tables par=20
applicatifs. Ces tables-l=E0 ont alors ce login comme=20
propri=E9taire.
Je souhaiterais que toutes les tables aient le m=EAme=20
propri=E9taire.
Je pense =E0 2 m=E9thodes mais j'ai besoin d'avis :
1- Cr=E9er le login par sp_addlogin, puis le mettre en=20
alias de dbo (par sp_addalias) au lieu de faire le=20
sp_grantdbacess.
Ainsi, toutes les tables auront dbo comme propri=E9taire.
=20
2- Dans le script sql qui cr=E9e la base et le login, se=20
d=E9connecter de sa et se reconnecter en 'le fameux login'=20
avant de lancer les cr=E9ations de tables. Ainsi, toutes=20
les tables auraient ce login comme propri=E9taire.
Mais mon probl=E8me est que je ne trouve pas la commande=20
sql =E0 utiliser dans un .sql pour se connecter sous un=20
autre login.

Que pensez-vous de tout cela ? Y a-t-il mieux =E0 faire ?
Merci de votre aide.

1 réponse

Avatar
Kowal
Lorsque tu crées ta table en sa, tu peux la préfixer du nom de l'ulisateur

CREATE TABLE toto.nom_table

Il est quand même souvent intéressant que les tables aient le propriétaire
dbo car ainsi on est pas obligé de les préfixer par le nom de l'utilisateur
(même sans alias).


"Olivier" a écrit dans le message de
news: 1d9501c37392$14dd1b00$
J'ai un script sql qui s'exécute en sa et qui crée une
base, un login (par sp_addogin + sp_grantdbaccess) puis
des tables.
Ces tables ont donc pour propriétaire dbo (et non le
login en question).
Or ce login crée lui-même certaines tables par
applicatifs. Ces tables-là ont alors ce login comme
propriétaire.
Je souhaiterais que toutes les tables aient le même
propriétaire.
Je pense à 2 méthodes mais j'ai besoin d'avis :
1- Créer le login par sp_addlogin, puis le mettre en
alias de dbo (par sp_addalias) au lieu de faire le
sp_grantdbacess.
Ainsi, toutes les tables auront dbo comme propriétaire.

2- Dans le script sql qui crée la base et le login, se
déconnecter de sa et se reconnecter en 'le fameux login'
avant de lancer les créations de tables. Ainsi, toutes
les tables auraient ce login comme propriétaire.
Mais mon problème est que je ne trouve pas la commande
sql à utiliser dans un .sql pour se connecter sous un
autre login.

Que pensez-vous de tout cela ? Y a-t-il mieux à faire ?
Merci de votre aide.