Oldal: 1 / 1

Elsődleges kulcs probléma

HozzászólásElküldve: 2010. január 30., szombat 22:51
Szerző: Bendegúz
Sziasztok!
OOO3.2 RC4
BASE
Nem tudom feltűnt-e már, hogy a Base-ben ha egy mezőt elsődleges kulcsként jelölünk meg akkor lehetőség van az Automatikus értékadás beállítására (Index mező).
Ehhez a következő magyarázó szöveg tartozik:

"Jelölje ki, ha a mező automatikus növekménnyel kapja az értékét.
Az ilyen típusú mezőkbe nem vihető be adat, mert azok előző bejegyzéseik alapján növekvő számlálóból kapják értékeiket."


A probléma akkor kezdődik, ha ezt valaki el is hiszi!
Nálam zokszó nélkül megengedi ezen mezők megváltoztatását is! Az automatikusan generált értéket simán át lehet írni a tábla Megnyitás után.
Ez vajon hiba, vagy funkció???
Ha funkció, akkor eléggé el lett cseszerintve!

Re: Elsődleges kulcs probléma

HozzászólásElküldve: 2010. február 1., hétfő 19:31
Szerző: r4zoli
Nálam zokszó nélkül megengedi ezen mezők megváltoztatását is! Az automatikusan generált értéket simán át lehet írni a tábla Megnyitás után.

Nem cél ennek a mezőnek a változatlansága.
Az alkalmazásának a célja egy olyan mezőt létrehozni, ami biztosítja a rekord egyediségét mégpedig úgy, hogy eggyel megnöveli az előző értéket, az adatbevitelt végzőtől függetlenül.
Ha te belepiszkálsz akkor a te felelősséged, hogy milyen adatot adsz meg.

De bármilyen értéket megadhatsz ami eddig nem foglalt.

A számozás újra kezdhető amúgy is SQL parancs segítségével (az Eszközök>SQL... parancsablakban megadva):
Kód: Egész kijelölése   KinyitásÖsszecsukás
ALTER TABLE "Tabla" ALTER COLUMN "ID"   RESTART WITH 0


Célszerű az űrlapnál ezt a mezőt nem felvenni a módosítható mezők közé.

Re: Elsődleges kulcs probléma

HozzászólásElküldve: 2010. február 2., kedd 11:15
Szerző: Bendegúz
Szia!
Nos ez az információ, ami a helyi súgóban van ennek ellentmondani látszik:
"Az ilyen típusú mezőkbe nem vihető be adat, mert azok előző bejegyzéseik alapján növekvő számlálóból kapják értékeiket."
Vagy ezt csak az Access kompatibilitás miatt hagyták benne?

Re: Elsődleges kulcs probléma

HozzászólásElküldve: 2010. február 2., kedd 13:51
Szerző: r4zoli
Vagy ezt csak az Access kompatibilitás miatt hagyták benne?

Nem, alaphelyzetben, amire a Súgó is hivatkozik, amikor új rekordot adsz hozzá, nem tudod ezt a mezőt szerkeszteni.
Nem tudsz neki értéket adni, mert a rekord táblában való tárolásakor generálódik csak az értéke.

Re: Elsődleges kulcs probléma

HozzászólásElküldve: 2010. március 23., kedd 11:00
Szerző: Lopez
Olyan kérdésem van, hogy egy táblában nem lett beállítva az automatikus értékadás az ID mezőnek. Persze a tábla már össze van kapcsolva sok másikkal, rakás adat felvíve. Szeretném, ha automatikus értékadás lenne, de már nem lehetséges, hacsak nem új mezőt viszek föl. :crazy: Van erre megoldás?

Re: Elsődleges kulcs probléma

HozzászólásElküldve: 2010. március 23., kedd 14:05
Szerző: r4zoli
Megoldható, de először készíts egy másolatot az adatbázisodról és azon próbálkozz:

Az Eszközök>SQL... ablakban add ki:
Kód: Egész kijelölése   KinyitásÖsszecsukás
SET REFERENTIAL_INTEGRITY FALSE

Ezzel ideiglenesen kikapcsolod a külső hivatkozások ellenőrzését, majd átállítod az alapbeállításokat:
Kód: Egész kijelölése   KinyitásÖsszecsukás
ALTER TABLE "Tabla" ALTER COLUMN "ID" INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY

Mindenképpen állítsd vissza, mert különben nem fog működni és nem lesz róla semmilyen vissza jelzés, hogy ki lett kapcsolva a figyelése:
Kód: Egész kijelölése   KinyitásÖsszecsukás
SET REFERENTIAL_INTEGRITY TRUE


A visszaállítást lekérdezések segítségével tudod leellenőrizni, vagy űrlappal amelyik lekérdezéseket használ az adatok előállításakor pl. listapanelt amelyik a hivatkozó/hivatkozott táblákhoz kapcsolódik.

Részletek: http://hsqldb.org/doc/guide/ch09.html#s ... nt-section

Re: Elsődleges kulcs probléma

HozzászólásElküldve: 2010. április 7., szerda 21:23
Szerző: Lopez
Nem megy. Ezt írja hibának: Wrong data type: GENERATED in statement [ALTER TABLE "Alvállalkozók" ALTER COLUMN "ID" GENERATED]
Talán az a baj, hogy már van benne adat?

Re: Elsődleges kulcs probléma

HozzászólásElküldve: 2010. április 7., szerda 21:39
Szerző: r4zoli
Az "ID" típusa "Egész"?

Re: Elsődleges kulcs probléma

HozzászólásElküldve: 2010. április 12., hétfő 23:06
Szerző: Lopez
r4zoli írta:Az "ID" típusa "Egész"?


Igen, egész (integer, 10 hosszú).

Még egy gondom van az appenddel: kész táblába szeretnék pár plusz oszlopba adatokat vinni. Excelben elkészítettem a táblát, beillesztésnél kiválasztom, hogy hozzáfűzés, egybehozom a mezőket (felülírandó és az excel), majd rákérdez, hogy az id nem probléma e (bár az id-t nem akarom importálni). Mondom, hogy mehet, az ablak bezáródik, de semmi sem történik. A típusa a kérdéses oszlopoknak szám 15 hosszan, 3 tizedessel.

Re: Elsődleges kulcs probléma

HozzászólásElküldve: 2010. április 13., kedd 9:21
Szerző: Zizi64
Üdv!

Nem akadékoskodni, hanem tanulni szeretnék: :)

Az "ID" típusa "Egész"?

Melyik "Egész" típus lehet az ID:
-32768...32767
-2147483648...2147483647
...esetleg Byte, Word stb. is?

Erre a Base_bevezető_3_1.pdf-ben sem találtam meg a választ, de lehet, hogy nem jól kerestem.

Re: Elsődleges kulcs probléma

HozzászólásElküldve: 2010. április 13., kedd 13:55
Szerző: r4zoli
@Lopez
Ha megadnád a tábla szerkezetét akkor többet tudnánk segíteni.

@Zizi64
Zizi64 írta:
Az "ID" típusa "Egész"?

Melyik "Egész" típus lehet az ID:
-32768...32767
-2147483648...2147483647
...esetleg Byte, Word stb. is?

Erre a Base_bevezető_3_1.pdf-ben sem találtam meg a választ, de lehet, hogy nem jól kerestem.

Nincs benne, de http://hsqldb.org/doc/guide/ch09.html#datatypes-section, segíthet de nekem nem sokat, nem ismerem ugyan is a java típusokat.
Van egy típus teszt adatbázisom amiből ezt ki lehet bogarászni, de 2MB nagyságú (raktam bele képeket és nem tudom kiszedni) és nem fér fel ide, de ha kell elküldöm.

Re: Elsődleges kulcs probléma

HozzászólásElküldve: 2010. április 13., kedd 17:03
Szerző: Zizi64
Üdv!

ha kell elküldöm

Előre is köszönve, várom a fájlt a kovacs(pont)tibor64(kukac)gmail(pont)com címemre. Oda 2 MiB nagyságú fájlok be szoktak férni. A Base tanuláshoz nagyon jó lesz.

Re: Elsődleges kulcs probléma

HozzászólásElküldve: 2010. április 14., szerda 11:57
Szerző: Lopez
r4zoli írta:@Lopez
Ha megadnád a tábla szerkezetét akkor többet tudnánk segíteni.


A hozzáfűzést megoldottam, az integritás kikapcsolásával kitöröltem a komplett táblát és feltöltöttem újra.
Az eredeti probléma viszont még nem oldódott meg. A tipust hogy írjam ide?
Az ID típusa Egész [INTEGER] Hosszúság 10-re beállítva.

Re: Elsődleges kulcs probléma

HozzászólásElküldve: 2010. április 14., szerda 13:35
Szerző: r4zoli
Megvan a probléma oka, én hibáztam a példa parancsból kimaradt az "INTEGER" (az eredeti hozzászólást kijavítottam), ha azt beírod, akkor működnie kell.

Re: Elsődleges kulcs probléma

HozzászólásElküldve: 2010. április 14., szerda 20:54
Szerző: Lopez
Sajnos most sem megy. Ezt kapom:
Column is referenced in constraint or view: SYS_REF_SYS_FK_82_101 in statement [ALTER TABLE "táblaneve" ALTER COLUMN "ID" INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY]
A tábla nevében van ékezet, remélem nem ez a baj... Úgy értelmezem, hogy egy nézetben hivatkozok erre az ID mezőre. Nade előtte kikapcsoltam az integritást.

Re: Elsődleges kulcs probléma

HozzászólásElküldve: 2011. május 23., hétfő 11:01
Szerző: fat spider
r4zoli írta:@Lopez
Ha megadnád a tábla szerkezetét akkor többet tudnánk segíteni.

@Zizi64
Zizi64 írta:
Az "ID" típusa "Egész"?

Melyik "Egész" típus lehet az ID:
-32768...32767
-2147483648...2147483647
...esetleg Byte, Word stb. is?

Erre a Base_bevezető_3_1.pdf-ben sem találtam meg a választ, de lehet, hogy nem jól kerestem.

Nincs benne, de http://hsqldb.org/doc/guide/ch09.html#datatypes-section, segíthet de nekem nem sokat, nem ismerem ugyan is a java típusokat.
Van egy típus teszt adatbázisom amiből ezt ki lehet bogarászni, de 2MB nagyságú (raktam bele képeket és nem tudom kiszedni) és nem fér fel ide, de ha kell elküldöm.



A válaszodban említett teszt adatbázist kérem én is az rdnmltn(kukac)gmail(pont)com-ra én is, tanulás miatt! :-)

Re: Elsődleges kulcs probléma

HozzászólásElküldve: 2011. május 23., hétfő 12:15
Szerző: Zizi64
Üdv, fat spider!

Továbbítottam az eredeti fájlt a megadott címre!

Re: Elsődleges kulcs probléma

HozzászólásElküldve: 2011. május 23., hétfő 12:21
Szerző: fat spider
Zizi64 írta:Üdv, fat spider!

Továbbítottam az eredeti fájlt a megadott címre!


Nagyon köszönöm!!