Sasa Posted April 8, 2008 Report Share Posted April 8, 2008 Kā sataisīt, ja datubāzē jau kaut kas tāds ir, tad jaunu tādu nemaz nepievienot, lai neveidojas dublikāti. Link to comment Share on other sites More sharing options...
andrisp Posted April 8, 2008 Report Share Posted April 8, 2008 if (taadi_datubaazee_nav) { // liekam iekshaa } Kas tieši nav skaidrs ? Link to comment Share on other sites More sharing options...
Sasa Posted April 8, 2008 Author Report Share Posted April 8, 2008 kādus laukus man salīdzināt pilnīgi visus vai pietik tikai ar kaut kādu ID kurš nekādi neatkārtosies? Link to comment Share on other sites More sharing options...
Vebers Posted April 8, 2008 Report Share Posted April 8, 2008 Nezinu kā citām DB, bet MySQL var uzlikt unique key uz kādu no laukiem. Tātad mēģinot ievietot jau ievietotu informāciju šajā laukā, tas nenotiks un inserts nofeilos ~ "Duplicate entry for bla bla bla..." Link to comment Share on other sites More sharing options...
andrisp Posted April 8, 2008 Report Share Posted April 8, 2008 Sasa, tu jau nu tu pats tikai vari zināt, kuri laiku nedrīkst atkārtoties. Link to comment Share on other sites More sharing options...
Gints Plivna Posted April 8, 2008 Report Share Posted April 8, 2008 Katrai tabulai normāli būtu jābūt primārai atslēgai, pēc kuras ierakstu var nekļūdīgi identificēt. Tā var būt balstīta uz biznesa datiem, piemēram personas kods personai, vai vienkārši unikāls skaitlis (parasti dbvs nodrošina to ģenerēšanu, MySQLā autoincrement laikam bija), kam nav nekādas biznesa jēgas, bet kuru izmanto programmēšanā, lai varētu ieraksru a atšķirt no ieraksta b. Primārā atslēga katrai tabulai var būt ne vairāk kā 1. Ja ar to nepietiek var likt cik tikai nevajag unikālās atslēgas uz viena laukau vai lauku kombinācijām, kas 100% nodrošina to, ka dati tiešām tabulā būs unikāli. Metodei vispirms paskatīties vai tabulā tāds ieraksta jau nav un tad insertot ir vismaz 2 trūkumi: 1) tā droši strādā tikai sistēmā kur ir viens lietotājs, jo daudzlietotāju sistrēmā Tu paskatījies, nebija, bet cits jau tajā brīdī ierakstu iekrāmēja 2) tā strādā tikai caur tavu aplikāciju. Protams šo metodi var izmantot kombinācijā ar prmārām un/vai unikālām atslēgām, lai dotu lietotājam draudzīgus paziņojumus, nevis blabla kaut kas violated... Apraksts drusku vairāk par ierobežojumiem ir šeit un sintakse, kā tos izveidot, jāskatās MySQL manuālī vai arī visādos GUI rīkos tos var saklikšķināt un tad rīks Tavā vietā izveidos SQL teikumu, kuru izpildīs basē un uztaisīs vēlamo atslēgu. Gints Plivna http://datubazes.wordpress.com Link to comment Share on other sites More sharing options...
Sasa Posted April 8, 2008 Author Report Share Posted April 8, 2008 neder man unikālie lauki kuri itkā nevar atkārtotoes. Tātad izdomāju šādi kaut kā: var SQL = "SELECT temp_izmeri.Kods FROM temp_izmeri WHERE Kods = '"+ document.getElementById('xkods').innerHTML +"';"; rs.Open(SQL, cn); var temp_kods = rs("Kods"); alert(temp_kods); if (temp_kods == document.getElementById('xkods').innerHTML) { alert('kaut kas tads jau ir! :('); } else if (document.getElementById('xkods').innerHTML == "object") { alert('nav tada!'); } bet ir tā, ja ka tajā tabulā ir jau tāds ieraksts izvadās 'kaut kas tāds jau ir', bet ja nav tabulā tāda ieraksta tad man izdod ārā [object] bet neizpildās else if un neizvadās 'nav tada'. Kā es varu pārbaudīt, ja man izdod ārā [object].? Link to comment Share on other sites More sharing options...
andrisp Posted April 8, 2008 Report Share Posted April 8, 2008 Kas izdod ārā ? Un ar [object] tu domā stringu "object" vai objektu ? Link to comment Share on other sites More sharing options...
Sasa Posted April 8, 2008 Author Report Share Posted April 8, 2008 ja viss ok tad izvadās man strings nosaukums no datubāzes. bet ja nav iekš db tad izvadās tas [object]. Tātad laikam tas ir strings nevis kaut kāds elements(objekts) iekš HTML'a! Link to comment Share on other sites More sharing options...
andrisp Posted April 8, 2008 Report Share Posted April 8, 2008 Tas nozīmē, ka temp_kods ir objekts. Un iekš if neizpildēs ne pirmais, ne otrais if gadījums. Link to comment Share on other sites More sharing options...
bubu Posted April 8, 2008 Report Share Posted April 8, 2008 Izlasi dokumentācijā kāda tipa objektus atgriež rs("Kods") izsaukums. Nevajag no zila gaisa to zīlēt. Tad arī varēsi attiecīgi vērsties pie tā un pārbaudīt, ko vajadzīgs. Link to comment Share on other sites More sharing options...
Gints Plivna Posted April 8, 2008 Report Share Posted April 8, 2008 neder man unikālie lauki kuri itkā nevar atkārtotoes. Kāpēc? Link to comment Share on other sites More sharing options...
Recommended Posts