verwendetes Datenbanksystem: <SQL Server 2005>
Hallo,
ich erstelle in meiner Datenbank einen neuen User. Jedoch will ich natürlich vorher überprüfen, ob der User schon vorhanden ist, sonst würde es ja knallen.
Mit der Select-Anweisung funktioniert das doch nicht, da ich damit auf Tabellen zugreife. Ich hoffe dass ich mich jetzt nicht irre und es kann mir einer weiterhelfen kann.
HAllo,
erzeugst du in einer eigenen Usertabelle einen neuen User, für ein eigenes Programm?
Oder meinst du direkt einen SqlUser??
mfg
serial
nnee ich erstelle einen SQL User in meiner Datenbank. also mit
command = new SqlCommand("create user "+name+" without login", con);
Hallo!
Und mit einem anderen SQL-Commando kann man eben vorher feststellen, ob es bereits einen user mit diesem namen gibt.
Nobody is perfect. I'm sad, i'm not nobody 🙁
ja aberwie? also mit welchem SQL Command? Welchen SQL-Befehl gibts dafür??
ich hab da noch ein Problem.
Die Abfrage "if exists(select ... from..)" funktioniert bei mir nicht richtig, da ich nicht von einer bestimmten Tabelle abfragen will ,sondern von einer Datenbank, also "if exists(select [user] from [datenbankname])", die Abfrage "if exists..." testet ja, ob Zeilen vorhanden sind. Ich möchte nur wissen, ob der User in der Datenbank schon vorhanden ist.
Hast du den Thread aus dem Link ueberhaupt gelesen?
Da steht alles drin was du wissen musst.
be the hammer, not the nail!
ja habe ich. und zwar habe ich folgendes gemacht :
if not exists(select 'hans' from sys.database_principals)
begin
create user hans without login
end
else
print 'existiert schon'
obwohl der user hans nicht existiert, sagt er mir er existiert schon.
if not exists(select 'hans' from sys.database_principals)
begin
create user hans without login
end
else
print 'existiert schon'obwohl der user hans shcon existiert, sagt er mir er existiert schon.
Das stimmt ja auch?
Du selectest uebrigens fuer jeden User den Namen 'hans', wie waers wenn du das ganze mit einer WHERE-Klausel versiehst?
Lies dich erstmal ein bisschen in T-SQL ein, dann reden wir weiter.
be the hammer, not the nail!
SQL Grundlagen:
if not exists(select * from sys.database_principals where name = 'hans')
....
Lg XXX
aaah mist, jetzt hats funktioniert. sowas dummes aber auch, habe das "where.." vergessen.
Vielen Dank!!!!