Announcement

Collapse
No announcement yet.

Create Login

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Create Login

    Hi,

    ich habe bishe rimmer folgendes Skript für die Erstellung der Logins genutzt:

    Code:
    declare @lnr int
    set @lnr = 0
    IF NOT EXISTS (select * from master.dbo.syslogins where loginname = @loginname)
    begin
    exec @lnr = sp_addlogin @loginname, @kennwort, @datenbankname
    if (@lnr <> 0 ) or (@@error<>0)
    goto error_default
    end
    Nun habe ich aber immer das Problem, dass ich ein zu kurzes Kennwort eintragen will und dann meckert das Skript.

    Alternativ würde ich nun gerne folgendes Statement verwenden, weiß aber nicht, wie ich da eine berprüfung machen kann, dass der Login erfolgreich war...

    Code:
    IF NOT EXISTS (select * from master.dbo.syslogins where loginname = @loginname)
    begin
    create login @loginname with password=@kennwort, default_database=@datenbankname, check_expiration=off, check_policy=off
    end

  • #2
    Danach müßte Dein SELECT

    select * from master.dbo.syslogins where loginname = @loginname

    doch das nue Login zurückliefern oder nicht?

    Comment


    • #3
      ja aber ich wollte eine art error handling machen. gibt es eine syntax, welche mir bei einem create true und false in form von 1 und 0 zurückgibt?

      Comment


      • #4
        Exception handling...

        BEGIN TRY
        IF NOT EXISTS (select * from master.dbo.syslogins where loginname = @loginname)
        begin
        create login @loginname with password=@kennwort, default_database=@datenbankname, check_expiration=off, check_policy=off
        end
        END TRY
        BEGIN CATCH
        RaisError ('hat nicht geklappt', 16, 1)
        END CATCH

        Comment


        • #5
          das wars- super - danke!

          lg schnurzli

          Comment

          Working...
          X