Osaako joku sanoa mitä eroa on noilla tekniikoilla noin niin ku koodauksen kannalta?
postgreSQL ja MySQL erot?
matti meikäläinen.
4450
0Äänestä
Muut lukivat myös
Odottaa vastausta
Näihin keskusteluihin ei ole vielä vastattu. Ole ensimmäinen.
Turvaa tilisi vahvistamalla puhelinnumerosi. Voit silloin palauttaa unohtuneen salasanan tekstiviestillä.
Näihin keskusteluihin ei ole vielä vastattu. Ole ensimmäinen.
Vastaukset 4
Vanhimmat
>...noin niin ku koodauksen kannalta?
Molemmat toimii hyvin ANSI-pohjalta. PostgreSQL jo alunperin ja MySQL ANSI-modella.
Molemmat puhuvat hieman omaa SQL murrettansa joka on toki otettava huomioon. Mutta muuten koodaus ei poikkea mitenkään.
Varsinkin jos käytät http://php.net/pdo joka mahdollistaa saman luokan kautta monen kannan käytön. Tuo ei ole enään eksperimentaalinen, jostain syystä PHP:n manuaalista tarjotaan "suomenkielellä" vanhentunutta versiota. Joten mene ensiksi http://php.net/my.php ja valitse Your preferred language kohdasta English, näin saat tuoreen manuaalin.
Haeppas kirjastosta tai osta Ari Hovin SQL-opas(uusin painos) siinä selitetään samat kyselyt usealle tietokannalle joten erot oppii helpost.
Lähinnä se että mitä yhteyskäytäntöä käytät.
Jos haluat mahdollisuuden käyttää molempia joudut käyttämään yksinkertaisempaa odbc-sql rajapintaa jolloin menetät osan tietokantaspesifisten rajapintojen mahdollisuuksista - mutta voit käyttää kumpaa tahansa (oikeastaan mitä tahansa odbc-rajapintaa tukevaa) tietokantaa.
MySQL tai Postgresin natiivia rajapintaa käyttämällä sidot itsesi ko. tietokantaan mutta tarjolla olevat palvelut ovat nopeampia ja laajempia sekä voit käyttää ko. tietokantojen hienoimpia ominaisuuksia tehokkaasti.
Koodauksen kannalta siis kutsut ovat vähän erilaisia ja tietokannan hallinnassa saattaa olla jotain vivahde-eroja. Kuitenkin semanttisesti useimmiten ongelmat ratkaistaan kummallakin samankaltaisesti.
Postgres rajapinta : http://www.php.net/manual/en/ref.pgsql.php
MySql (extended) rajapinta : http://www.php.net/manual/en/ref.mysqli.php
ODBC rajapinta : http://www.php.net/manual/en/ref.uodbc.php
---
valitse myrkkysi tarpeesi mukaan. Tappavaa, vammauttavaa tai hulluksi tekevää... :)
"Jos haluat mahdollisuuden käyttää molempia joudut käyttämään yksinkertaisempaa odbc-sql rajapintaa jolloin menetät osan tietokantaspesifisten rajapintojen mahdollisuuksista"
Höpöhöpö. Katsoppas http://php.net/pdo (mahdollista käyttää 6 eri tietokantaa ODBC rajapintaa)
Mikäli ei ole mahdollista käyttää PHP5:ttä, niin kannattaa käyttää http://pear.php.net/package/MDB2 tai vastaavia. Jolloin saman luokan kautta pystyy käpistelemään useita tietokantoja.
"MySQL tai Postgresin natiivia rajapintaa käyttämällä sidot itsesi ko. tietokantaan mutta tarjolla olevat palvelut ovat nopeampia ja laajempia sekä voit käyttää ko. tietokantojen hienoimpia ominaisuuksia tehokkaasti."
Tällähetkellä PDO taitaa olla tehokkain, toki se käyttää pinnanalla nativitukea tietokannalle. PHP:n suurin puute on ollut yhtenäisen tietokanta rajapinnan puute, mutta PHP5:ssa asia on korjattu.