Avatar billede orca Nybegynder
20. juli 2004 - 18:25 Der er 6 kommentarer og
2 løsninger

Ændre ejer på objekter automatisk

Hej.

Jeg har en user i min database som er knyttet til et givent login. Denne bruger skal jeg have slettet, men den ejer en masse objekter i databasen.

Jeg kan sidde og ændre ejeren manuelt ved at kalde sp_changeobjectowner på alle de forskellige objekter, men det er ikke en holdbar løsning da der er 200+ objekter, og flere databaser.

Kan det ikke gøres automatisk? Jeg vil ændre ejeren fra brugeren 'xxx' til 'dbo' på alle objekter i databasen.
Avatar billede arne_v Ekspert
20. juli 2004 - 18:41 #1
Du skal vel lave en sp som finder alle objekter ejet af det pågældende brugernavn
(sysobjects tabellen ??) og kalder sp_changeobjectowner for hver af dem.
Avatar billede arne_v Ekspert
20. juli 2004 - 18:43 #2
Noget a la:

select sysobjects.name from sysobjects join sysusers on sysobjects.uid=sysusers.uid and sysusers.name='xxxx'
Avatar billede arne_v Ekspert
20. juli 2004 - 18:45 #3
Og så en CURSOR og en WHILE med FETCH
Avatar billede yellow Nybegynder
20. juli 2004 - 18:51 #4
Avatar billede orca Nybegynder
20. juli 2004 - 18:58 #5
Lige hvad jeg havde brug for yellow! Tak! Smid et svar :)
Avatar billede yellow Nybegynder
21. juli 2004 - 02:56 #6
Tak, men stort set samme løsning som arne_v allerede havde foreslået - bare i en færdig udgave.
Vi kan dele point, hvis det er :-)
Avatar billede orca Nybegynder
21. juli 2004 - 09:41 #7
arne_v, du kan lægge et svar ud inden en gang i aften, hvis du er interesseret i at dele point :)
Avatar billede arne_v Ekspert
21. juli 2004 - 10:00 #8
ok
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester