marrtins Posted September 30, 2010 Report Share Posted September 30, 2010 autoincrementi un sequences nekad nepadodas transakciju kontrolei ;) Vismaz neesmu manījis nevienai DBVS. Quote Link to comment Share on other sites More sharing options...
Gints Plivna Posted September 30, 2010 Report Share Posted September 30, 2010 Tieši tā, visu šo konstrukciju (identity, autoincrement, sequence) galvenā jēga ir ģenerēt UNIKĀLAS vērtības. Tas, ka tās tiek ģenerētas pēc kārtas parasti palielinot par 1 (BTW vairumā gadījumu to var modificēt un reizēm pat to ļoti vajag) ir blakus efekts un nekādā ziņā nekad nevajadzētu mēģināt šādā veidā iegūt skaitļus, kas palielinās par 1 un ir bez caurumiem. Gints Plivna http://datubazes.wordpress.com Quote Link to comment Share on other sites More sharing options...
Vhubuo Posted October 1, 2010 Report Share Posted October 1, 2010 Nu es tā neteiktu. Tātad pirmkārt arī dabiskā veidā vienu objektu var unikāli identificēt vairākos veidos, piemēram, personu 1) pēc personas koda, 2) vārda, uzvārda, dzimšanas datuma un dzīvesvietas. Tātad ja kādā sistēmā veidos personu tabulu ar ģenerētu id, tad UK uz personas kodu neveidos? Tad pastāv risks, ka kāds ieplēsīs divus tādus. Atceramies, ka ierobežojumiem un tiem atbilstošiem indeksiem ir 2 veidu funkcijas: 1) nodrošināt potenciāli labāku ātrdarbību 2) nodrošināt datu integritāti, piemēram, to, ka noteiktā(-s) kolonā(-s) dati ir unikāli. Un dažkārt var gadīties, ka šim gadījumam no ātrdarbības viedokļa nav jēgas, bet datu pareizības ir. Un tad lielajā vairumā gadījumu, tā ir svarīgāka. Ar personu slikts piemers. Un manuprat datu integritate stav primaja vieta. Tapec, es balsoju par naturalam atslegam. Jo viņi labak attelo datu dabu. Un tadejadi var uzbuvet pareizaku datu strukturu, kas ir kritiski. Atrdarbiba manuprat visparigi ir parsverta CS pasaule. Datori paliek atrakie un atrakie un mes šeit nerisinam NP uzdevumus. Ir daudzas ļoti labas tahnikas ka panak DB atrako darbibu ja vajag. Šaja konkreta gadijuma - denormalizacija. 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.