SQL0501N | A FETCH vagy CLOSE utasításban megadott kurzor nincs megnyitva. |
Magyarázat: A program a következők valamelyikét kísérelte meg: (1) FETCH utasítás végrehajtása, vagy (2) CLOSE utasítás végrehajtása olyan kurzorral, amely nem volt megnyitva.
Az utasítás nem dolgozható föl.
Felhasználói válasz: Ellenőrizze, hogy az előző üzenetek (SQLCODE) között nem volt-e olyan, amely lehet, hogy bezárta a kurzort! Fontos megjegyezni, hogy ha egy kurzort bezártak, akkor a FETCH vagy a CLOSE utasítások az SQLCODE -501 értéket adják vissza!
Ha előzőleg nem érkezett SQLCODE, akkor javítsa ki úgy az alkalmazási programot, hogy a kurzor biztosan meg legyen nyitva a FETCH vagy a CLOSE utasítás végrehajtásakor!
sqlcode: -501
sqlstate: 24501
SQL0502N | Az OPEN utasításban megadott kurzor már nyitva van. |
Magyarázat: A program megpróbált OPEN utasítást végrehajtani egy már előzőleg megnyitott kurzoron.
Az utasítás nem dolgozható föl. A kurzor változatlan maradt.
Felhasználói válasz: Javítsa ki az alkalmazási programot úgy, hogy biztosan ne kísérelje meg OPEN utasítás végrehajtását egy már megnyitott kurzoron!
sqlcode: -502
sqlstate: 24502
SQL0503N | Egy oszlop nem frissíthető, mert nem szerepel a kurzor SELECT utasításának FOR UPDATE tagmondatában. |
Magyarázat: A program egy kurzor használatával megkísérelte egy olyan táblaoszlop egy értékének frissítését, amelyet nem adtak meg a kurzordeklaráció FOR UPDATE tagmondatában, vagy az előkészített SELECT utasításban.
A frissítendő oszlopokat meg kell adni a kurzordeklaráció FOR UPDATE tagmondatában.
Az utasítás nem dolgozható föl.
Felhasználói válasz: Javítsa ki az alkalmazási programot! Ha az oszlopot frissíteni kell, vegye fel a nevét a kurzordeklaráció FOR UPDATE tagmondatába!
sqlcode: -503
sqlstate: 42912
SQL0504N | A kurzor nincs definiálva: "<név>" . |
Magyarázat: Az alkalmazási program UPDATE vagy DELETE WHERE CURRENT OF "<név>" utasítást adott ki, de a "<név>" kurzor nincs deklarálva az alkalmazási programban.
Az utasítás nem dolgozható föl.
Felhasználói válasz: Győződjön meg az alkalmazási program teljességéről és ellenőrizze, hogy helyesen gépelte-e be a kurzorneveket!
sqlcode: -504
sqlstate: 34000
SQL0505N | A kurzor már definiált: "<név>" . |
Magyarázat: A DECLARE utasításban megadott kurzornév már megadásra került.
Az utasítás nem dolgozható föl.
Felhasználói válasz: Ellenőrizze, hogy hibátlanul írta-e a nevet!
SQL0507N | Az UPDATE vagy DELETE utasításban megadott kurzor nincs nyitva. |
Magyarázat: A program megkísérelt UPDATE vagy DELETE WHERE CURRENT OF kurzor utasítást végrehajtani, de a megadott kurzor nem volt megnyitva.
Az utasítás nem dolgozható föl. Nem történt frissítés vagy törlés.
Felhasználói válasz: Ellenőrizze, hogy az előző üzenetek (SQLCODE) között nem volt-e olyan, amely lehet, hogy bezárta a kurzort! Fontos megjegyezni, hogy ha egy kurzor bezárásra került, akkor a FETCH vagy a CLOSE utasítások az SQLCODE -501 értéket adják vissza, az UPDATE és DELETE utasítások pedig az SQLCODE -507-et! Javítsa ki az alkalmazási program logikáját úgy, hogy a megadott kurzor biztosan meg legyen nyitva az UPDATE vagy a DELETE utasítás végrehajtásakor!
sqlcode: -507
sqlstate: 24501
SQL0508N | Az UPDATE vagy DELETE utasításban megadott kurzor nem áll soron. |
Magyarázat: A program megkísérelt UPDATE vagy DELETE WHERE CURRENT OF kurzor utasítást végrehajtani, de a megadott kurzor nem volt objektumtábla sorára állítva. A kurzort a frissítendő vagy törlendő sorra kell állítani.
Sor törlése után a kurzor nincs sorra állítva. Ebbe beletartozik mindenféle mentési ponton belül kurzorhasználat ROLLBACK TO SAVEPOINT végrehajtásakor.
Egyesített rendszer felhasználói: A rekordot egy másik alkalmazás (vagy ezen alkalmazáson belül egy másik kurzor) frissítette vagy törölte egy távoli adatforrásban, ezért a rekord már nem létezik.
Az utasítás nem dolgozható föl. Nem történik adatfrissítés vagy törlés.
Felhasználói válasz: Javítsa ki az alkalmazási program logikáját úgy, hogy az UPDATE vagy DELETE utasítás végrehajtása előtt a kurzor helyesen be legyen állítva az objektumtábla megfelelő sorára! Fontos megjegyezni, hogy a kurzor nincsen sorra állítva, ha a FETCH a következő üzenetet adta vissza: SQL0100W (SQLCODE = 100)!
sqlcode: -508
sqlstate: 24504
SQL0509N | Az UPDATE vagy DELETE utasításban megadott tábla más, mint a kurzor SELECT utasításában szereplő tábla. |
Magyarázat: A program megkísérelt UPDATE vagy DELETE WHERE CURRENT OF kurzor utasítást végrehajtani, de a megnevezett tábla nem egyezett a kurzort deklaráló SELECT utasításban megadott tábla nevével.
Az utasítás nem dolgozható föl.
Felhasználói válasz: Javítsa ki az alkalmazási program logikáját úgy, hogy az UPDATE vagy DELETE utasításban megadott tábla biztosan megegyezzék a kurzordeklarációban megadottal!
sqlcode: -509
sqlstate: 42827
SQL0510N | UPDATE és DELETE nem megengedett a kijelölt kurzorral kapcsolatban. |
Magyarázat: A program megkísérelt UPDATE vagy DELETE WHERE CURRENT OF kurzor utasítást végrehajtani olyan táblán vagy nézet meghatározáson, amely nem engedélyezi a kért frissítési vagy törlési műveletet. Például akkor jelenik meg ilyen hibaüzenet, ha csak olvasható nézetből akar törölni, vagy olyan frissítéskor, ahol a kurzor nem lett megadva a FOR UPDATE tagmondattal.
A nézet akkor csak-olvasható az adatbáziskezelőben, ha a SELECT utasítás
Ezek a feltételek nem vonatkoznak a SELECT utasítás allekérdezéseire.
A kurzor a FOR FETCH ONLY vagy az ORDER BY tagmondat segítségével van megadva.
A kurzor félreérthető és a BLOCKING ALL összerendelési beállítás került megadásra.
Az utasítás nem dolgozható föl.
Felhasználói válasz: Ha az adatbáziskezelő nem hajtja végre az utasítást, és a kurzor csak-olvasható SELECT vagy VALUES utasításon alapul, ne adjon ki rá frissítési vagy törlési utasításokat!
Ha az adatbáziskezelő nem hajtja végre az utasítást, és a kurzor nem csak-olvasható SELECT vagy VALUES utasításon alapul, továbbá FOR FETCH ONLY vagy ORDER BY tagmondattal van megadva, akkor vagy távolítsa el ezt a tagmondatot a kurzordefinícióból, vagy ne adjon ki rá frissítési vagy törlési utasításokat!
Ha az adatbáziskezelő nem hajtja végre az utasítást, és a kurzor meghatározásából vagy a környezetből nem határozható meg, hogy a kurzor csak beolvasásra szolgál, vagy frissíthető is, akkor szerkessze újra a programot a BLOCKING NO vagy a BLOCKING UNAMBIG összerendelési beállítással!
Egyesített rendszer felhasználói: Szűkítse a problémát a kérést meghiúsító adatforrásra (lásd a Hibafelderítés útmutatót a hibás adatforrás felderítésére szolgáló eljárásokról)! Ha egy adatforrás hiúsítja meg a kérést, vizsgálja meg az adatforrás korlátozásait, hogy kideríthesse a hiba okát és a megoldást! Ha a korlátozás egy adatforrásra vonatkozik, nézze át az adott adatforrás SQL leírását, hogy kiderítse, miért nem frissíthető az objektum!
sqlcode: -510
sqlstate: 42828
SQL0511N | A FOR UPDATE tagmondat nem megengedett, mert a kurzorhoz tartozó tábla nem módosítható. |
Magyarázat: A SELECT vagy VALUES utasítás eredménytáblája nem frissíthető.
Az eredménytábla akkor csak-olvasható az adatbáziskezelőben, ha a kurzor VALUES utasításon alapul, vagy a SELECT utasítás a következők bármelyikét tartalmazza:
Ezek a feltételek nem vonatkoznak a SELECT utasítás allekérdezéseire.
Az utasítás nem dolgozható föl.
Felhasználói válasz: Ne hajtson végre frissítéseket a megadott eredménytáblán!
Egyesített rendszer felhasználói: Szűkítse a problémát a kérést meghiúsító adatforrásra (lásd a Hibafelderítés útmutatót a hibás adatforrás felderítésére szolgáló eljárásokról)! Ha egy adatforrás hiúsítja meg a kérést, vizsgálja meg az adatforrás korlátozásait, hogy kideríthesse a hiba okát és a megoldást! Ha a korlátozás egy adatforrásra vonatkozik, nézze át az adott adatforrás SQL leírását, hogy kiderítse, miért nem frissíthető az objektum!
sqlcode: -511
sqlstate: 42829
SQL0513W | Az SQL utasítás egy egész táblát vagy nézetet módosít majd. |
Magyarázat: Az UPDATE vagy DELETE utasítás nem tartalmaz WHERE tagmondatot, ezért a tábla vagy nézet összes sora módosításra kerül az utasítás végrehajtásakor.
Az utasítást elfogadta a rendszer.
Egyesített rendszer felhasználói: Nem minden adatforrások adja ki ezt a figyelmeztetést. A egyesített kiszolgáló megpróbálja kiadni ezt a figyelmeztetést, valahányszor előáll ez a helyzet, de nem biztos, hogy mindig észlelni tudja ezt a feltételt. Ha meg akarja akadályozni, hogy az UPDATE/DELETE műveletek egész táblára vagy nézetre vonatkozzanak, ne bízza magát erre a figyelmeztetésre!
Felhasználói válasz: Ellenőrizze, hogy az egész táblát vagy nézetet módosítani akarja-e!
SQL0514N | A kurzor ("<név>" ) nincs előkészített állapotban. |
Magyarázat: Az alkalmazási program a "<név>" kurzort kísérelte meg használni, de az nem volt előkészített állapotban. A kurzor egy olyan utasításhoz van társítva, amely (1) soha nem volt előkészítve, (2) ROLLBACK utasítás érvénytelenítette, vagy (3) a csomag adatbázishoz való közvetlen vagy közvetett, újbóli hozzárendelése érvénytelenítette.
Az utasítás nem dolgozható föl.
Felhasználói válasz: Az (1)-es esetben készítse elő a "<név>" DECLARE CURSOR utasításában megnevezett utasítást, mielőtt megnyitná a kurzort! A (2)-es esetben ne adjon ki addig ROLLBACK utasítást, amíg nem fejezte be a kurzor használatát! A (3)-as esetben újra végre kell hajtania a kurzor előkészítését.
sqlcode: -514
sqlstate: 26501
SQL0516N | A DESCRIBE utasítás nem előkészített utasítást ad meg. |
Magyarázat: A DESCRIBE utasításban levő utasításnévnek olyan utasítást kell megadnia, amely ugyanabban az adatbázis tranzakcióban lett előkészítve.
Az utasítás nem dolgozható föl.
Felhasználói válasz: Ellenőrizze, hogy az utasításnév olyan utasítást ad-e meg, amely elő van készítve!
sqlcode: -516
sqlstate: 26501
SQL0517N | A kurzor ("<név>" ) olyan előkészített utasítást azonosít, amely nem SELECT vagy VALUES utasítás. |
Magyarázat: A "<név>" kurzor nem használható a megadott módon, mert a kurzordeklarációban megnevezett előkészített utasítás nem SELECT vagy VALUES utasítás volt.
Az utasítás nem dolgozható föl.
Felhasználói válasz: Ellenőrizze, hogy az utasításnév helyesen van-e megadva a "<név>" kurzor PREPARE és DECLARE CURSOR utasításaiban, vagy javítsa ki a programot úgy, hogy csak előkészített SELECT vagy VALUES utasításokat használjon a kurzordeklarációkban!
sqlcode: -517
sqlstate: 07005
SQL0518N | Az EXECUTE utasításban megnevezett utasítás nincs előkészített állapotban, vagy pedig SELECT vagy VALUES utasítás. |
Magyarázat: Az alkalmazási program olyan utasítást próbált meg végrehajtani, amely (1) nem lett soha előkészítve, (2) érvénytelenné vált egy ROLLBACK utasítás nyomán, (3) SELECT vagy VALUES utasítás, vagy (4) érvénytelenné vált a csomag adatbázishoz való közvetlen vagy közvetett, újbóli hozzárendelése miatt.
Az utasítás nem dolgozható föl.
Felhasználói válasz: Az (1)-es esetben készítse elő az utasítást, mielőtt megkísérelné végrehajtani! A (2)-es esetben vagy ne adjon ki addig ROLLBACK utasítást, amíg nem fejezte be az előkészített utasítás használatát, vagy készítse elő újra az utasítást a ROLLBACK után! A (3)-as esetben győződjön meg róla, hogy az utasítás nem SELECT vagy VALUES utasítás! A (4)-es esetben újra végre kell hajtania a kurzor előkészítését.
sqlcode: -518
sqlstate: 07003
SQL0519N | A PREPARE utasítás nyitott kurzor ("<név>" ) SELECT vagy VALUES utasítását tartalmazza. |
Magyarázat: Az alkalmazási program megkísérelte előkészíteni a megadott kurzor SELECT vagy VALUES utasítását, holott a kurzor már nyitva volt.
Az utasítás nem készíthető elő. A kurzor nem változott.
Felhasználói válasz: Javítsa ki az alkalmazási programot úgy, hogy ne kísérelje meg már megnyitott kurzor SELECT vagy VALUES utasítását előkészíteni!
sqlcode: -519
sqlstate: 24506
SQL0525N | Az SQL utasítás nem hajtható végre, mert hibás volt az összerendelési időpontban (rész = "<részszám>" , csomag = "<csomagszám>" konzisztencia vezérjel = X"<konz_vezérjel>" . |
Magyarázat: Az alábbiak egyikét jelenti:
A változók a következők:
Az utasítás nem hajtható végre.
Felhasználói válasz: Ha az SQL utasítás nem hajtható végre a megjelölt helyen, javítsa ki úgy a programot, hogy a hibás utasítás ne hajtódjon végre az adott helyen! Végezze el az előfordítást, a fordítást, és az összerendelést a csomag cseréjéhez! Ha az SQL utasításnak a megjelölt helyen kellene végrehajtódnia, javítsa ki az összerendeléskor talált problémát, és végezze el újra az összerendelést a BIND ACTION(REPLACE) segítségével! Ha a csomagnak több verziója lett összerendelve, adja ki a következő SELECT utasítást a hibás verzió meghatározásához: SELECT VERSION FROM helyazon.SYSIBM.SYSPACKAGE WHERE LOCATION = ' ' AND COLLID = 'collid' AND NAME = 'csomagazon' AND HEX(CONTOKEN) = 'konz_vezérjel'
Ahol:
sqlcode: -525
sqlstate: 51015
SQL0526N | A kért függvény nem vonatkozik deklarált ideiglenes táblákra. |
Magyarázat: A végrehajtás alatt álló SQL utasítás deklarált ideiglenes táblára hivatkozik. Deklarált ideiglenes tábla nem használható az adott környezetben.
Az utasítás nem dolgozható föl.
Felhasználói válasz: Módosítsa úgy az SQL utasítást, hogy az objektumhivatkozások ne hivatkozzanak deklarált ideiglenes táblára!
sqlcode: -526
sqlstate: 42995
SQL0528N | A táblának ("<táblanév>" ) már van egyedi korlátozása, amely másodpéldánya a "<név>" korlátozásnak. |
Magyarázat: Egy UNIQUE tagmondat ugyanazt az oszloplistát használja, mint a PRIMARY KEY tagmondat, egy másik UNIQUE tagmondat vagy a PRIMARY KEY, illetve egy UNIQUE korlátozás, amely már létezik a "<táblanév>" táblához. Ismétlődő egyedi korlátozás használata nem megengedett.
"<név>" a korlátozás neve, ha volt ilyen megadva, vagy létezik. Ha nem lett megadva név a korlátozásnak, "<név>" a UNIQUE tagmondat oszloplistájában levő első oszlopnév, amelyet három pont követ.
Az utasítás nem dolgozható föl.
Felhasználói válasz: Távolítsa el a UNIQUE tagmondat másodpéldányát, vagy változtassa meg az oszloplistát úgy, hogy ne legyen része egy már létező egyedi korlátozásnak!
sqlcode: -528
sqlstate: 42891
SQL0530N | A FOREIGN KEY ("<korlátozásnév>" ) beillesztési vagy frissítési értéke nem egyenlő a szülőtábla egyik szülőkulcsával sem. |
Magyarázat: Az objektumtábla egy idegen kulcsának beállítása történik, de ez az érték nem egyezik meg a szülőtábla szülőkulcsának egyik értékével sem.
Ha sort szúr be egy leszármazott táblába, akkor az idegen kulcs beszúrási értéke meg kell, hogy egyezzék a társított kapcsolat szülőtáblája valamely sora kulcsának értékével.
Ugyanígy, ha egy idegen kulcs frissítése történik, az utasítás befejezésekor az új értéknek meg kell egyeznie a társított kapcsolat szülőtáblája valamely sorának kulcsával.
Egyesített rendszer felhasználói: A korlátozás lehet az adatforrásnál, (ha az utód- és szülőtáblák az adatforrás táblái).
Némely adatforrások nem a megfelelő értékeket szolgáltatja a "<korlátozásnév>" számára. Ebben az esetben, az üzenetjel a következő formátumú lesz: "<adatforrás>:UNKNOWN", azt jelezve, hogy a megadott adatforrás aktuális értéke ismeretlen.
Az utasítás nem hajtható végre. Az objektumtábla tartalma változatlan.
Felhasználói válasz: Vizsgálja meg az idegen kulcs beszúrási vagy frissítési értékét, és hasonlítsa össze a szülőtábla szülőkulcsának összes értékével a hiba meghatározásához és kijavításához!
sqlcode: -530
sqlstate: 23503
SQL0531N | Nem frissíthető a szülőtábla kulcsa a kapcsolat szülő sorában ("<korlátozásnév>" ). |
Magyarázat: Egy művelet megpróbálta frissíteni a szülőtábla sorának egy kulcsát, de a megadott sorban levő kulcshoz tartoznak függő sorok a leszármazott táblában, amely a "<korlátozásnév>" korlátozásban lett hozzárendelve.
Ha a "<korlátozásnév>" korlátozás frissítési szabálya NO ACTION, akkor, ha az utasítás befejezésekor függő sorai vannak a szülő sornak, a szülőtábla kulcsának értéke nem frissíthető.
Ha a "<korlátozásnév>" korlátozás frissítési szabálya RESTRICT, akkor, ha a szülőtábla szülőkulcsának frissítésekor függő sorai vannak a szülő sornak, a szülőtábla kulcsának értéke nem frissíthető.
Egyesített rendszer felhasználói: A korlátozás lehet az adatforrásnál, (ha az utód- és szülőtáblák az adatforrás táblái).
Némely adatforrások nem a megfelelő értékeket szolgáltatja a "<korlátozásnév>" számára. Ebben az esetben, az üzenetjel a következő formátumú lesz: "<adatforrás>:UNKNOWN", azt jelezve, hogy a megadott adatforrás aktuális értéke ismeretlen.
Az utasítás nem hajtható végre. A szülőtábla tartalma változatlan.
Felhasználói válasz: Vizsgálja meg az objektumtábla kulcsát és a leszármazott tábla idegen kulcsát annak meghatározásához, hogy a szülőtábla kulcsa megadott sorának meg kell-e változtatni az értékét! Ha ez nem mutatja meg a hibát, vizsgálja meg az objektumtábla és a leszármazott tábla tartalmát a hiba meghatározásához és kijavításához!
sqlcode: -531
sqlstate: 23001, 23504
SQL0532N | Nem törölhető egy szülő sor, mert a kapcsolat ("<korlátozásnév>" ) tiltja a törlést. |
Magyarázat: Egy művelet megkísérelte törölni a szülőtábla megadott sorát, de a sor kulcsának függő sorai vannak a "<korlátozásnév>" hivatkozáskorlátozásban, és a törlési szabály NO ACTION vagy RESTRICT a kapcsolatra.
Ha a "<korlátozásnév>" korlátozás törlési szabálya NO ACTION, akkor a szülőtábla sora nem törölhető, ha a függő sorok az utasítás befejezésekor is függnek a szülőtábla kulcsától.
Ha a "<korlátozásnév>" korlátozás törlési szabálya RESTRICT, akkor a szülőtábla sora nem törölhető, ha függő sora van a törléskor.
Megjegyzendő, hogy egy törlés további sorokat is törölhet azokban a leszármazott táblákban, amelyeknek NO ACTION vagy RESTRICT törlési szabályai vannak. Következésképpen a "<korlátozásnév>" korlátozás más táblán is lehet, mint az eredeti törlés művelet.
Egyesített rendszer felhasználói: A korlátozás lehet az adatforrásnál, (ha az utód- és szülőtáblák az adatforrás táblái).
Némely adatforrások nem a megfelelő értékeket szolgáltatja a "<korlátozásnév>" számára. Ezekben az esetekben a megfelelő mezők olyan értékeket tartalmaznak, (mint például "unknown"), amelyek azt jelzik, hogy a tényleges érték ismeretlen.
Az utasítás nem hajtható végre. A tábla tartalma változatlan.
Felhasználói válasz: Vizsgálja meg a leszármazott táblák törlési szabályait a hiba meghatározásához és kijavításához! A szereplő táblákat a "<korlátozásnév>" kapcsolatból lehet meghatározni.
sqlcode: -532
sqlstate: 23001, 23504
SQL0533N | Érvénytelen az INSERT utasítás, mert a kapcsolat az egyesített kiválasztás eredményét egy sorra korlátozza. |
Magyarázat: Egy, egyesített kiválasztással rendelkező INSERT művelet megkísérelt több sort beszúrni egy olyan táblába, amely szülő és leszármazott tábla is egy hivatkozáskorlátozás kapcsolatában.
Az INSERT művelet egyesített kiválasztása legfeljebb egy sornyi adatot adhat vissza.
Az INSERT utasítás nem hajtható végre. Az objektumtábla tartalma változatlan.
Egyesített rendszer felhasználói: A korlátozás lehet az adatforrásnál, (ha az utód- és szülőtáblák az adatforrás táblái).
Felhasználói válasz: Vizsgálja meg az egyesített kiválasztás keresési feltételeit annak biztosításához, hogy legfeljebb csak egy sor legyen kiválasztva!
sqlcode: -533
sqlstate: 21501
SQL0534N | Érvénytelen többsoros frissítés. |
Magyarázat: Egy UPDATE műveleti megkísérelt többsoros frissítést végrehajtani olyan oszlopon, amely benne van egy elsődleges kulcsban vagy egyedi indexben.
Elsődleges kulcs vagy egyedi index oszlopainak többsoros frissítése nem támogatott.
Az UPDATE utasítás nem hajtható végre. A tábla tartalma változatlan.
Egyesített rendszer felhasználói: A korlátozás lehet a egyesített kiszolgáló-nél (ha az utód- és szülőtáblák egyesített kiszolgáló táblákként léteznek), vagy lehet az adatforrásnál, (ha az utód- és szülőtáblák az adatforrás táblái).
Felhasználói válasz: Győződjék meg róla, hogy az UPDATE utasítás keresési feltételei csak egy frissítendő sort választanak ki az objektumtáblából!
sqlcode: -534
sqlstate: 21502
SQL0535N | Érvénytelen a DELETE utasítás, mert egy önmagára hivatkozó kapcsolat a törlést egy sorra korlátozza. |
Magyarázat: Egy WHERE tagmondattal rendelkező DELETE művelet megkísérelt több sort törölni olyan táblából, amely szülő és leszármazott tábla is egy hivatkozáskorlátozás kapcsolatában, és RESTRICT vagy SET NULL törlési szabállyal rendelkezik.
A DELETE művelet WHERE tagmondatának legfeljebb egy sort kellene kiválasztania.
A DELETE utasítás nem hajtható végre. Az objektumtábla tartalma változatlan.
Egyesített rendszer felhasználói: A korlátozás lehet az adatforrásnál, (ha az utód- és szülőtáblák az adatforrás táblái).
Felhasználói válasz: Vizsgálja meg a WHERE tagmondat keresési feltételét, hogy ellenőrizze, hogy legfeljebb egy sor van-e kiválasztva!
MEGJEGYZÉS: Ez a korlátozás csak a DB2 2-es verzió előtti verzióira vonatkozik.
sqlcode: -535
sqlstate: 21504
SQL0536N | Érvénytelen a DELETE utasítás, mert egy másik táblát ("<név>" ) is érinthet a művelet. |
Magyarázat: Kísérlet történt DELETE művelet végrehajtására a megjelölt táblára, amelyre egy allekérdezés hivatkozik.
A DELETE utasítás egy allekérdezésében hivatkozott tábla érintett lehet, mert vagy:
Egyesített rendszer felhasználói: A korlátozás lehet az adatforrásnál, (ha az utód- és szülőtáblák az adatforrás táblái).
Némely adatforrások nem a megfelelő értékeket szolgáltatja a "<név>" számára. Ezekben az esetekben a megfelelő mezők olyan értékeket tartalmaznak, (mint például "unknown"), amelyek azt jelzik, hogy a tényleges érték ismeretlen.
Az utasítás nem dolgozható fel.
Felhasználói válasz: Ne hivatkozzék olyan táblára a DELETE utasítás allekérdezésében, amelyet érinthet a DELETE utasítás!
Megjegyzés: Ez a hiba csak a DB2 2-es verzió előtti verzióira és a DB2 Connect-en keresztül elért gazdagépekre vonatkozik.
sqlcode: -536
sqlstate: 42914
SQL0537N | A PRIMARY KEY tagmondat, FOREIGN KEY tagmondat, UNIQUE tagmondat vagy PARTITIONING KEY tagmondat többször tartalmazza az oszlopot: "<név>" . |
Magyarázat: A "<név>" oszlop egynél többször szerepel egy CREATE vagy ALTER utasítás PRIMARY KEY tagmondatában, FOREIGN KEY tagmondatában, UNIQUE tagmondatában vagy PARTITIONING KEY tagmondatában.
Egyesített rendszer felhasználói: A korlátozás lehet az adatforrásnál, (ha az utód- és szülőtáblák az adatforrás táblái).
Némely adatforrások nem a megfelelő értékeket szolgáltatja a "<név>" számára. Ezekben az esetekben a megfelelő mezők olyan értékeket tartalmaznak, (mint például "unknown"), amelyek azt jelzik, hogy a tényleges érték ismeretlen.
Az utasítás nem dolgozható föl.
Felhasználói válasz: Adjon egyedi neveket az oszlopoknak!
sqlcode: -537
sqlstate: 42709
SQL0538N | A FOREIGN KEY ("<név>" ) nem felel meg a "<táblanév>" tábla szülőkulcs leírásának. |
Magyarázat: A megjelölt idegen kulcs definíciója nem felel meg a "<táblanév>" táblához tartozó szülőkulcs leírásának.
A lehetséges hibák:
"<név>" a korlátozás neve, ha meg van adva a FOREIGN KEY tagmondatban. Ha nem adtak nevet a korlátozásnak, "<név>" a tagmondatban levő első oszlopnév, amelyet három pont követ.
Egyesített rendszer felhasználói: némely adatforrások nem a megfelelő értékeket szolgáltatja a "<név>" és a "<táblanév>" számára. Ezekben az esetekben a megfelelő mezők olyan értékeket tartalmaznak, (mint például "unknown"), amelyek azt jelzik, hogy a tényleges érték ismeretlen.
A korlátozás lehet az adatforrásnál, (ha az utód- és szülőtáblák az adatforrás táblái).
Az utasítás nem dolgozható föl.
Felhasználói válasz: Javítsa ki az utasítást úgy, hogy az idegen kulcs leírása megfeleljen a szülőtáblához tartozó kulcs leírásának!
sqlcode: -538
sqlstate: 42830
SQL0539N | A táblában ("<név>" ) nincs "<kulcstípus>" kulcs. |
Magyarázat: A következők egyike történt:
Egyesített rendszer felhasználói: A korlátozás lehet az adatforrásnál, (ha az utód- és szülőtáblák az adatforrás táblái).
Némely adatforrások nem a megfelelő értékeket szolgáltatja a "<név>" és a "<kulcstípus>" számára. Ezekben az esetekben a megfelelő mezők olyan értékeket tartalmaznak, (mint például "unknown"), amelyek azt jelzik, hogy a tényleges érték ismeretlen.
Az utasítás nem dolgozható föl. Rendszerkatalógus nem adható meg szülőként egy hivatkozáskorlátozásban.
Felhasználói válasz: Hivatkozáskorlátozás létrehozásakor adja meg az elsődleges kulcsot, mielőtt idegen kulcsokat (korlátozásokat) adna meg!
sqlcode: -539
sqlstate: 42888
SQL0540N | A "<táblanév>" tábla definíciója hiányos, mert nincs benne elsődleges index vagy a szükséges egyedi index. |
Magyarázat: A megnevezett tábla PRIMARY KEY vagy UNIQUE tagmondattal lett megadva. A definíciója hiányos, és nem lehet addig használni, amíg meg nem ad egyedi indexet az elsődleges kulcshoz (az elsődleges index), illetve a UNIQUE tagmondatokban szereplő oszlopokhoz (a szükséges egyedi indexek). Kísérlet történt a tábla használatára egy FOREIGN KEY tagmondatban vagy egy SQL kezelő utasításban.
Az utasítás nem hajtható végre.
Felhasználói válasz: Adjon meg elsődleges indexet vagy szükséges egyedi indexet a táblán mielőtt hivatkozna rá!
sqlcode: -540
sqlstate: 57001
SQL0541W | A hivatkozási, elsődleges kulcs vagy egyedi korlátozás ("<név>" ) hatástalan, mert ismétlődő korlátozás. |
Magyarázat: Ha a "<név>" egy hivatkozáskorlátozást azonosít, akkor egy FOREIGN KEY tagmondat ugyanazt az idegen kulcsot és szülőtáblát használja, mint egy másik FOREIGN KEY tagmondat.
Ha a "<név>" egy elsődleges kulcsra vagy egyedi korlátozásra hivatkozik, akkor a következő helyzetek egyike áll fenn
"<név>" a korlátozás neve, ha meg van adva. Ha nem adtak nevet a korlátozásnak, "<név>" a FOREIGN KEY vagy UNIQUE tagmondat oszloplistájában levő első oszlopnév, amelyet három pont követ.
Egyesített rendszer felhasználói: A korlátozás lehet az adatforrásnál, (ha az utód- és szülőtáblák az adatforrás táblái).
Némely adatforrások nem a megfelelő értékeket szolgáltatja a "<név>" számára. Ezekben az esetekben a megfelelő mezők olyan értékeket tartalmaznak, (mint például "unknown"), amelyek azt jelzik, hogy a tényleges érték ismeretlen.
A megjelölt hivatkozáskorlátozás vagy egyedi korlátozás nem jött létre. Az utasítás feldolgozása sikeres volt.
Felhasználói válasz: Nem kell semmit sem tennie. A feldolgozás folytatódhat.
sqlcode: +541
sqlstate: 01543
SQL0542N | "<név>" nem lehet sem elsődleges kulcs, sem egyedi kulcs oszlopa, mert üres értékeket tartalmazhat. |
Magyarázat: A PRIMARY KEY vagy UNIQUE tagmondatban azonosított "<név>" oszlopban lehetnek üres értékek.
Egyesített rendszer felhasználói: némely adatforrások nem a megfelelő értékeket szolgáltatja a "<név>" számára. Ezekben az esetekben a megfelelő mezők olyan értékeket tartalmaznak, (mint például "unknown"), amelyek azt jelzik, hogy a tényleges érték ismeretlen.
Az utasítás nem dolgozható föl.
Felhasználói válasz: Javítsa ki az oszlopot, az elsődleges kulcs vagy az egyedi kulcs definícióját!
sqlcode: -542
sqlstate: 42831
SQL0543N | Nem törölhető egy szülőtáblabeli sor, mert az ellenőrző korlátozás ("<korlátozásnév>" ) tiltja a törlést. |
Magyarázat: A törlés művelet nem hajtható végre, mert a cél tábla szülőtábla, és egy leszármazott táblához van kapcsolva egy hivatkozáskorlátozással, amelynek SET NULL a törlési szabálya. Egy, a leszármazott táblán megadott ellenőrző korlát miatt azonban az oszlopban nem lehetnek az üres értékek.
Az utasítás nem dolgozható föl.
Felhasználói válasz: Vizsgálja meg az idegen kulcsot és a törlési szabályát a leszármazott táblában, illetve az ütköző ellenőrző korlátot! Változtassa meg a törlési szabályt vagy az ellenőrző korlátot úgy, hogy ne ütközzenek egymással!
sqlcode: -543
sqlstate: 23511
SQL0544N | Nem vehető fel az ellenőrző korlátozás ("<korlátozásnév>" ), mert a tábla egyik sora sérti a korlátozást. |
Magyarázat: A táblának legalább egy létező sora megsérti az ALTER TABLE utasításban felveendő ellenőrző korlátozást.
Az utasítás nem dolgozható föl.
Felhasználói válasz: Vizsgálja meg az ALTER TABLE utasításban megadott ellenőrző korlátozás megadását és a tábla adatait annak meghatározásához, hogy mi sérti meg a korlátozást! Változtassa meg az ellenőrző korlátozást vagy az adatokat úgy, hogy ne sérüljön a korlátozás!
sqlcode: -544
sqlstate: 23512
SQL0545N | A kért művelet nem megengedett, mert egy sor nem felel meg a ellenőrzési korlátozásnak: "<korlátozásnév>" . |
Magyarázat: Ellenőrzési korlátozás megsértések léphetnek fel INSERT vagy UPDATE műveleteknél. Az eredménysor megsértette a tábla ellenőrzési korlátozásának megadását.
Az utasítás nem dolgozható föl.
Felhasználói válasz: Vizsgálja meg az adatokat és a SYSCAT.CHECKS katalógusnézetben az ellenőrző korlátmegadást annak meghatározásához, hogy miért hiúsult meg az INSERT vagy az UPDATE utasítás! Változtassa meg az adatokat úgy, hogy ne sérüljön a korlátozás!
sqlcode: -545
sqlstate: 23513
SQL0546N | Érvénytelen ellenőrzési korlátozás: "<korlátozásnév>" . |
Magyarázat: A következő okok közül egy vagy több miatt a CREATE TABLE vagy ALTER TABLE utasításban érvénytelen az ellenőrzési korlátozás:
Az utasítás nem dolgozható föl.
Felhasználói válasz: A hiba okától függően a következő felhasználói műveletet kell végrehajtani:
sqlcode: -546
sqlstate: 42621
SQL0548N | A "<ellenőrzési feltétel elem>" használatával megadott ellenőrzési korlátozás érvénytelen. |
Magyarázat: A következő okok közül egy vagy több miatt a CREATE TABLE vagy ALTER TABLE utasításban érvénytelen az ellenőrzési korlátozás:
A hibaüzenet szövegében levő vezérjel mutatja meg az érvénytelen elemet.
Az utasítás nem dolgozható föl.
Felhasználói válasz: A hiba okától függően a következő felhasználói műveletet kell végrehajtani:
sqlcode: -548
sqlstate: 42621.
SQL0549N | Az "<utasítás>" utasítás nem engedélyezett az "<1.objektumtípusú>" "<1.objemtumnévre>", mert a DYNAMICRULES(BIND) összerendelési beállítás érvényes az "<2.objektumtípusú>" objektumokra. |
Magyarázat: Egy program megkísérelte a jelzett SQL utasítást kiadni, amely olyan SQL utasítások egyike, amelyet nem lehet olyan csomagból vagy tervből kiadni, amelyekre a DYNAMICRULES(BIND) beállítás érvényes. Ezek az SQL utasítások:
Felhasználói válasz: Tegye az alábbi műveletek egyikét a hiba kijavításához:
sqlstate: 42509
SQL0551N | Az "<jogosultságazonosító>" nem rendelkezik a megfelelő jogosultsággal a "<művelet>" művelet végrehajtásához a "<név>" objektumon. |
Magyarázat: A "<jogosultságazonosító>" jogosultságazonosító "<művelet>" műveletet kísérelt meg végrehajtani a "<név>" objektumon, de nem rendelkezik a megfelelő jogosultsággal.
Ha hivatkozáskorlátozással rendelkező táblát hoz létre vagy változtat meg, ez az üzenet (SQLCODE) azt jelezheti, hogy a felhasználónak nincs REFERENCES jogosultsága FOREIGN KEY létrehozására vagy eldobására. Ebben az esetben "<művelet>" "REFERENCES", és "<név>" az az objektum, amelyre a korlátozás hivatkozik.
Ha DB2 segédprogramot vagy CLI alkalmazást próbál futtatni, a DB2 segédprogramokat lehet, hogy újra hozzá kell rendelni az adatbázishoz, mert az adatbázist létrehozó felhasználói azonosító már nem létezik, vagy már nem rendelkezik a szükséges jogosultságokkal.
Egyesített rendszer felhasználói: ha ez az üzenet jelenik meg, amikor a felhasználó módosítja a SYSCAT.USEROPTIONS tábla távoli_jelszó oszlopát, akkor a felhasználónak nincs felhatalmazása arra, hogy egy másik felhasználó jelszavát módosítsa. A módosítást végző felhasználónak vagy SYSADM jogosultsággal kell rendelkeznie, vagy olyan jogosultságazonosítóval (ez a USER különleges regiszter értéke), amely egyezik a frissítendő sorok jogaz oszlopának értékével. Némely adatforrások nem a megfelelő értékeket szolgáltatja "<jog_azon>", <művelet> és <név> számára. Ebben az esetben az üzenetjel a következő formátumú lesz: "<adatforrás> AUTHID:UNKNOWN", "UNKNOWN", és "<adatforrás>:TABLE/VIEW", jelezvén, hogy az authid, művelet és a név értékei ismeretlenek az adatforráson.
Az utasítás nem dolgozható föl.
Felhasználói válasz: Biztosítsa, hogy "<jogosultságazonosító>" rendelkezzen a művelet végrehajtásához szükséges felhatalmazással!
Egyesített rendszer felhasználói: Ez a felhatalmazás lehet a egyesített kiszolgáló-nél, az adatforrásnál vagy mindkettőnél.
Ha a DB2 segédprogramokat újra hozzá kell rendelni az adatbázishoz, az adatbázis adminisztrátora ezt a következő CLP parancsok valamelyikének a példány bnd alkönyvtárából való kiadásával teheti meg (ehhez összeköttetésben kell állni az adatbázissal):
sqlcode: -551
sqlstate: 42501
SQL0552N | Az "<jogosultságazonosító>" nem rendelkezik a megfelelő jogosultsággal a "<művelet>" művelet végrehajtásához. |
Magyarázat: A "<jogosultságazonosító>" jogosultságazonosító "<művelet>" műveletet kísérelt meg végrehajtani, de nem rendelkezik a megfelelő jogosultsággal.
Egyesített rendszer felhasználói: némely adatforrások nem a megfelelő értékeket szolgáltatja a "<felhatalmazás_azonosító>" és a <művelet> számára. Ebben az esetben az üzenetjel a következő formátumú lesz: "<adatforrás> AUTHID:UNKNOWN", és "UNKNOWN", jelezvén, hogy a jogosultság azonosító és a művelet értékei ismeretlenek az adatforráson.
Az utasítás nem dolgozható föl.
Felhasználói válasz: Biztosítsa, hogy "<jogosultságazonosító>" rendelkezzen a művelet végrehajtásához szükséges felhatalmazással!
Egyesített rendszer felhasználói: Ez a felhatalmazás lehet a egyesített kiszolgáló-nél, az adatforrásnál vagy mindkettőnél.
sqlcode: -552
sqlstate: 42502
SQL0553N | "<sémanév>" sémanévvel nem hozható létre objektum. |
Magyarázat: A "<sémanév>" sémanév érvénytelenségének oka a létrehozandó objektum típusától függ.
Az utasítás nem dolgozható föl.
Felhasználói válasz: Használjon érvényes sémanevet, vagy távolítsa el a kifejezett sémanevet és futtassa újra az utasítást!
sqlcode: -553
sqlstate: 42939
SQL0554N | Egy felhatalmazás azonosító nem adhat jogosultságot önmagának. |
Magyarázat: Egy felhatalmazás azonosító olyan GRANT utasítást kísérelt meg végrehajtani, amelyben a felhatalmazás azonosítók listájának egyik eleme maga a felhatalmazás azonosító volt (a felhatalmazás azonosítók listája azon felhatalmazás azonosítókat tartalmazta, amelyek a jogosultságokat kapják).
Az utasítás nem dolgozható föl.
Felhasználói válasz: Távolítsa el a felhatalmazás azonosítót a listából!
sqlcode: -554
sqlstate: 42502
SQL0555N | Egy felhatalmazás azonosító nem vonhat vissza jogosultságot önmagától. |
Magyarázat: Egy felhatalmazás azonosító olyan REVOKE utasítást kísérelt meg végrehajtani, amelyben a felhatalmazás azonosítók listájának egyik eleme maga a felhatalmazás azonosító volt (a felhatalmazás azonosítók listája azon felhatalmazás azonosítókat tartalmazta, amelyek jogosultságait vissza kell vonni).
Az utasítás nem dolgozható föl.
Felhasználói válasz: Távolítsa el a felhatalmazás azonosítót a listából!
sqlcode: -555
sqlstate: 42502
SQL0556N | "<jogosultságazonosító>" egyik jogosultságának visszavonására tett kísérletet "<jogosultságazonosító>" , de erre nem jogosult, ezért a rendszer visszautasította. |
Magyarázat: A jogosultság nem vonható vissza, mert a "<jogosultságazonosító>" nem rendelkezik ezzel a jogosultsággal.
Az utasítás nem dolgozható föl.
Felhasználói válasz: Változtassa meg a REVOKE utasítást úgy, hogy megfeleljen a visszavonási szabályoknak, és adja ki újra az utasítást! Győződjék meg róla, hogy amikor egy REVOKE utasítás több visszavonandó jogosultságot és jogosultságazonosítót sorol fel, mindegyik azonosító a megadott jogosultságok közül legalább eggyel rendelkezik!
sqlcode: -556
sqlstate: 42504
SQL0557N | A jogosultságok kijelölt kombinációja nem adható és nem vonható vissza. |
Magyarázat: A következők egyike történt:
Az utasítás nem dolgozható föl.
Felhasználói válasz: Javítsa ki és küldje el újra az utasítást!
sqlcode: -557
sqlstate: 42852
SQL0558N | "<jogosultságazonosító>" egyik jogosultságának visszavonására tett kísérletet "<jogosultságazonosító>" , de továbbra is fenntartja a "<vezérlés>" jogosultságot, ezért a rendszer visszautasította. |
Magyarázat: A "<jogosultságazonosító>" tartja fenn a "<vezérlés>" jogosultságot. A visszavonandó jogosultság a "<vezérlés>" jogosultságban foglaltatik, így nem vonható vissza, hacsak a "<vezérlés>" jogosultságot is vissza nem vonják.
A "<vezérlés>" érvényes értékei a következők:
Az utasítás nem hajtható végre. Nem történt jogosultság-visszavonás.
Felhasználói válasz: Igény szerint vonja vissza a "<vezérlés>" jogosultságot is!
sqlcode: -558
sqlstate: 42504
SQL0562N | A kijelölt adatbázis-jogosultságok nem adhatók meg PUBLIC-ként. |
Magyarázat: A GRANT utasítás megkísérelt adatbázis jogosultságot adni a foglalt PUBLIC (nyilvános) jogosultságazonosítónak. DBADM jogosultság nem adható PUBLIC-nak (nyilvános).
Az utasítás nem dolgozható föl.
Felhasználói válasz: A bennfoglalt függvény nem támogatott.
sqlcode: -562
sqlstate: 42508
SQL0567N | Érvénytelen jogosultságazonosító: "<jogosultságazonosító>" . |
Magyarázat: A "<jogosultságazonosító>" által megadott jogosultságazonosító nem érvényes az alábbi okok egyike miatt:
Az utasítás nem dolgozható föl.
Felhasználói válasz: Javítsa ki az érvénytelen jogosultságazonosítót!
sqlcode: -567
sqlstate: 42602
SQL0569N | A GRANT/REVOKE utasítás meghiúsult, mert "<jogosultságnév>" esetleg felhasználót és csoportot is azonosít a rendszerben. |
Magyarázat: A GRANT vagy REVOKE utasítás olyan jogosultságnevet adott meg, amely esetleg felhasználót és csoportot is azonosít a biztonsági névtartományban, és nem szerepelt USER vagy GROUP kulcsszó az utasításban. Az utasítás ezért kétértelmű. Ne feledje, hogy DCE védelem használata esetén a USER vagy GROUP kulcsszóra mindig szükség van!
Felhasználói válasz: Változtassa meg az utasítást úgy, hogy megadja a USER vagy a GROUP kulcsszót a kívánt jogosultságazonosító azonosításához!
sqlcode: -569
sqlstate: 56092
SQL0570W | A rendszer nem adta meg az összes kért jogosultságot az objektumra ("<objektumnév>" , típus: "<objektumtípus>" ). |
Magyarázat: Kísérlet történt GRANT művelet végrehajtására az "<objektumtípus>" típusú "<objektumnév>" objektumon, de néhány, vagy az összes jogosultság megadása sikertelen volt. Az utasítást kiadó jogosultságazonosítónak nincs adási (grant) beállítása az összes megadandó jogosultságra, vagy nincs DBADM jogosultsága.
Minden a érvényesen kért jogosultság odaítélve.
Felhasználói válasz: Szerezze meg a szükséges jogosultságot és próbálkozzék újra a művelettel!
sqlcode: +570
sqlstate: 01007
SQL0572N | Működésképtelen csomag: "<csomagnév>" . |
Magyarázat: A "<csomagnév>" csomag megjelölése működésképtelen, és újra hozzá kell rendelni az adatbázishoz annak érdekében, hogy használható legyen. A csomag nem használható, mert egy vagy több olyan felhasználó által megadott függvény, amelytől függ, eldobásra került.
Felhasználói válasz: Rendelje össze újra az adatbázissal a megnevezett csomagot a REBIND vagy a BIND parancs használatával!
sqlcode: -572
sqlstate: 51028
SQL0573N | A korlátozás ("<név>" ) REFERENCES tagmondatában megadott oszloplista nem a szülőtábla ("<táblanév>" ) UNIQUE korlátozását adja meg. |
Magyarázat: A "<név>" korlátozás REFERENCES tagmondatában olyan oszlopnév-lista került megadásra, amely nem egyezik a hivatkozott, "<táblanév>" nevű tábla elsődleges kulcsának vagy bármely egyedi kulcsának oszlopneveivel.
"<név>" a korlátozás neve, ha meg van adva. Ha nincs korlátozásnév megadva, "<név>" a FOREIGN KEY tagmondat oszloplistájában levő első oszlopnév, amelyet három pont követ.
Az utasítás nem dolgozható föl.
Felhasználói válasz: Javítsa ki az oszloplistát a hivatkozási tagmondatban, vagy adja hozzá az egyedi korlátozást a hivatkozott táblához!
sqlcode: -573
sqlstate: 42890
SQL0574N | DEFAULT vagy IDENTITY érték nem érvényes a tábla megadott oszlopa esetén ("<oszlopnév>" a "<táblanév>" táblában). Okkód: "<okkód>" |
Magyarázat: DEFAULT érték vagy IDENTITY tulajdonságérték nem érvényes a tábla megadott oszlopa esetén ("<oszlopnév>" a "<táblanév>" táblában). A lehetséges okkódok a következők:
Az utasítás nem dolgozható föl.
Felhasználói válasz: Javítsa ki a DEFAULT vagy az IDENTITY értéket a visszaadott okkód alapján!
sqlcode: -574
sqlstate: 42894
SQL0575N | A "<név>" nevű nézet vagy összegzőtábla nem használható, mert működésképtelen jelölést kapott. |
Magyarázat: A "<név>" nevű nézet vagy összegzőtábla azért kapott működésképtelen jelölést, mert egy a működéséhez szükséges tábla, nézet, fedőnév vagy jogosultság törlésre került. A nézetet csak a következő SQL utasítások használhatják:
Az utasítás nem dolgozható föl.
Felhasználói válasz: Ha "<név>" egy nézet, akkor hozza létre újra úgy, hogy kiadja a CREATE VIEW utasítást a működésképtelen nézet definíciójával megegyező nézetdefinícióval! Ha "<név>" összegzőtábla, akkor hozza létre újra úgy, hogy kiadja a CREATE TABLE utasítást a működésképtelen összegzőtáblánál használt meghatározással egyezően.
sqlcode: -575
sqlstate: 51024
SQL0576N | "<név2>" számára nem hozható létre "<név>" fedőnév, mert az ismétlődő fedőnévláncot eredményezne. |
Magyarázat: A "<név>" fedőnév "<név2>" névvel való megadása olyan ismétlődő fedőnévláncot eredményezett volna, amelyet soha nem lehetne feloldani. Ilyen feloldhatatlan, ismétlődő fedőnévlánc például a következő: "A fedőnév a B fedőnévre hivatkozik, ami az A fedőnévre hivatkozik".
Az utasítás nem dolgozható föl.
Felhasználói válasz: Változtassa meg a "<név>" fedőnév definícióját, vagy változtassa meg egy másik fedőnév definícióját a fedőnévláncban az ismétlődés elkerülése végett!
sqlcode: -576
sqlstate: 42916
SQL0577N | A felhasználó által megadott függvény ("<függvénynév>", sajátos neve "<sajátos név>") adatokat próbált meg módosítani, de nem MODIFIES SQL DATA-ként adták meg. |
Magyarázat: A felhasználó által megadott függvény törzsének megvalósítására használt programban nem módosíthatók SQL adatok.
Felhasználói válasz: Távolítsa el az adatmódosító SQL utasításokat, és fordítsa újra a programot! Tárolt eljárások esetén vizsgálja meg az SQL megengedett szintjét, ahogy az a CREATE PROCEDURE utasításban is szerepel!
sqlcode: -577
sqlstate: 38002
sqlstate: 42985
SQL0579N | A felhasználó által megadott függvény ("<függvénynév>", sajátos neve "<sajátos név>") adatokat próbált meg olvasni, de nem READ SQL DATA-ként vagy MODIFIES SQL DATA-ként adták meg. |
Magyarázat: A felhasználó által megadott függvény törzsének megvalósítására használt programban nem olvashatók SQL adatok.
Felhasználói válasz: Távolítsa el az adatokat olvasó SQL utasításokat, és fordítsa újra a programot! Tárolt eljárások esetén vizsgálja meg az SQL megengedett szintjét, ahogy az a CREATE PROCEDURE utasításban is szerepel!
sqlcode: -579
sqlstate: 38004
sqlstate: 42985
SQL0580N | CASE szerkezetnek nem lehet az összes eredménykifejezése NULL. |
Magyarázat: Olyan CASE szerkezet van az utasításban, amelyhez tartozó összes eredménykifejezés (a THEN és ELSE kulcsszavakat követő kifejezések) értéke NULL.
Az utasítás nem dolgozható föl.
Felhasználói válasz: Változtassa meg a CASE szerkezetet úgy, hogy legalább egy eredménykifejezés különbözzék a NULL kulcsszótól!
sqlcode: -580
sqlstate: 42625
SQL0581N | Egy CASE szerkezet eredménykifejezéseinek adattípusai nem kompatíbilisek. |
Magyarázat: Olyan CASE szerkezet van az utasításban, amelynek olyan eredménykifejezései (a THEN és ELSE kulcsszavakat követő kifejezések) vannak, amelyek nem kompatíbilisek.
A CASE szerkezet adattípusát a "Szabályok az eredmények adattípusára" az eredménykifejezésekre való alkalmazásával lehet meghatározni. Az eredménykifejezések adattípusai a következő okok valamelyike miatt lehetnek inkompatíbilisek:
Az utasítás nem dolgozható föl.
Felhasználói válasz: Javítsa ki úgy az eredménykifejezéseket, hogy kompatíbilisek legyenek!
sqlcode: -581
sqlstate: 42804
SQL0582N | VALUES tagmondatban, IN predikátumban, GROUP BY vagy ORDER BY tagmondatban szereplő CASE szerkezet nem tartalmazhat mennyiségpredikátumot, egyesített kiválasztást alkalmazó IN predikátumot és EXISTS predikátumot. |
Magyarázat: A CASE szerkezet keresési feltétele:
és a CASE szerkezet része:
Az ilyen CASE szerkezetek nem támogatottak. Lehet, hogy a CASE szerkezet SQL-ben írt függvény része.
Az utasítás nem dolgozható föl.
Felhasználói válasz: Távolítsa el a mennyiségpredikátumot, az IN predikátumot vagy az EXISTS predikátumot a CASE szerkezetből! Ha a CASE szerkezet egy függvény része, lehet, hogy a lekérdezésből ki kell hagyni a hibát okozó függvényt.
sqlcode: -582
sqlstate: 42625
SQL0583N | A rutin használata ("<függvénynév>" ) érvénytelen, mert vagy nem-determinisztikus, vagy külső művelete van. |
Magyarázat: A rutin (függvény vagy metódus) ("<rutinnév>") definíciója szerint nem-determinisztikus rutin vagy külső műveletet tartalmaz. Az ilyen típusú rutin ebben a környezetben nem használható. A következő környezetekben nem támogatottak az ilyen függvények:
Az utasítás nem dolgozható föl.
Felhasználói válasz: Ha a nem-determinisztikus vagy külső művelettel rendelkező rutin használata nem volt szándékos, ilyen jellemzők nélküli rutint használjon! Ha a nem-determinisztikus vagy külső művelettel rendelkező rutin használata szándékos, akkor az utasítások más formátumát használja, amely kifejezi ezt a szándékot!
sqlcode: -583
sqlstate: 42845
SQL0584N | NULL vagy DEFAULT érvénytelen használata. |
Magyarázat: A DEFAULT csak olyan VALUES tagmondatban használható, amely INSERT utasítás része.
Az olyan VALUES tagmondatban, amely nem INSERT utasítás része, minden oszlophoz legalább egy sorban nem NULL értéknek kell tartoznia.
Ha a DEFAULT oszlopnévként használatos WHERE vagy HAVING tagmondatban, akkor csupa nagybetűvel kell írni, és idézőjelbe kell tenni.
Egyesített rendszer felhasználói: A DEFAULT nem használható olyan VALUES tagmondatban, amely INSERT utasítás része és az objektum egy becenév.
Felhasználói válasz: Helyettesítsen be a NULL vagy DEFAULT értéktől különböző értéket a VALUES tagmondatba! Ha a DEFAULT oszlopnévként használatos, írja csupa nagybetűvel és tegye idézőjelbe!
sqlcode: -584
sqlstate: 42608
SQL0585N | A sémanév ("<sémanév>" ) nem fordulhat elő többször a függvény elérési úton. |
Magyarázat: A függvény elérési út a "<sémanév>" sémanevet egynél többször tartalmazza. A függvény elérési úton a sémanevek csak egyszer fordulhatnak elő.
Az utasítás nem dolgozható föl.
Felhasználói válasz: Távolítsa el a "<sémanév>" másodpéldányait a függvény elérési útról!
sqlcode: -585
sqlstate: 42732
SQL0586N | A CURRENT FUNCTION PATH különleges regiszter teljes hossza nem lépheti túl a 254-et. |
Magyarázat: A CURRENT FUNCTION PATH különleges regiszter típusa VARCHAR(254). A karakterlánc tartalmazza többek között az összes sémanevet. A sémanevek idézőjelekkel határoltak és vesszővel vannak elválasztva a következő sémanévtől. A CURRENT FUNCTION PATH-ban a sémanevek együttes hossza nem haladhatja meg a 254 karaktert. Az üzenet megjelenését okozó SET CURRENT FUNCTION PATH utasítás, vagy a PREP illetve BIND parancs FUNCPATH paramétere túllépné ezt a határt.
Az utasítás vagy parancs nem dolgozható fel.
Felhasználói válasz: Távolítson el sémaneveket addig, amíg a teljes hossz meghaladja a maximális, 254 karakteres hosszúságot! Ha mindegyik sémanévre szükség van, lehet, hogy össze kell vonni néhány felhasználói függvényt, hogy ezáltal kevesebb sémanévre legyen szükség a CURRENT FUNCTION PATH-ban!
sqlcode: -586
sqlstate: 42907
SQL0590N | Az eljárásban ("<eljárás>") megadott név ("<név>") nem egyedi. |
Magyarázat: A név ("<név>") paraméterként, SQL változóként, kurzorként, címkeként vagy feltételként szerepel az eljárásban ("<eljárás>"). A név nem egyedi.
Felhasználói válasz: Változtassa egyedire a nevet!
sqlcode: -590
sqlstate: 42734
SQL0595W | A "<kért szint>" elválasztási szintet kiterjesztette a rendszer: "<kibővített szint>" . |
Magyarázat: A megadott elválasztási szint nem támogatott a DB2-ben. Megnőtt a következő, magasabb elválasztási szintre, amelyet a DB2 támogat.
Felhasználói válasz: Ezen figyelmeztetés elkerüléséhez adjon meg olyan elválasztási szintet, amely támogatott a DB2-ben! A DB2 a következő elválasztási szinteket támogatja: Ismételhető olvasás (Repeatable Read - RR), Olvasási stabilitás (Read Stability - RS), Kurzor stabilitás (Cursor Stability - CS) és Nem véglegesített olvasás (Uncommitted Read - UR).
sqlcode: +595
sqlstate: 01526
SQL0598W | Létező index ("<név>" ) szerepel elsődleges kulcs vagy egyedi kulcs indexeként. |
Magyarázat: Indexre volt szükség egy ALTER TABLE művelethez, amely egy elsődleges kulcsot vagy egyedi kulcsot adott meg, de a megjelölt index megegyezik a szükséges indexszel.
Ha elsődleges kulcs vagy egyedi kulcs indexet hoz létre, két indexleírás akkor egyezik meg, ha a növekvő vagy csökkenő specifikációktól függetlenül ugyanazt az oszlophalmazt azonosítják (a sorrend nem számít), mint az elsődleges vagy egyedi kulcs, és egyedinek vannak megadva.
Az utasítás feldolgozása sikeres volt.
Felhasználói válasz: Nem kell semmit sem tennie.
sqlcode: +598
sqlstate: 01550
SQL0599W | Hosszú karakterlánc adattípuson alapuló megkülönböztetett típushoz nem jönnek létre összehasonlító függvények. |
Magyarázat: Nem jönnek létre összehasonlító függvények hosszú karakterlánc adattípuson (BLOB, CLOB, DBCLOB, LONG VARCHAR vagy LONG VARGRAPHIC) alapuló megkülönböztetett típushoz, mivel ezekhez a beépített típusokhoz nem állnak rendelkezésre a megfelelő függvények.
Ez egy figyelmeztetés. Az utasítás feldolgozása sikeres volt.
Felhasználói válasz: Nem kell semmit sem tennie.
sqlcode: +599
sqlstate: 01596