Sei sulla pagina 1di 5

Configurare MySQL

2 pagine in totale: [1] 2 Avanti >>

Nella prima parte abbiamo visto come installare MySQL. In questa seconda analizzeremo le
operazioni da compiere per farlo funzionare senza problemi.

Shell dei comandi

Per chi fosse abituato ad Access il concetto di utenti e password può risultare nuovo. In MySQL
possiamo creare un numero infinito di utenti con le loro password e i loro "diritti" sui vari database.
Per accedervi la prima volta abbiamo un nome utente di default, "root", definizione tanto caro a chi
conosce Linux. La password è inizialmente vuota. Consiglio fin da adesso ad assegnare una
password di propria scelta, con il seguente comando:

c:\mysql\bin\mysqladmin ?u root password aspitalia

In questo caso "root" ora avrà come password, molto fantasiosa a dire il vero, "aspitalia". Se
vogliamo modificare in seguito questa password dovremo scrivere questo comando:

c:\mysql\bin\mysqladmin ?u root ?p password nuovapassword

Dopo l'enter sarà chiesta la vecchia password utilizzata da "root", una volta digitata e dopo aver
premuto nuovamente enter, a "root" sarà assegnata la nuova password immessa.

Entriamo nella shell dei comandi di MySQL. A differenza di Access che ha una comoda interfaccia
grafica per la sua gestione, MySQL ha solo una shell, scomoda a dire il vero, dove digitare i vari
comandi. Vedremo in seguito come risolvere questo problema con strumenti esterni, ma per adesso
cerchiamo di utilizzare direttamente i comandi.

Con una finestra Dos in Windows 98 o con la finestra di Prompt dei comandi in NT/2000, avviamo
la shell con il comando, ugale per la versione shareware, completa o beta:

c:\mysql\bin\mysql ?uroot -paspitalia

Otterremo questa risposta:


Per uscire è sufficiente scrivere:

quit;

Adesso possiamo digitare i comandi direttamente. Iniziamo a vedere i database presenti, scrivendo:

show databases;

ricordandoci il punto e virgola obbligatorio nella console di MySQL, otterremo:

Naturalmente questo è solo un esempio dei database presenti sul mio computer.

Per selezionare su quale database lavorare, utilizziamo il comando "use":

use andrea;

quindi, per vedere le tabelle presenti in questo database:

show tables;

In questo caso sono presenti due tabelle, "altro" e "andrea". Adesso possiamo digitare i comandi
SQL a noi noti per visualizzare, aggiungere, modificare e cancellare record:
Select * from altro;

Xomandi che chi ha già dimestichezza anche con Access e ASP conosce perfettamente.

Ma se volessimo costruire una nuova tabella o un nuovo database, come ci dovremo comportare? In
Access siamo abituati a utilizzare comode griglie con opzioni selezionabili con il mouse, ma con
MySQL dovremo utilizzare sempre sequenze di comandi.

Per creare un nuovo database scriviamo:

create database prova;

In questo modo, visualizzando la lista dei database presenti, troveremo ora un nuovo database di
nome "prova". Per lavorare ora su questo database usiamo il comando che già abbiamo imparato ad
usare:

use prova;

Adesso impariamo a creare una tabella semplicissima contenente i campi "nome", "email","eta":

CREATE TABLE utenti(


id int(3) not null auto_increment,
Nome char(30),
Email chr(30),
Eta int(3),
Primary key(id));

Nella prima riga diciamo a MySQL di creare una tabella di nome "utenti", nella seconda diamo il
nome del primo campo "id" che sarà numerico, al quale abbiamo aggiunto che non può contenere
valore nullo e che si auto-incrementrà ad ogni record aggiunto.

Le tre linee successive creano i campi che ci serviranno, mentre l'ultima imposterà "id" come
PRIMARY KEY, cioè chiave univoca dei vari record del database.

Per la visione di tutti i tipi di campi in MySQL rimando al paragrafo successivo dove darò una
breve panoramica.
Ora che sappiamo come creare un database e le relative tabelle, è necessario sapere come
modificarne la struttura, come cancellarle, come aggiungere campi, ecc?

Nel nostro caso vogliamo modificare il campo "nome" in "name" e modificarne il tipo in "text":

change nome name text;

Se vogliamo aggiungere il campo paese useremo:

add paese char(20);

Se vogliamo assegnare l'indice alla nostra tabella o vogliamo aggiungerne un altro:

add index(id);

Ma se vogliamo cancellare la tabella "utenti", invece:

drop table utenti;

E per cancellare tutto il database, nel nostro caso "prova" useremo:

drop database prova;

Per una maggior descrizione dei vari comandi vi invito a leggere la documentazione che troverete
sul sito: www.mysql.com

Tipi di campi

MySQL mette a disposizione una ricca scelta di tipi di campi per le nostre tabelle, più numerosi di
Access.

• TINYINT ? Valore numerico compreso tra ?128 e 127.


• TINYINT UNSIGNED ? Valore numerico compreso tra 0 e 255.
• SMALLINT ? Valore numerico compreso tra ?32768 e 32767.
• SMALLINT UNSIGNED ? Valore numerico compreso tra 0 e 65535.
• MEDIUM ? Valore numerico compreso tra ?8388608 e 8388607.
• MEDIUM UNSIGNED ? Valore numerico compreso tra 0 e 16777215.
• INT o INTEGER ? Valore numerico compreso tra ?2147483648 e 2147483647.
• INT UNSIGNED ? Valore numerico compreso tra 0 e 4294967295.
• BIGINT ? Valore numerico compreso tra -9223372036854775808 e 9223372036854775807.
• BIGINT UNSIGNED ? Valore numerico compreso tra 0 e 18446744073709551615.
• FLOAT (m,d) ? Valore numerico con valori decimali. Compreso tra -3.402823466E+38 e
-1.175494351E-38.
• DOUBLE(m,d) o REAL(m,d) ? Valore numerico con valori decimali. Compreso tra
-1.7976931348623157E+308 e -2.2250738585072014E-308.
• DECIMAL (m,d) o NUMERIC(m,d) ? Valore numerico con decimali che sarà memorizzato
come una serie di caratteri.
• DATE ? Campo contenente una data in formato "aaaa-mm-gg".
• DATETIME ? Campo contenente la data e ora, informato "aaaa-mm-gg hh:mm:ss".
• TIME ? Campo contente un'ora nel formato: "hh:mm:ss".
• CHAR ? Campo contenente una stringa di caratteri che può avere la massina lughezza di
255.
• TINYBLOB o TINYTEXT ? Campo che può avere la massima lunghezza di 255 in formato
binario nel primo caso o testo nel secondo.
• BLOB o TEXT - Campo che può avere la massima lunghezza di 65535 in formato binario
nel primo caso o testo nel secondo.
• MEDIUMBLOB o MEDIUMTEXT - Campo che può avere la massima lunghezza di
16777215 in formato binario nel primo caso o testo nel secondo.
• LONGBLOB o LONGTEXT - Campo che può avere la massima lunghezza di 4294967295
in formato binario nel primo caso o testo nel secondo.
• ENUM ('value1','value2',?) ? Campo che può contenere uno dei valori presente tra le
parentesi.

Conclusioni

Nel prossimo articolo di questa serie vedremo come utilizzare strumenti grafici con MySQL e come
convertire in questo formato i nostri database Access.