13. marts 2006 - 12:39Der er
15 kommentarer og 2 løsninger
MySQL kontra Access
Hejsa Er ved at lave en database, med ca. 4.500 poster i, max vil jeg gætte at den kan komme op på ca. 10.000 poster, hvad synes i at jeg skal bruge, har mulighed for begge, den skal laves i .asp
I dette tilfælde vil jeg sige det er ligemeget hvilken database du bruger. Access kan sagtens klare 10.000 poster, men det kommer også an på hvor meget søgning du laver og hvor indvikilet de er (mange joins, unions osv.)
Jo mere indviklet din søgning er, jo mere grund har du til at gå over til en "rigtig" database.
10000 poster er formentlig ingenting, men afhænger af størrelsen på en post (hvis der er lidt INTEGER og VARCHAR så er det ingenting, snakker vi store tekst eller binære objekter kan det være meget)
forudsat at Access databasen ligger på en lokal disk på din IIS server, så er jeg ikke så bekymret over søgninger, men mange samtidige opdateringer er den sikre måde at få Access performance til at gå i knæ
Og bare for at afklare hvor indviklet søgninger jeg har, så snakker vi om SQL-sætninger som fylder 20 linjer i min kode (2 unions med inner selects).
Har lige smidt den i word, og den siger 141 ord/959 tegn (uden mellemrum), for EN sql-sqlsætning. Den kan mærkes, men det tager stadig kun omkring 2 sek for siden at loade (mod normalt ½ sek. for de andre sider)
databasen kommer til at ligger hos web10, der er en del felt med notat, men her skal ikke søges, håber jeg :) alle relationer er jo med tal så det burde jo kunne funger uden de store SQL sætninger. Lige et måske dumt spørgsmål !! :( er det ikke lige let at programmer til en MySQL som en access MDB fil ?
Det er de samme SQL-sætninger (kan være små forskelle) du skal bruge til at trække data ud/indsætte data i dine ASP filer. Så her er der ikke den store forskel.
Det er der derimod når du skal oprette din databse. Her har MySQL ikke indbygget et admin modul, som er lige så nemt at bruge, som det i Access. Så at oprette databasen (tabeller osv) er sværre/indviklet i MySQL end i Access.
Der findes dog mange 3. part admin systemer til MySQL (phpMyAdmin som en af de helt store), men jeg synes stadig ikke de er på højde med Access, men det er meget tæt på.
Et sidste spørgsmål hvis nu at det viser at access bliver for langsom, hvor meget kan genbruge af programmering hvis det skal flyttes til MySql,, export af tabel er ikke noget problem, det er selve asp siderne jeg tænker på ? bare sådan ca. et gæt i % hvis har en mulighed for at gætte. På forhånd 1000 tak
select * from enTabel where enKolonne=123 order by enKolonne
Virker i begge database. Mens "select Top 10 * from enTabel" er Access "select * from enTabel Limit 10" er MySQL
Igen er vi ud i at jo mere indviklet SQL sætninger du har, jo større sansynlighed er der for at det ikke er cross-DB. Det du kan være 100% på er at datoer vil drille. Der bruger Access # til omkransning mens MySQL bruger ', desuden er formatet også forskellig:
"select * from enTabel where enDato=#12-31-2006#" (mm-dd-yyyy format i Access) "select * from enTabel where enDato='2006-12-31'" (yyyy-mm-dd format i MySQL)
Der kan du dog være smart og sende dine datoer igennem en converterfunktion, som formatere dem rigtigt og smider # eller ' omkring. Så skal du kun ændre din funktion for at datoer virker, når du skifter DB.
Så skulle det være iorden,, medhensyn til dato, bruger ikke dette, inu har lavet det så man skriver 2006 - Marst eller 2006 - Januar.. osv Igen takker og bukker for hjælpen :)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.