MySQL 3.23 (basis) voor windows

Legenda:
 hi-lite
 web-link
 SQL-opdracht
Voorwaarde: TCP/IP moet als netwerk-protocol op de computer zijn geinstalleerd, ook als er geen netwerk is.
Download vanaf http://www.mysql.com/ de laatste stable release (niet de beta) van MySQL en installeer het. Accepteer tijdens installatie alle voorgestelde instellingen. MySQL wordt geinstalleerd in de directory C:\MYSQL

SERVER STARTEN (WINDOWS TOOL)

CLIENT STARTEN (DOS TOOL)

SQL-OPDRACHTEN

  - FLOW - - MANUAL -
>

Rechten instellen

 

Adding users
gebruik PASSWORD(string) om het wachtwoord te coderen (zie hieronder).
>

De beschikbare databases bekijken

SHOW DATABASES ;

SQL:
- elk SQL-statement wordt afgesloten met een punt-komma ;
- één SQL-statement kan over meerdere regels worden uitgesmeerd.
- hoofd- en kleine letters doen niet terzake. voor de duidelijkheid gaan de statements en vaste onderdelen daarvan in hoofdletters en de rest (tabel-, kolom- en rijnamen, variabelen) in onderkast.
>

Een nieuwe database aanmaken

CREATE DATABASE intra ;

database wissen:
DROP DATABASE intra;
>

Een database activeren

USE intra ;

 
>

De tabellen in een database tonen

SHOW TABLES ;

 
>

Tabel aanmaken

CREATE TABLE users (
user_id int(10) unsigned NOT NULL
                      primary key auto_increment,
voornaam varchar(75) NOT NULL default '',
achternaam varchar(75) NOT NULL default '',
pswd varchar(40) NOT NULL default '',
functie_id int(10) unsigned default NULL
) ;

Column types
er kan maar 1 auto_increment kolom zijn,
en die moet zijn gedefinieerd als primary key.

Kolom achteraf toevoegen:
- als laatste kolom
ALTER TABLE users
ADD COLUMN (accept bool default 0) ;

- na een bestaande kolom
  (let op het achterwege blijven van de haakjes)
ALTER TABLE users
ADD COLUMN functie int unsigned
AFTER voornaam ;

- kolom wissen:
ALTER TABLE users
DROP COLUMN functie;

 

>

Tabeldefinitie bekijken

DESCRIBE users ;

 
>

Tabel vullen met dummy-gegevens

kolomnamen niet opgeven =alle kolommen vullen, ook
de auto-increment kolom (!):

INSERT INTO users
VALUES (
1, 'Jan', 'Jansen', MD5('zaq123'), 'Docent'
) ;

kolomnamen opgeven: alleen die kolommen,
de rest krijgt de DEFAULT-waarde (mits opgegeven) of
doet niets en geeft een foutmelding (NOT NULL):

INSERT INTO users(voornaam, achternaam, pswd)
VALUES (
'Jan', 'Jansen', MD5('zaq123')
) ;

Passwords
PASSWORD(string) - (non-reversible) Berekent password van string. Deze functie wordt gebruikt voor de Password kolom in de User Grant tabel.
MD5(string) - (non-rvs) Geeft een 32 karakters lange string in hex ("RSA Data Security, Inc. MD5 Message-Digest Algorithm").
SHA(string) - (non-rvs) Berekent 40 karakters string in hex. Bedoeld voor het veiliger opslaan (cryptografisch gezien) van wachtwoorden, vergeleken metm MD5. SHA1(string) is nog veiliger (beide vanaf v4.0.2).
AES_ENCRYPT(string,key_string) - (non-rvs) De sterkste encryptie mogelijk in MySQL.

voorbeeld:
SELECT MD5('waardelooswachtwoord') ;

Ondanks dat user_id in de tabel-definitie op auto_increment staat, moet er bij de insert-opdracht een waarde (die wordt genegeerd) worden opgegeven.

>

Overzicht speciale MySQL commando's:

? (help)

Regelmatig gebruikte commando's:

\c

Clear command
invoer van een SQL commando afbreken. vooral handig wanneer een SQL-commando over meerdere regels loopt, (bijv zoals bij het aanmaken van een nieuwe tabel of bij een lang select-statement), en de opdracht moet worden afgebroken, voorbeeld:

mysql> SELET *
      -> FROM intar \c
mysql> _

quit Quit mysql (mag ook exit typen)
\. (backslash punt) Execute a SQL script file. Takes a file name as an argument. (voorbeeld \. c:\batchsql.txt)
\s Get status information from the server.
\T Set outfile [to_outfile]. Append everything into given outfile.
use Use another database. Takes database name as argument.