Einzelnen Beitrag anzeigen

Benutzerbild von Jelly
Jelly

Registriert seit: 11. Apr 2003
Ort: Moestroff (Luxemburg)
3.741 Beiträge
 
Delphi 2007 Professional
 
#1

Bitweise Prüfung eines Int

  Alt 20. Mär 2008, 09:01
Datenbank: MSSQL • Version: 2000 • Zugriff über: irrelevant
Ich habe ein kleines Problem mit einer bitweisen Prüfung unter T-SQL.

Ich habe eine Nachschlagtabelle, bei der die Spalte x (vom Typ BigInt), die nur Werte annehmen darf, die in der bitweisen Darstellung nur ein Bit einnehmen, also Werte, die darstellbar sind als 2^n. Auf dieser Seite habe ich dazu auch den entsprechenden mathematischen Ausdruck gefunden:

Code:
(x & (x-1)) = 0
Das wollte ich als Constraint in meiner Tabellendefinition so angeben, was T-SQL auch erstmal so nimmt. Wenn ich mir nach dem Speichern der Tabelle jedoch den Constraint nochmal anschaue, wird daraus
Code:
(x & x - 1 = 0)
was aber falsch ist. Es werden mir die Klammern gelöscht.

Wie kann ich diese Prüfung denn nun vielleicht anders durchführen ?
  Mit Zitat antworten Zitat