Archiv für: August 2007

Kann ich datenbankübergreifende Referentielle Integritäts Einschränkungen erstellen?

Jein! Nein: Es geht nicht, eine FOREIGN KEY Einschränkung über Datenbankgrenzen hinweg anzulegen. Ja: Man kann Trigger dafür verwenden. Hier muß man aber darauf achten, daß die entsprechenden Berechtigungen gesetzt sind. mehr »

Wie kann ich Startup Prozeduren identifizieren?

Startup Prozeduren werden beim Start von SQL Server ausgeführt. Typische Verwendungszwecke sind zum Beispiel:das Befüllen von globalen Parameter Tabellen Um eine Prozedur als Startup Procedure festzulegen, muß man die Systemprozedur sp_procoption… mehr »

Wie kann ich Startup Prozeduren identifizieren?

Startup Prozeduren werden beim Start von SQL Server ausgeführt. Typische Verwendungszwecke sind zum Beispiel:das Befüllen von globalen Parameter Tabellen Um eine Prozedur als Startup Procedure festzulegen, muß man die Systemprozedur sp_procoption… mehr »

Gibt es eine Möglichkeit, die Resourcen Datenbank "mssqlsystemresource.mdf" in SSMS anzuzeigen?

Ja! Aber nur, wenn SQL Server im Single User Modus gestartet wird. Da diese Datenbank aber nur die Definitionen von weiteren Datenbankobjekten enthält, ist der Sinn einer Anzeige fraglich, zumal man diese Definitionen auch über die OBJECT_DEFINITION F… mehr »

Wie kann ich programmatisch IDENTITY Spalten in meinen Tabellen identifizieren?

In SQL Server 2000 und früher funktioniert folgendes:SELECT TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE COLUMNPROPERTY(OBJECT_ID(TABLE_SCHEMA+'.'+TABLE_NAME), COLUMN_NAME,'IsIdentity')=1;SELECT su.name AS TABLE_NA… mehr »

Kann man das Ergebnis einer Prozedur in einem SELECT Statement verwenden?

Jein! Die direkte Syntax SELECT … FROM EXEC myProcedure ist ungültig und liefert einen Fehler. Es gibt aber einen Umweg über einen View und OPENQUERY:EXEC sp_serveroption 'Hier den Servername eintragen','data access','true'GOIF OBJECT_ID('MyView',… mehr »

Kann ich einen globalen Trigger für alle Tabellen erzeugen?

Typisches Einsatzgebiet ist die Implementierung einer eigenen Protokollierfunktionalität, die Änderungen an Tabellen mitschneidet. Die Arbeitsweise ist stets die gleiche, nur die Tabelle ist immer eine andere. Falls die Frage auf einen derartigen Hi… mehr »

Wie kann ich Funktionen in SQL Server 2005 identifizieren?

SELECT * FROM INFORMATION_SCHEMA.ROUTINES WHERE ROUTINE_TYPE = 'FUNCTION' AND OBJECTPROPERTY(OBJECT_ID(QUOTENAME(SPECIFIC_SCHEMA) + '.' +QUOTENAME(SPECIFIC_NAME)),'IsMSShipped') = 0 oder alternativ dazu: SELECT * FROM sys.sysobjects -- oder sys.obje… mehr »