Sasa Posted September 24, 2010 Report Share Posted September 24, 2010 Sveiki, Ir tagad tāda lieta, ka datus kurus noglabāšu MySQL datubāzē ņemšu no XML, pie ierakstu pirmā Insert'a jautājumu tākā nav. Bet kā labāk rīkoties pie datu atjaunošanas ņemt visu ierakstu dzēst ārā un tad ievietot no jauna, jo xml'ā man būs jau svaigākā informācija un zināt kas jau ir ievietots un kas vēl nav baigā pārbaude būs jāveido, jo vienam ierakstam pakārtojas (kā nu kuram ierakstam) vairākas tabulas. Quote Link to comment Share on other sites More sharing options...
briedis Posted September 24, 2010 Report Share Posted September 24, 2010 Ir kautkāds ID vai kas, kas identificē konkrētu ierakstu? Nu tad arī skaties, ja ID eksistē, pārrakstam veco vērtību ar jauno. Quote Link to comment Share on other sites More sharing options...
Sasa Posted September 24, 2010 Author Report Share Posted September 24, 2010 jā ir ID lauks, bet ir arī n daudz tabulu kas identificē ierakstu, man ir viena tabula(artikuli) kurā ir daudz ierakstu un tad daudz citu tabulu ar ierakstiem kas spētu identificēt ierakstu artikulu tabulā. Pieņemsim ir artikuls 01-R4230-16-L šis ir tākā ID pie viņa nāk vēl nosaukums, daudzums un vēl visādi parametri. Tad seko piemēram kategoriju tabula kategorijas varētu būt 'Virtuves Piederumi', 'Dārza Piederumi', 'Instrumenti Garāžai', tad vienam artikulam var būt vairākas kategorijas. Tik tāl viss skaidrs, pie pirmā ieraksta artikulam ir uzstādīta kategorijas 'Dārza Piederumi', ierakstu ierakstu iekš DB bet kas ieraksts ir izmainīts un es no XML artikulam tagad iegūstu ka šim artikulam vairs nav kategorija 'Dārza Piederumi', bet gan 'Instrumenti Garāžai', bet ir viena problēma, ka artikulam jau ir piesaistīta kategorija 'Dārza Piederumi' un tagad kad es akli skatīšos iekš XML es pievienošu plus vēl vienu kategorija un tad man būs kļūda tāda ka tagad artikulam ir divas kategorijas, bet šobrīd pareizā ir 'Instrumenti Garāžai'. Tāpēc jautājums kā glabāt, jo iekš XML es neredzu kādas kategorijas tika noņemtas es redzu tikai pēdējās aktuālākas izmaiņas. Quote Link to comment Share on other sites More sharing options...
bubu Posted September 24, 2010 Report Share Posted September 24, 2010 Nu ja tu neredzi izmaiņu, ka kategorija ir noņemta, tad nekā - datubāzē tad nevarēsi šo informāciju piefiskēt (jo tādas nav). Visai loģiski, nē? Quote Link to comment Share on other sites More sharing options...
Sasa Posted September 24, 2010 Author Report Share Posted September 24, 2010 tāpēc arī ir doma, ka varētu artikulam noņemt visas kategorijas un uzstādīt tās no jauna, to ko redzu XML'ā, tā var darīt? Quote Link to comment Share on other sites More sharing options...
bubu Posted September 24, 2010 Report Share Posted September 24, 2010 Bet tu teici, ka XML'ā atnāk tikai izmaiņas. To kādi vispār ir artiklu taču tu neredzi. Quote Link to comment Share on other sites More sharing options...
Sasa Posted September 24, 2010 Author Report Share Posted September 24, 2010 (edited) izskatās ka es kaut kā nepareizi izstāstīju savu domu un tiku arī nepareizi saprast, XML'ā man ir pilnīgi visa informācija par izmainīto artikulu. Edit: bet aktuāls jautājums joprojām ko darīt ar kategorijām Edited September 24, 2010 by Sasa Quote Link to comment Share on other sites More sharing options...
bubu Posted September 24, 2010 Report Share Posted September 24, 2010 Nu tad jau nav nekādu problēmu - tas kas ir datubāzē, bet nav XML failā -> izmest. To, kas ir XML failā, bet nav datubāzē -> pievienot. To, kas ir abos, bet atšķiras -> updeitot. Viss vienkārši. Quote Link to comment Share on other sites More sharing options...
Sasa Posted October 21, 2010 Author Report Share Posted October 21, 2010 Tā realizēts man ir daudz, tagad testēju šādi tādi, un ir dažas neskaidrības. Ja tabulas ir pilnīgi tukšas tad man visu ~ 7807 (+ katram no šiem 7807 papildu nāk ap ~ 6 ieraksti papildu, kas izmētāti pa citām tabulām) produktu ierakstīšana aizņem nedaudz vairāk par minūti. Bet kad es jau aizpildītā tabulā rakstu atkārtoti iestājas Timeout's. Process ierakstīšanai tāds, ka es pārbaudu, ja produkts eksistē tad izpildās Update metode, ja nav tad Insert. Insert metodē no 'produkta objeta' tiek ņemts pa ierakstam un ierakstīts 'products' tabulā, produktam ir papildu vēl tādi ieraksti, kas attiecas uz klasifikāciju, kuri palīdz noteikt, kas tas par produktu. Produktu klasifikācijai man ir veselas 30 tabulas (nav obligāti, ka priekš viena produkta tiks izmantotas visas 30 tabulas, 30 tabulas ir tikai tāpēc ka to produktu ir ļoti daudz un dažādi), produkts var būt klasificēts tikai ar kādām 6 klasifikācijām, tad katra no klasifikācijas ierakstās kādā no 30 tabulām. Update metode pārbauda vai ierakstāmais produkts eksistē datubāzē, ja ir tad atjauno products tabulas laukus, bet no 30 klasificējošām produktu tabulām dzēš produkta ID, kad klasifikācijas ir dzēstas, tās tiek ierakstītas no jauno, jo es nepārbaudu atšķirības klasifikācijās, kas ir datubāzē, un kas tiks rakstītas no jauna. Datubāzes struktūra tāda, ka ir products tabula ar prudukta Id lauku varchar(20), tad nāk klāt vēl 30 tabulas kurās arī ir šāds pats lauks. Quote Link to comment Share on other sites More sharing options...
Kavacky Posted October 22, 2010 Report Share Posted October 22, 2010 Indeksi vispār ir? :D Quote Link to comment Share on other sites More sharing options...
Gints Plivna Posted October 22, 2010 Report Share Posted October 22, 2010 Nu ja kaut kas iet lēni, tad pirms vispār sākt drudžaini meklēt risinājumus, ir jānoskaidro kas bremzē Gints Plivna http://datubazes.wordpress.com Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.