Kirjoittaja: Antti Laaksonen (2009).
Tämä opas käsittelee MySQL:n komentorivityökalun käyttöä. Työkalun avulla voi suorittaa SQL-kyselyitä ja tutkia niiden tuloksia. Oppaassa esitellään kyselyitä, joiden avulla voi lisätä ja poistaa tietokantoja ja tauluja sekä muuttaa taulussa olevia kenttiä.
Komentorivityökalun voi käynnistää seuraavalla komennolla:
mysql -h localhost -u antti -p
Tässä merkinnän -h jälkeen tulee palvelimen osoite ja merkinnän -u jälkeen tulee käyttäjän nimi.
Merkintä -p tarkoittaa, että MySQL kysyy käyttäjän salasanaa:
Enter password:
Tämän jälkeen aukeaa MySQL-komentorivi, johon voi kirjoittaa komentoja ja kyselyjä:
mysql>
Komento quit lopettaa komentorivityökalun käytön:
mysql> quit
Seuraavassa oletetaan, että käytössä on Windows-järjestelmä, johon on asennettu palvelinympäristö ja MySQL.
Komentoriville pääsee valitsemalla Start->Run (Käynnistä->Suorita) ja kirjoittamalla cmd.
Tämän jälkeen täytyy siirtyä hakemistoon, johon komentorivityökalu on asennettu. Tämä onnistuu komennolla cd c:\mysql\bin, jossa c:\mysql on MySQL:n hakemisto:
C:\Documents and Settings\Antti>cd c:\mysql\bin
Nyt komentorivityökalun voi käynnistää kuten edellisen kappaleen ohjeessa:
C:\mysql\bin>mysql -h localhost -u antti -p
Joskus seuraava käynnistyskomento ilman lisämerkintöjä riittää:
C:\mysql\bin>mysql
Seuraava kysely näyttää järjestelmässä olevat tietokannat:
mysql> SHOW DATABASES; +----------+ | Database | +----------+ | mysql | | putka | | testit | +----------+ 3 rows in set (0.00 sec)
Seuraava kysely luo uuden tietokannan uusi:
mysql> CREATE DATABASE uusi; Query OK, 1 row affected (0.00 sec)
Seuraava kysely taas poistaa tietokannan uusi:
mysql> DROP DATABASE uusi; Query OK, 0 rows affected (0.00 sec)
Seuraava komento valitsee käyttöön tietokannan testit:
mysql> USE testit; Database changed
Tämän jälkeen kyselyt viittaavat tietokannan testit tauluihin.
Seuraava kysely näyttää valitussa tietokannassa olevat taulut:
mysql> SHOW TABLES; +------------------+ | Tables_in_testit | +------------------+ | kayttajat | | ostokset | | tilastot | | viestit | +------------------+ 4 rows in set (0.00 sec)
Seuraava kysely luo uuden taulun tuotteet:
mysql> CREATE TABLE tuotteet (
-> id INT PRIMARY KEY AUTO_INCREMENT,
-> nimi TEXT,
-> hinta INT
-> );
Query OK, 0 rows affected (0.00 sec)Seuraavat kyselyt lisäävät tauluun kolme riviä:
mysql> INSERT INTO tuotteet (nimi, hinta) VALUES ('kaali', 3);
Query OK, 1 row affected (0.00 sec)mysql> INSERT INTO tuotteet (nimi, hinta) VALUES ('porkkana', 2);
Query OK, 1 row affected (0.00 sec)mysql> INSERT INTO tuotteet (nimi, hinta) VALUES ('peruna', 3);
Query OK, 1 row affected (0.00 sec)Seuraava kysely näyttää taulun sisällön:
mysql> SELECT * FROM tuotteet; +----+----------+-------+ | id | nimi | hinta | +----+----------+-------+ | 1 | kaali | 3 | | 2 | porkkana | 2 | | 3 | peruna | 3 | +----+----------+-------+ 3 rows in set (0.00 sec)
Seuraava kysely muuttaa taulun tuotteet nimeksi varasto:
mysql> ALTER TABLE tuotteet RENAME varasto; Query OK, 0 rows affected (0.00 sec)
Seuraava kysely poistaa taulun varasto:
mysql> DROP TABLE varasto; Query OK, 0 rows affected (0.00 sec)
Seuraava kysely näyttää taulussa olevat kentät:
mysql> SHOW COLUMNS FROM tuotteet; +-------+---------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-------+---------+------+-----+---------+----------------+ | id | int(11) | | PRI | NULL | auto_increment | | nimi | text | YES | | NULL | | | hinta | int(11) | YES | | NULL | | +-------+---------+------+-----+---------+----------------+ 3 rows in set (0.00 sec)
Seuraava kysely lisää tauluun tuotteet kentän paino:
mysql> ALTER TABLE tuotteet ADD COLUMN paino INT; Query OK, 3 rows affected (0.00 sec) Records: 3 Duplicates: 0 Warnings: 0
Kentän nimen jälkeen ilmoitetaan sen määritykset. Tässä tapauksessa kentän tietotyyppi on INT.
Seuraava kysely muuttaa kentän paino nimeksi massa:
mysql> ALTER TABLE tuotteet CHANGE COLUMN paino massa INT; Query OK, 3 rows affected (0.00 sec) Records: 3 Duplicates: 0 Warnings: 0
Seuraava kysely muuttaa kentän massa tietotyypiksi BIGINT:
mysql> ALTER TABLE tuotteet CHANGE COLUMN massa massa BIGINT; Query OK, 3 rows affected (0.00 sec) Records: 3 Duplicates: 0 Warnings: 0
Edellisissä kyselyissä täytyy ilmoittaa sekä kentän uusi nimi että uudet määritykset.
Seuraava kysely poistaa taulusta tuotteet kentän massa:
mysql> ALTER TABLE tuotteet DROP COLUMN massa; Query OK, 3 rows affected (0.00 sec) Records: 3 Duplicates: 0 Warnings: 0
Huomio! Kommentoi tässä ainoastaan tämän oppaan hyviä ja huonoja puolia. Älä kirjoita muita kysymyksiä tähän. Jos koodisi ei toimi tai tarvitset muuten vain apua ohjelmoinnissa, lähetä viesti keskusteluun.