Truncate zmazanie tabulky
- x5
- Člen | 28
Ahojte, potrebujem poradit so zmazanim tabulky v DB:
Ak si v databaze dam users a tam truncate vyhodi mi tuto chybu:
#1701 – Cannot truncate a table referenced in a foreign key constraint
(d87699_liga
.bans
, CONSTRAINT bans_ibfk_1
FOREIGN KEY (user
) REFERENCES
d87699_liga
.users
(id
))
Ale pritom bans tabulku som vyprazdnil tiez.
Kde moze byt chyba presnejsie?
- Pavel Kravčík
- Člen | 1196
Tohle úplně nesouvisí s Nette, takže bych zkusil možná jiné fórum,
kde to bude lépe popsané. Dělá se to přes
adminer `nebo `phpmyadmin
, když se vytváří struktura DB. Tam
stačí prohledat nastavení struktury tabulky.
- x5
- Člen | 28
Esorimer: ja ak chcem tich uzivatelov mazat po jednom z tabulky tak mi to ide zmazat pekne vsetkych lenze ak potom registrujem odznovu novych tak mi budto nejde upravovat profil alebo po kliknuty na online uzivatelov na nejaky profil ukaze link profil bez ID.Alebo mi ukazuje v zlom poradi spravy na webe.Ale ak to mam takto nastavene default databaza ktora bola od zaciatku s cca 600 uzivatelmi tak vsetko ide a chova sa to okey, uz fakt nechapem skusal som vsetko budem strasne rad ak mi poradite.
- David Matějka
- Moderator | 6445
budto nejde upravovat profil alebo po kliknuty na online uzivatelov na nejaky profil ukaze link profil bez ID.Alebo mi ukazuje v zlom poradi spravy na webe
ale to vsechno vypada na chyby v tve aplikaci. treba to spatne poradi, mas u dotazu ORDER BY?
- David Matějka
- Moderator | 6445
Pokud tam nemas order by, tak v mysql neni garantovani poradi, v jakem budou data vraceny.
- Mysteria
- Člen | 797
Tak samozřejmě, že to pomůže, pak to půjde smazat. Ale může se ti pak stát, že ti data z jedné tabulky budou odkazovat na data do druhé tabulky, který tam ale nebudou (protože přesně k tomuhle jsou cizí klíče navržené, aby zajistili, že nelze odkazovat na neexistující data). Takže bych to nedoporučoval dělat.
Nicméně celé tohle téma se mi zdá divné. Ty jsi autorem té aplikace? Nebo ti to někdo napsal a teď se to snažíš upravit? Protože z téhle diskuze jsem nabyl dojmu, že se v tom nějak extra neorientuješ (neber to zle).
Editoval Mysteria (10. 12. 2015 0:16)
- x5
- Člen | 28
Mysteria napsal(a):
Tak samozřejmě, že to pomůže, pak to půjde smazat. Ale může se ti pak stát, že ti data z jedné tabulky budou odkazovat na data do druhé tabulky, který tam ale nebudou (protože přesně k tomuhle jsou cizí klíče navržené, aby zajistili, že nelze odkazovat na neexistující data). Takže bych to nedoporučoval dělat.
Nicméně celé tohle téma se mi zdá divné. Ty jsi autorem té aplikace? Nebo ti to někdo napsal a teď se to snažíš upravit? Protože z téhle diskuze jsem nabyl dojmu, že se v tom nějak extra neorientuješ (neber to zle).
Aha a ake mam vychodisko, resp. ako to opravit?Nie niesom autorom aplikacie ani webu.Web som prednedavnom kupil web programoval iCrow. Takze co mi ostava resp. ako to opravit?
- Mysteria
- Člen | 797
Prostě ti někde v kódu chybí u SELECTu, který vybírá ty data chybí ORDER BY. Ale vzhledem k tomu, že nikdo tvojí aplikaci nezná, tak ti těžko někdo řekne kde. Takže máš asi dvě možnosti, buď to reklamuj u toho, o nějž si to koupil nebo si sežeň někoho, kdo se ti na to podívá.