Testen, ob der String eine Integer-Zahl darstellt

Juni 16, 2010 - Lesezeit: ~1 Minute

Diese Prozedur gibt 1 zurück falls s eine Zahl ist ansonsten eine 0.


CREATE PROCEDURE ISZAHL (S VARCHAR (100))
RETURNS (ISZAHL SMALLINT)
AS 
declare variable l integer;
declare variable i integer;
declare variable c char(1);
BEGIN
  l=char_length(s);
  if (s is null or l=0) then
    ISZAHL=0;
  else begin
    i=1;
    ISZAHL=1;
    while (i<=l and ISZAHL=1) do begin
      c=substring(S from i for 1);
      if (c between '0' and '9' or (i=1 and c in ('+','-'))) then
        i=i+1;
      else
        ISZAHL=0;
    end
  end
  SUSPEND;
END
Tags: Firebird SQL

null

März 4, 2010 - Lesezeit: ~1 Minute

coalesce - einen Wert ungleich NULL zurückbekommen

select coalesce(Name1,Name2,Name3,'Ich') as IMMERNAME from KUNDEN

 

nullif - null zurückgeben, falls Parameter 1 = Parameter 2  oder  Parameter 1 ist null

select nullif(Name1,ZName1) as NAME from KUNDEN 

 

Tags: Firebird SQL

Firebird 2 - Cannot attach to password database

November 4, 2008 - Lesezeit: ~1 Minute

Auf einem Windowsrechner mit Firebird 2 wurde beim Verbindungsaufbau der Fehler

Cannot attach to password database 

ausgelöst.

Ursache: Der Rechner hatte den Namen Com1. Also alle Rechnernamen wie Com1, Com2, Lpt1 usw. vermeiden. Diesen Fehler habe ich erst nach langer Suche mit Hilfe von ProcMon gefunden.

 

Tags: Firebird Netzwerk Windows

Firebird 2 auf Ubuntu 7.10 installieren

Januar 18, 2008 - Lesezeit: ~1 Minute

Firebird 2 ist als Paket in Ubuntu enthalten. Leider ist das Paket fehlerhaft. Es wird alles installiert und der Server läuft auch prima. Aber leider ist nach dem Neustart alles verschwunden, da es in ein Verzeichnis installiert wurde, dass beim Neustart gelöscht wird.

Also muss Firebird per "Hand" installiert werden.

  • Firebird hier herunterladen und entpacken
  • install.sh mit sudo aufrufen
  • alle Dateien werden unter /opt/firebird installiert


Die Installation des Firebirdservers schreibt einen Eintrag in die /etc/inetd.conf.

Damit der Start des Servers funktioniert, ist ein funktionierender inetd, auch Internet-Superserver genannt, notwendig. Standard unter Ubuntu ist der openbsd-inetd, der aber nicht automatisch installiert wird. Nach der Installation des Paketes funktioniert alles einwandfrei.

Tags: Ubuntu Firebird