ben ama bir şey eksik olmadığını bilmiyorum ne yapıyorum geçerli:PL/SQL: sayısal ya da değer hatası: karakter dizesi tampon çok küçük% Rowtype
Bir Rowtype döndüren bir işlevi var
myTable_rec myTable%ROWTYPE;
ama prosedürde çağırdığınızda: my prosedürde sonra
FUNCTION myFunc(pChar CHAR) RETURN myTable%ROWTYPE AS
myTable_rec myTable%ROWTYPE;
BEGIN
SELECT col1, col2, col3
INTO myTable_rec.col1
, myTable_rec.col2
, myTable_rec.col3
FROM myTable
WHERE col4 = pChar;
RETURN(myTable_rec);
END B001_03;
(yukarıdaki fonksiyon çağırır), ben ilan
...
myTable_rec := myFunc(someChar);
...
Ben
ORA-06502: PL/SQL: numeric or value error: character string buffer too small
aynı masaya DAN ve AYNI veri türü OF olması gerekiyordu alanlar (benim küçük anlayış gibi) değil misin olsun?
DÜZENLEME: SELECT * ve her çalışmayı denedim. Burada kesinlikle bir şey eksik. Sadece olduğunu bilmiyorum.
Neden Char yerine Varchar2'yi kullanmıyorsunuz? –
wow gerçekten sorunu çözdü. Bir cevap koyun ve en iyi cevap olarak işaretleyeceğim efendim. Beni gerçekten şaşırtan şey, "someChar" ifadesinin aynı tablodan VE sütuntan sorgulanmasıdır. Bu nedenle, aynı veri türü ve sütun uzunluğuna sahip olmasını bekledim. – Incognito