Delphi 7, firebird adatbázis, adatmentési hiba
2013-05-08T11:09:20+02:00
2013-05-10T08:57:58+02:00
2022-07-19T04:02:27+02:00
  • Azért abban is 'megfeddnélek', hogy ebben a szakmában különösen fontos a terminológia:

    A szakma (adatfeldolgozás) egyik alapszabálya: "sz__r be, sz__r ki"

    Ez tipikusan a válaszokra is igaz lehet

    Az "adatbázis mentés" fogalom az éles adatokat tartalmazó adatbázis teljes tartalmáról biztonsági másolat készítését jelenti.

    Az "adatmentés" majdnem ugyanez, csak ott nem adatbázisról (nem kizárva persze), hanem egyéb dokumentumokról, állományokról beszélünk.

    Ezek után amit te kérdezni akartál, az a következő:
    "Firebird adatbázisba adatbeviteli hiba" esetleg rövidebben
    "Firebird adatbázisba írás hiba"
    Mutasd a teljes hozzászólást!
  • Szívesen.

    Egy év múlva ezeken a hibákon jókat fogsz mosolyogni...

    Egy rekesz sör lesz mindenkinek, aki hozzászólt a topichoz :D

    kalmanka
    Mutasd a teljes hozzászólást!
  • Sziasztok!

    Nagyon szépen köszönöm mindenkinek, aki próbált segíteni.
    kalmanka-nak minden elismerésem! Nagyon szépen köszönöm a fáradozását és a türelmét!
    Mint látjátok annyira nem vagyok jártas a témában, kezdő vagyok, ezért köszönöm a türelmeteket!
    Mutasd a teljes hozzászólást!
  • Megpróbáltam neki megoldani azzal a módszerrel, amivel ő akarta.

    Hát, nem volt az igazi. Ezért most leírtam neki privátban a megoldást. Remélem, megoldja...

    Elmondtam, hogyan legyen generator és hogyan legyen trigger...

    Nekem működik az ő kódjával ...
    Mutasd a teljes hozzászólást!
  • A trigger / generator párosról hallottál már?

    Van egy érzésem!
    Alapjaiban van elbabrálva az egész!

    Ezt senki nem fogja neked kimosni a trutyiból!

    UPDATE NextAzon SET tagdij = tagdij +1;

    Egy változást COMMIT-elni is kell(ene)...
    Mutasd a teljes hozzászólást!
  • Üdv.

    Nincs elsődleges kulcs kijelölve.
    Nincs szekvencia.
    Triggeren belül ne nagyon updateljünk vagy insertáljunk
    ugyanabba a táblába, használd a new. és old. előtagot.
    Ha van szekvencia akkor újabb firebird esetén
    használható new.id = next value for seq_id;

    Ha már updatelsz akkor a tagdíj default értéke 0, mert egyébként
    null-t vesz fel, ahhoz +1-et hozzáadva hiba lesz.

    Alapvető probléma inkább az alap sql tudás hiánya.

    Üdv.
    Mutasd a teljes hozzászólást!
  • Az a gond, hogy triggeren keresztül próbáltam növelni az azonosító értékét, de nem akarja megnövelni és ezért írja ki, hogy már létezik.

    CREATE TRIGGER TAGDIJ_BI0 FOR TAGDIJ
    ACTIVE BEFORE INSERT POSITION 0
    AS
    begin
    UPDATE NextAzon SET tagdij = tagdij +1;
    end

    Ha viszont manuálisan növelem a tagdij azonjának az értékét akkor elmenti az adatot. Szóval már csak ezt kellene valahogy megoldni.

    A NextAzon táblába olyan tábláknak a nevei vannak, amiket meg akarok növelni.

    CREATE TABLE NEXTAZON (
    EDZES INTEGER,
    EDZO INTEGER,
    FELSZERELES INTEGER,
    HELY INTEGER,
    JATEKOS INTEGER,
    KOROSZTALY INTEGER,
    TAGDIJ INTEGER
    );

    Esetleg erre valakinek valami ötlete?
    Mutasd a teljes hozzászólást!
  • Ugye két hiba van.

    Az egyik "aszongya", hogy nem érvényes egész szám az érték. A másik meg elsődleges kulcsra panaszkodik. Szvsz az lehet a story, hogy az integer szám (ami egyben nálad a kulcs is) nem szám így nem tudja beszúrni az elsődleges kulcs mezőbe és ezért van a hiba.

    De kód nélkül tényleg csak találgatás.

    Kopizd be szépen ide a releváns kódot (mivel adod meg az integert, hogyan szúrod be a mezőket, különösen a primary key-t)

    W.
    Mutasd a teljes hozzászólást!
  • Az adatbázisommal lehet a probléma, de pontosan nem tudom.

    Nem sok adatbázisos programot készítettem, ezért sok tapasztalatom nincs benne.

    Ez az első adatbázis IB-ben, amit önállóan készítettem el, és nagy rá az esély, hogy ott szúrhattam el valamit.

    Esetleg lenne olyan aki ránézne és megmondaná, mit szúrtam el?
    Mutasd a teljes hozzászólást!
  • kalmanka szvsz arra célzott, hogy, ha tudod mit jelent akkor elvileg meg is tudod csinálni... Csak időt kell rá áldoznod. Annyira bonyolult tényleg nem lehet...

    W.
    Mutasd a teljes hozzászólást!
  • Tudom, hogy mit jelent. Ezért sem ezt írtam be az elején. Olyan embert keresek, aki be tudná fejezni a programot.
    Mutasd a teljes hozzászólást!
  • Ha elkészítettél egy programot IBben, akkor tudnod kell, hogy ez mit jelent ...

    Mutasd a teljes hozzászólást!
  • A következő hibaüzenetek dobja ki mentésnél:

    "is not a valid integer value".
    "violation of Primery or Unique key...."

    Két különböző adat mentéséről van szó
    Mutasd a teljes hozzászólást!
  • Ehhez jobban kéne ismerni a programot, főleg ha nem dob egyáltalán semmilyen hibát. Milyen komponenst használsz az adatbázishoz? zeos, stb?
    Mutasd a teljes hozzászólást!
  • Sziasztok!

    Egy programon dolgozok Delphi 7-ben, az adatbázist IBExpertben készítettem el. A program nagy része meg van már, és működik, viszont van olyan része, ami nem menti el az új adatokat, bár az adatbázisban bent lévő adatok módosításánál nem ír ki hibát.

    Sajnos nem sok időm van a program leadásáig, plusz még egy dokumentációt is kell készítenem róla, ezért olyan ember jelentkezését várom, aki rá tudna nézni a programomra és az adatbázisomra, és be tudja fejezni helyettem.

    Ha valaki tudna segíteni és érdekli a dolog, az írjon a e-mail címemre, ott megbeszéljük a részleteket.
    Természetesen az illető fáradozását honorálnám!

    csuma7@freemail.hu

    Előre is köszönöm!
    Mutasd a teljes hozzászólást!
Tetszett amit olvastál? Szeretnél a jövőben is értesülni a hasonló érdekességekről?
abcd