![]() |
Datenbank: Firebird & MySQL • Version: 2 • Zugriff über: UniDAC
Max. Integerwert in Varchar anzeigen
Ich habe in einer Tabelle ein Attribut "kundennr", welches ich als Varchar angelegt habe.
Da können nun reine kundennummern drin stehen, aber auch namen usw. Jetzt möchte ich beim Anlegen eines neuen Kunden lediglich die höchste Kundennummer ermitteln und diese um 1 erhöhen. In MySQL mache ich das so:
SQL-Code:
bzw.
SELECT max(kundennr) as nummer FROM kundenstamm WHERE convert(kundennr,unsigned integer)>0;
SQL-Code:
In Firebird klappt das ganze nicht. Die Funktion convert existiert dort nicht und cast gibt einen Fehler zurück, sobald ein alphanumerischer Wert existiert: conversion error from string '<hier der feldwert>'
SELECT max(kundennr) as nummer FROM kundenstamm WHERE Cast(kundennr as unsigned)>0;
den Datentypen unsigned habe ich bei Firebird als Domain angelegt, damit das Programm sowohl unter MySQL als auch unter Firebird läuft und ich keine gesonderten Abfragen benutzen muss. Kennt da wer eine Möglichkeit, wie man das mit der selben Abfrage unter beiden Datenbanken bewerkstelligen kann? |
Re: Max. Integerwert in Varchar anzeigen
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:05 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 by Thomas Breitkreuz