Frage

Ich habe versucht, eine Datenbank mit Diagramm SQL Server 2008 zu erstellen, aber ein Fehler auftritt:

  

Datenbank Diagramm Unterstützung Objekte   kann nicht, weil diese installiert werden   Datenbank keinen gültigen Besitzer haben.   Um fortzufahren, verwenden Sie zuerst die Seite Dateien   der Datenbank Dialogfeld Eigenschaften   oder die ALTER AUTHORIZATION-Anweisung   die Datenbank-Besitzer auf einen gültigen einstellen   Login, dann fügen Sie die Datenbank-Diagramm   Unterstützungsobjekte.

Dann habe ich versucht die folgenden:

EXEC sp_dbcmptlevel 'Ariha', '90';
GO
ALTER AUTHORIZATION ON DATABASE::Ariha TO [WIN-NDKPHUPPNFL\Administrator]
GO
USE Ariha
GO
EXECUTE AS USER = N'dbo' REVERT
GO

Als nächstes erorr erscheint:

  

Msg 15404, Ebene 16, 11 State, Linie 1   erhalten kann keine Informationen über   Windows NT-Gruppe / Benutzer   'WIN-NDKPHUPPNFL \ Administrator', Fehler   Code 0x534.

Das Problem ist der Name des PC in die „DevPC“ geändert hat, habe ich auch das in der Update-Skript geändert, aber immer noch die gleichen Fehler 15404.

Was kann ich tun, um diesen ärgerlichen Fehler zu beheben?

War es hilfreich?

Lösung

Sie sollten SQL-Authentifizierungskonto prüfen für Datenbank-Besitz; dann müssen Sie nicht über Konten bewegen zu verschiedenen Servern und Ihre nächsten PC Namensänderung kommen und gehen, Datenbanken oder Instanzen kümmern. Ich habe mehrere Systeme, bei denen wir verwenden:

ALTER AUTHORIZATION ON DATABASE::Ariha TO [sa];

Oder wenn Sie an den Eigentümer zu diesem lokalen Administrator-Konto ändern mögen, dann sollte es sein:

ALTER AUTHORIZATION ON DATABASE::Ariha TO [DevPC\Administrator];

Da die Maschine DevPC Umbenennung das lokale Konto eliminiert hat, dass verwendet wird genannt WIN-ND...\Administrator und dies hat für ungültig erklärt auch den aktuellen Besitzer der Datenbank.

Wenn SELECT @@SERVERNAME; nicht korrekt ist (es sollte sagen DevPC), dann, um sicherzustellen, dass der Server Umbenennungs halten, innerhalb von SQL Server genommen hat, können Sie auch die folgende ausgegeben werden sollen:

EXEC sp_dropserver @server = N'old server name';
GO
EXEC sp_addserver @server = N'DevPC', @local = N'local';
GO

Andere Tipps

In SQL Server Management Studio wie folgt vor:

  1. Rechtsklick auf Ihre Datenbank, wählen Sie Eigenschaften
  2. Gehen Sie auf die Seite Optionen
  3. In der Drop-Down auf rechts mit "Kompatibilitätsgrad" wählen "SQL Server 2005 (90)" 3-1. wählen Sie "SQL Server 2008", wenn Sie eine Vergleichbarkeit Fehler angezeigt.
  4. Gehen Sie auf die Dateien Page
  5. Geben Sie "sa" in der Eigentümer Textbox. 5-1 oder klicken Sie auf die Ellipsen (...) und einen rechtmäßigen Eigentümer wählen.
  6. Hit OK

danach tun, werden Sie nun in der Lage sein, die Datenbankdiagramme zugreifen zu können.

eingeben Bild Beschreibung hier

USE [ECMIS]
GO
EXEC dbo.sp_changedbowner @loginame = N'sa', @map = false
GO

Es funktioniert.

Geben Sie "SA" anstelle von "sa" in dem Eigentümer Textbox. Das funktioniert für mich.

