PHP - odstranění duplicit v SQL

PHP - odstranění duplicit v SQL
« kdy: 15. 09. 2011, 23:48:25 »
Zdravim mam tabulku ktora ma stlpce ID, nazov firmy a datum.Pridavam do nej novej polozky. A ak ma nejaky novy zaznam rovnaky nazov firmy aj datum ako zaznam co uz v databaze je, tak sa tam neprida. Existuje na to nejaky jednoduchy sposob? Dakujem za odpoved.
« Poslední změna: 19. 09. 2011, 11:34:21 od Petr Krčmář »


KapitánRUM

Re: PHP - odstranenie duplicit v SQL
« Odpověď #1 kdy: 16. 09. 2011, 00:43:41 »
Špatně jsi popsal o co ti jde.
Takhle můžu říct akorát ,,ano je".

Pokud máš db firem, tak asi ukládáš IČ a pokud ukládáš IČ, no tak IČ nastav jako UNIQUE.
Pokud to je nějaký jiný systém, tak asi budeš muset nejprve do DB dát dotaz, jestli tam takový záznam už existuje (což je vhodné i v předchozím případě) a podle toho tam záznam přidat nebo nepřidat. 

KapitánRUM

Re: PHP - odstranenie duplicit v SQL
« Odpověď #2 kdy: 16. 09. 2011, 00:49:30 »
A jsou samozřejmě i jiné způsoby, jako třeba trigeery.
Případně pokud jde o fofr rychlost (nemůžeš před každým zadáním firmy provést dotaz), ukládej data do dočasné tabulky a z ní to pak zapisuj do hlavní tabulky. Ale těch možností jsou spousty a spousty, Pokud máš jen určitý počet firem a přidáváš záznamy dlouhou dávkou, můžeš si načíst firmy z DB(třeba 1MB) a v paměti si vytvořit b-tree, který bude řídit ukládání.  Pokud jich máš 100 pro které ukládáš časy, nemusíš mít ani btree, ale prostě setříděný spojový seznam, který budeš nějak šikovně procházet.  A tak dále a tak dále.