Oracle SQL

Allikas: Kuutõrvaja
Redaktsioon seisuga 31. märts 2010, kell 18:10 kasutajalt Imre (arutelu | kaastöö) (Kasulikud lisamaterjalid)

Sissejuhatus

Andmebaasi kasutamise eesmärgiks on saada andmeid salvestada, sälitada ja teha kättesaadavaks. SQL (Structured Query Languag) keel võimaldab kasutada relatsioonilist andmebaasisüsteemi (RDBMS, relational database management system).

Andmebaasiga ühendumine

Andmebaasi kasutamise eelduseks on, et

  • kasutajal on sobiv klientprogramm
  • kasutajale on usaldatud ligipääs andmebaasile

Tavaliselt toimub andmebaasi kasutamine üle võrgu, st kasutaja töötab andmebaasi klientprogrammiga ühes ja andmebaas töötab teises arvutis. Andmebaasi klientprogrmm ja andmebaasi server suhtlevad omavahel kasutades spetsiaalset selleks ettenähtud protokolli, mis sõltub konkreetsest andmebaasi tarkvarast. Reeglina sisaldab andmebaasitarkvara lisaks andmebaasi serverile ka mingit terminalil kasutatavat nö käsurea klientprogrammi, Oracle puhul on selleks programm sqlplus.

Andmebaasiühenduse moodustamiseks sobib Oracle puhul kasutades sqlplus programmi öelda

$ sqlplus kasutajanimi/parool@10.0.13.66:1521/servicename

SQL*Plus: Release 11.2.0.1.0 Production on Wed Mar 31 17:21:06 2010
Copyright (c) 1982, 2009, Oracle.  All rights reserved.

Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, Real Application Clusters, Automatic Storage Management, Oracle Label Security
and Oracle Database Vault options

SQL>

Ilma, et oleks vaja andmebaasis andmeid, saab andmebaasi kasutada nt selliselt

  • andmebaasi kliendi kasutamine kalkulaatorina
SQL> select 5*5 from dual;
  • andmebaasi klient töötab sõnedega
SQL> select 'Hello ' || 'World' from dual;

  • arvutada arvu ruutjuur
SQL> select sqrt(25) from dual;

Andmebaasi objektide hierarhia

TODO

Tabel

Esmalt tuleb tekitada loendur

sql> create sequence seq_inimene;

Tabeli moodustamiseks sobib öelda

sql> CREATE
 TABLE "INIMENE"
 (
   "ID"            integer,
   "ISIKUKOOD"     CHAR(11 BYTE),
   "EESNIMI"       VARCHAR2(50 BYTE),
   "PEREKONNANIMI" VARCHAR2(50 BYTE),
   "SYNNIAEG" DATE,
   "SISSEKANDE_AEG" TIMESTAMP default current_timestamp);

Tabeli kasutamine

Põhiliselt seisneb andmebaasi tabeli kasutamine kolme sorti tegevustes

  • andmete lisamine (insert) - tabelisse lisatakse rida
  • andmete lugemine (select) - tabelist loetakse andmeid
  • andmete muutmine (update) - tabeli olemasoleva rea ühe või enama välja väärtusi muudetakse
  • andmete kustutamine (delete) - tabelist kustutatakse rida

Andmete lisamine

Tabelisse kirje lisamiseks on käsk insert, nt selliselt

sql> insert into inimene (id, isikukood, eesnimi, perekonnanimi, synniaeg) values (seq_inimene.nextval, '46705079999', 'Marta', 'Maara', '07-May-67')

Kasulikud lisamaterjalid

  • TODO