Wird ein Host umbenannt auf dem ein SQL Server installiert ist so gibt es möglicherweise Probleme weil in sys.servers noch der Instanzname mit dem alten Hostname registriert ist. Zunächst sollte man mittels

SELECT @@ServerName

prüfen welcher Name in sys.servers registriert ist.
Steht dort noch der alte Hostname drin kann mit den folgenden Stored Procedure Calls der lokale Server gelöscht und neu registriert werden.

exec sp_dropserver '<Alter\Instanzname>'
exec sp_addserver '<Neuer\Instanzname>', local

<Alter\Instanzname> und <Neuer\Instanzname> sind natürlich entsprechend auf den jeweils alten und neuen Hostname zu editieren.

Anschließend sollte unbedingt der SQL Server Dienst neu gestartet werden.

 

Auf der Kommandozeile oder im Query Analyzer kann man per T-SQL wie folgt die Sortierreihenfolge eine SQL Server Instanz anzeigen:

SELECT SERVERPROPERTY('collation')

Die Sortierreihenfolge einer Datenbank lässt sich mit der Funktion DATABASEPROPERTYEX herausfinden. Diese erwartet die Parameter @DatabaseName und @PropertyName. Am Beispiel der ‚master‘ Datenbank könnte dies dann so aussehen:

SELECT DATABASEPROPERTYEX('master', 'collation')

Um das aktuell ausgeführtes T-SQL Statement eines SQL-Server Prozesses anhand des sql_handle aus beispielsweise sys.dm_exec_requests per T-SQL (Beispielsweise in sqlcmd) anzuzeigen reicht folgendes T-SQL Statement:

SELECT * FROM sys.dm_exec_sql_text(<SQL_HANDLE>)
go

Der benötigte SQL_HANDLE Parameter kann aus sys.dm_exec_requests abgerufen werden wie hier erklärt. Dazu muss in der Abfrage dort eben das Feld sql_handle hinzugefügt werden.

Ein Aufruf könnte dann so aussehen:

SELECT * FROM sys.dm_exec_sql_text(0x02000000CCB0F308167B0C79C490334383A6EF32B5ADA66F)
go

In der Abgerufenen Tabelle steht das ausgeführte SQL-Statement des Prozesses dann in der Spalte ‚text‘.

Hat man gerade kein Microsoft SQL Server Manegement Studio zur Hand kann man auch auf der Command Line mit dem SQL-Server sprechen.

Dazu kann man das command line utility sqlcmd hernehmen. Um sich an einer SQL Server Instanz per ’sa‘ anzumelden genügt folgendes:

sqlcmd -U sa -S SERVER\INSTANCE

Mittels sqlcmd lassen sich beliebige T-SQL Statements ausführen.

 

SQL Server Express Edition bietet nicht die Möglichkeit OLEDB Provider Properties per SQL Server Management Studio einzustellen. Das entsprechende Userinterface in SQL Server Management Studio ist schlicht nicht vorhanden.

Dennoch lassen sich OLEDB Provider Einstellungen über die Stored Procedure sp_MSset_oledb_prop einstellen. Hier im Beispiel wird ‚Allow In Process‘ für den Oracle OLEDB Provider ORAOLEDB.Oracle auf ‚True‘ gesetzt.

EXEC master.dbo.sp_MSset_oledb_prop N'ORAOLEDB.Oracle', N'AllowInProcess', 1

Das T-SQL Statement kann entweder im SQL Server Management Studio von SQL Server Express Edition with Advanced Services oder auf der Kommandozeile mittels osql ausgeführt werden.