Ich hatte das gleiche Problem.
Ich wollte mein Diagramm sehen, die ich noch am selben Tag bei der Arbeit, zu Hause geschaffen. Aber ich konnte nicht, weil diese Nachricht.
Ich fand heraus, dass der Besitzer der Datenbank der Benutzer meines Computers war -wie erwartet. aber da der Computer in der Firma Domäne ist, und ich bin nicht an das Netzwerk des Unternehmens verbunden sind, kann die Datenbank nicht an den Eigentümer lösen.

Also, was ich tat, ist , die Eigentümer an einen lokalen Benutzer ändern und es hat funktioniert !!
Hoffe, dass dies jemand hilft.

Sie den Benutzer ändern, indem Sie einen Rechtsklick auf die Datenbank, Eigenschaften, Dateien, Eigentümer

Dieses regelte es für mich. Er setzt der Eigentümer im Rahmen der ‚Dateien‘ des Datenbank-Eigenschaftsfenster gefunden, und wie vom Management Studio scripted ist.

USE [your_db_name]
GO
EXEC dbo.sp_changedbowner @loginame = N'sa', @map = false
GO

Nach der sp_changedbowner Dokumentation dies ist veraltet jetzt.

Basierend auf Israels Antwort. Aaron Antwort ist die nicht veraltet Variation davon.

Wählen Sie Ihre Datenbank - Rechtsklick - Eigenschaften wählen

Wählen Sie Datei in der linken Seite der Seite

In dem Besitzer Feld Auswahltaste, die drei Punkte haben (...) darin

Wählen Sie nun Benutzer ‚SA und Klicken Sie auf OK

ich gerade erleben dies. Ich hatte die Vorschläge zu dieser Seite, sowie die SQL-Behörde Vorschläge lesen (was dasselbe ist) und keine der oben gearbeitet.

Am Ende nahm ich das Konto und neu erstellt (mit dem gleichen Benutzername / Passwort). Einfach so, alle Fragen ging.

Leider bedeutet dies, ich weiß nicht, was falsch gelaufen ist, damit ich nicht irgend etwas anderes gemeinsam nutzen kann.

1.Right auf Ihrer Datenbank klicken, 2.Then wählen Sie Eigenschaften. 3.Select die Option im Kompatibilitätsstufen wählen SQL 2008 [100], wenn Sie mit Microsoft arbeiten SQL 2008.

4.Then wählen Sie die Datei und schreibt (sa) in Eigentuemers Textbox

100% funktioniert für mich.

Ein einfacher Weg, um diese Probleme zu lösen wäre zu Recht den Namen Ihrer Datenbank klicken, wählen Sie „New Query“, geben Sie „exec sp_changedbowner‚sa‘“ und die Abfrage ausführen. Dann werden Sie gut zu gehen.

Sie müssen als Administrator einen Rechtsklick auf Microsoft SQL Server Management Studio, und führen Sie als admin

Nur müssen sie in Abfrage-Editor auszuführen ALTER AUTHORIZATION ON DATABASE :: YourDatabase TO [Domäne \ Konto];

Das eigentliche Problem ist, dass der Standard-Besitzer (DBO) nicht über einen Login, um es kartiert bei all.As Ich habe versucht, die SA-Anmeldung zu der Datenbank-Besitzer kartieren ich einen anderen Fehler empfangen Angabe „Benutzer, eine Gruppe oder Rolle ‚dbo‘ existiert bereits ... "Allerdings, wenn Sie diesen Code versuchen, wird es tatsächlich funktioniert.

  
    

EXEC sp_dbcmptlevel 'ihredb', '90';

         

gehen

         

ALTER AUTHORIZATION ON DATABASE :: ihredb TO "Yourlogin"

         

gehen

         

Verwendung [ihredb]

         

gehen

         

EXECUTE AS USER = N'dbo‘REVERT

         

gehen

  

Rechtsklick auf Ihre Datenbank, und wählen Sie Eigenschaften. wählen Sie die Option im Kompatibilitätsstufen wählen SQL 2005 [90] statt 2008, wenn Sie mit Microsoft SQL 2008 arbeiten. dann wählen Sie die Datei und schreiben (sa) in Eigentuemers Textbox. es wird funktionieren wahrscheinlich

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top