Kirjautuminen

Haku

Tehtävät

Keskustelu: Yleinen keskustelu: Tietokannan taulut

Sivun loppuun

Jaska [29.01.2010 16:58:54]

#

Työhaastattelussa kysyttiin, miten tietokannan sisällön voi tulostaa. Sen muistin, että jos kannassa on taulu T, niin sen sisällön saa selville kyselyllä

select * from T.

Mutta miten saan selville, minkä nimisiä tauluja kannassa on?

Macro [29.01.2010 17:02:22]

#

http://dev.mysql.com/doc/refman/5.0/en/show-columns.html

Jaska [29.01.2010 17:07:42]

#

Eikös tuo anna yksittäisen taulun kentät, ei kaikkia tauluja? Vai onko mun aivot taas solmussa?

Macro [29.01.2010 17:12:27]

#

Voit myös käyttää SHOW DATABASES komentoa.

SHOW COLUMNS mistä kertoo tietyn tietokannan taulut, SHOW DATABASES tietokantojen nimet jne...

Grez [29.01.2010 17:12:34]

#

No jos kyseessä on vaikka mysql, niin mysql-dump voisi olla kova sana.

Mielestäni kysymys on vähintään outo jos ei tiedetä mistä tietokannasta on kyse.

Vastaisin varmaan, että:

Mikäli tietokantaan on käytössä dumppaustyökalu, niin sillä. Jos taas tarkoitus oli että pitäisi itse tehdä ohjelma, niin enumeroisin taulut siten, kuin käytössä oleva tietokanta ja/tai tietokantaframeworkki mahdollistaa ja sitten tulostaisin loopissa kunkin taulun sisällöt.

Jaska [29.01.2010 17:21:18]

#

Outo kysymys johtuu siitä, että tuota kysyttiin haastattelussa ja en tiennyt sitä.

Grez [29.01.2010 17:56:00]

#

Jooh, no haastattelussa voisi tietysti kysyä että mikä tietokanta on kyseessä.

Metabolix [29.01.2010 19:02:14]

#

Kannan dumppaus ei ole minusta kovin kätevä temppu, koska dataa tulee herkästi aika paljon eikä suurinta osaa siitä yleensä kaivata.

Vielä tiivistelmä MySQL:n tapauksessa hyödyllisistä kyselyistä:

SHOW DATABASES;
SHOW TABLES IN kanta;
DESC kanta.taulu;
SHOW CREATE TABLE kanta.taulu;

Grez [29.01.2010 21:28:56]

#

No jos tarkoitus on tulostaa kannan sisältö, niin minusta kannan sisällön näyttäminen nimenomaan on "kätevä temppu". Sitä vartenhan siellä kannassa on erilliset taulut ja niistä voi rajata hakuja, että ei tarvitsisi koko sisältöä näyttää normaalikäytössä joka kerta. Mutta nyt kuitenkin tehtävänanto oli "tulostaa kannan sisältö".

Toki tuollainen toive on hyvä kyseenalaistaa. Mielestäni aika hämärä kysymys kaiken kaikkiaan. Voin kuvitella että jos olisin itse työhaastattelussa ja tulisi sanasata sanaan tuollainen kysymys niin varmasti vähintään tulisi pyöriteltyä silmiä. Riippuu tietty vähän. Jos haastattelijana olisi joku myyntimies, niin sitten olisi helpompi ymmärtää. Tai sitten tehtävänä olikin että kyseenalaistaa tehtävänannon mielekkyyden eikä ala selittää vastausta kysymykseen.

Metabolix [29.01.2010 21:45:20]

#

Grez kirjoitti:

Toki tuollainen toive on hyvä kyseenalaistaa.

Joo, itse olen tottunut töissä kantaan, josta tulee reilusti yli gigan dumppi. Siitä vain tekstieditorilla tutkimaan...

Grez [29.01.2010 21:47:52]

#

Tulisi siitä tulostettunakin sitten varmasti muutama laatikollinen paperia :D

Jaska [29.01.2010 21:52:18]

#

Grez kirjoitti:

Mielestäni kysymys on vähintään outo jos ei tiedetä mistä tietokannasta on kyse.

Kyse oli enemmän ongelmanratkaisukyvystä kuin tietyn kannan spesifisestä osaamisesta. Kielen ja kannan sai valita vapaasti.

Grez [29.01.2010 21:54:45]

#

Niin, no edelleen olen sitä mieltä että jos kanta ylipäätään on niin pieni, että toiveessa on jotain järkeä, niin kannan mukana tuleva dumppaustyökalu. Menee 5 sekuntia ja homma on hoidettu.


Sivun alkuun

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta