Code:
..
create or alter procedure GETCOMPDETAILS
as
..
begin
select Bezeichnung from dmchange where Field_Name = :column_name into :Bezeich;
select AUS_DET_ID from comp_aus_detail where Bezeichnung = :Bezeich into :DET_ID;
Ich dachte erst an Feldnamendoppellungen welche auch existieren, erklären kann ich es mir nicht.
Das kann durchaus sein, kommt auf die Natur der Felder an, die Du in beiden Selects oben als Einschränkung verwendest.
Nur wenn die Felder Field_Name und Bezeichnung (die ja die einzige Einschränkung sind) unique sind und idealer Weise auch so deklariert sind, dann kann das select immer funktionieren.
Wenn das Datenmodell an der Stelle keine Eindeutigkeit garantiert, brauchst Du weitere Felder zur Einschränkung, bis sichergestellt ist, dass immer 1 oder auch kein Datensatz als Ergebnis kommt.