![]() |
Datenbank: Firebird • Version: 2.1.1 • Zugriff über: Lokal / Netzwerk
Eingabe Hex-Zahlen in PSQL
Guten Abend,
für die Könner vermutlich eine simple Frage: Wie gibt man Hexzahlen in Firebird PSQL ein? Ich wollte mit bin_and(,) und einer Maske ermitteln, auf welchem Rechner die Datensätze eingegeben wurden:
SQL-Code:
Mein DB_GUID ist ein bigint, der über Trigger gefüllt wird und jeder Server hat einen anderen Startwert (z.B. 0x1000 0000 0000 0000). Aber 0x oder $ nimmt PSQL nicht an.
select *
from kunden where (bin_and(db_guid, hexmaske) <> 0 ) Ciao, Artur |
Re: Eingabe Hex-Zahlen in PSQL
Das beste wäre wohl die Octets als Parameter zu übergeben.
Wenn die UDF dem Parameter das richtige Character Set gegeben hat, sollte FB autom. Strings als OCtets nutzen. Wenn nicht, dann wäre wohl ein Cast nötig:
SQL-Code:
Das ist jetzt ungetestet und kann sich als kompletter Blödsinn herausstellen, aber so würde ich es versuchen...
select *
from kunden where (bin_and(db_guid, cast(:hexmaske as char(deineLänge) Character Set Octets)) <> 0 ) (Ich nutze kaum noch DB-spezifische Features... :oops: ) |
Re: Eingabe Hex-Zahlen in PSQL
Hi Elvis,
Danke für die Antwort. Auf dem Weg ging es leider nicht. Ich habe die Maske jetzt einfach als Dezimalzahl eingetragen (7FFF000000000000 = 9223090561878065152) Das hatte ich zuert schon probiert und hatte nur übersehen, dass ich nicht FFFF 0000 0000 0000 nehmen darf (weil das dann beim BIGINT ein negativer Wert wäre). Wünsche einen schönen Sonntag... Ciao, Artur |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:20 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz