Glorf.it

Glorf IT

Bedenkliches aus dem IT-Alltag

4. Juni 2008 um 22:17

TSQL: Wo bin ich, auf 64- oder 32-Bit?

Wir haben das Problem, dass unsere SQL-Prozeduren auf ganz unterschiedlichen SQL-Servern laufen müssen. Und je nach Edition oder Windows-Version leicht anders reagieren soll. Um herauszufinden, ob das Skript auf einem 64-Bit- oder einem 32-Bit-SQL-Server läuft, kann man so vorgehen:

-- Laufe ich auf einem 64-Bit- oder 32-Bit-SQL-Server?
SELECT CASE WHEN @@version LIKE N'%(X64)%'
THEN '64-Bit'
ELSE '32-Bit'
END AS "SQL Server"

Ist es ein 32-Bit-SQL-Server, dann ist noch spannend, ob der unter 64-Bit (im Windows-on-Windows, WoW) oder unter 32-Bit-Windows ausgeführt wird. Wie das geht verriet mit mein Kollege Vladimir:

-- Laufe ich unter 64-Bit-Windows odr unter 32-Bit?
DECLARE @output TABLE (txt NVARCHAR(1000) NULL);

EXEC sp_configure 'show ad', 1;
RECONFIGURE WITH OVERRIDE;
EXEC sp_configure 'xp_cmdshell', 1;
RECONFIGURE WITH OVERRIDE;

INSERT INTO @output (txt)
EXEC xp_cmdshell 'systeminfo /FO LIST';

SELECT CASE WHEN EXISTS(SELECT *
FROM @output
WHERE txt LIKE 'Systemtyp: % X86-based PC'
OR txt LIKE 'System type: % X86-based PC')
THEN '32-Bit'
ELSE '64-Bit'
END AS "Windows"

EXEC sp_configure 'xp_cmdshell', 0;
RECONFIGURE WITH OVERRIDE;
EXEC sp_configure 'show ad', 0;
RECONFIGURE WITH OVERRIDE;

Auf die Aussagen aus xp_msvers kann man sich nicht verlassen, weil der 32-Bit-SQL-Server immer denkt er liefe unter Windows-32 (auch wenn er in Wirklichkeit im WoW eines Win64 läuft)…
Kennt jemand einen besseren Trick?

4. Juni 2008 um 22:09

effiziente Arbeitseinteilung

An unserem Bahnhof ist seit etlichen Wochen der Wartesaal "b.a.w." gesperrt, weil ein paar Rowdies etwas an die Wand geschmiert haben und der Raum nun neu gestrichen werden soll (oder so). Ich habe durch die verstaubte Glasscheibe bislang keine Veränderung in dem Raum feststellen können. Es wird wohl noch etwas dauern bis die Bahn das geregelt bekommt.

Dennoch kommt die Reinigungskraft weiterhin seit Wochen mit dem "DB"-Dienstwagen angefahren und putzt den Raum ganz fleißig. Was würde das wohl auch für einen Eindruck hinterlassen, wenn der Boden schmutzig wäre? Allerdings sollten die vielleicht auch die Glasscheiben mal putzen, damit man den inneren Glanz von außen überhaupt wahrnehmen kann… 😉

PS: Man munkelt, dass der Raum als Strafmaßnahme gegen die Rowdies geschlossen wurde. Vielleicht wäre es effektiver ein paar – jetzt nicht mehr anderweitig benötigte – Überwachungskameras der DB dort zu installieren… 😀

|