SQL

Mula sa Wikipediang Tagalog, ang malayang ensiklopedya
Jump to navigation Jump to search

Ang SQL (Structured Query Language) ay isang wikang pamprograma na ginagamit sa pamamahala ng data sa isang relasyonal na sistemang database. Ang pamamahala sa data ay kinabibilangan ng pagpasok ng data(insert), kweri(query) o pagtingin sa data, pagbabago ng data(update), pagbura ng data(delete), paglikha ng mga tabla at skema at pagbibigay karapatan sa mga manggagamit ng database at iba pa.

Mga ginagamit na instruksiyon[baguhin | baguhin ang batayan]

Paglikha ng tabla[baguhin | baguhin ang batayan]

Ang instruksiyon na ginagamit sa paglikha ng tabla ng isang database ay:

CREATE TABLE Estudyante(
    ID   INT,
    Pangalan  VARCHAR(50),
    Tirahan VARCHAR(50),
    PRIMARY KEY (ID)
);

Ang tablang Estudyante ay nilikha na may mga kolumn na ID, pangalan, at petsa kung saan ang pangunahing susi(primary key) ay ang ID.

Pagpasok[baguhin | baguhin ang batayan]

Upang lagyan ng data ang tablang nilikha, ang sumusunod na instruksiyon ay ginagamit:

INSERT INTO Estudyante
        (ID, Pangalan, Tirahan)
    VALUES
        (102, Juan dela Cruz , 222 Maligaya St. Lungsod Quezon);
INSERT INTO Estudyante
        (ID, Pangalan, Tirahan)
    VALUES
        (202, Jose Santos  , 333 Masagana St. Tondo);
INSERT INTO Estudyante
        (ID, Pangalan, Tirahan)
    VALUES
        (104, Michael Reyes ,  444 Mahusay St. Paranaque);
INSERT INTO Estudyante
        (ID, Pangalan, Tirahan)
    VALUES
        (152, Lisa Aquino  , 555 Masinop St. Makati);

Pagkatapos mapasok ang apat na row ng data, ang resulta ng tabla ay:

ID Pangalan Tirahan
102 Juan dela Cruz 222 Maligaya St. Lungsod Quezon
202 Jose Santos 333 Masagana St. Tondo
104 Michael Reyes 444 Mahusay St. Paranaque
152 Lisa Aquino 555 Masinop St. Makati

Kweri(Query)[baguhin | baguhin ang batayan]

Ang instuksiyong SELECT ay ginagamit sa pagtingin ng row sa isang tabla. Ang SELECT ay nagbabalik ng lahat ng row sa isang tabla. Upang salain ang mga row ayon sa isang kriteria, ang SELECT * ay ginagamitan ng mga argumento gaya ng sumusunod:

SELECT *
    FROM Estudyante
    WHERE Pangalan="Juan dela Cruz";

Ang row lamang ng estudyante na nasa tablang "Estudyante" ang ipapakita kung ito ay may pangalan na Juan dela Cruz.

Pagbabago[baguhin | baguhin ang batayan]

Upang baguhin ang field(column), ang instruksiyon ay sumusunod:

UPDATE Estudyante
    SET Tirahan = "212 Bayani St. Bulacan"
    WHERE ID=102

Ang resulta ay pagbabago ng tirahan ng estudyanteng may ID na 102 sa "212 Bayani St. Bulacan". Ang resulta ng tabla pagkatapos ng pagbabago ay:

ID Pangalan Tirahan
102 Juan dela Cruz 212 Bayani St. Bulacan
202 Jose Santos 333 Masagana St. Tondo
104 Michael Reyes 444 Mahusay St. Paranaque
152 Lisa Aquino 555 Masinop St. Makati

Pagbura[baguhin | baguhin ang batayan]

DELETE FROM Estudyante
    WHERE Pangalan="Juan dela Cruz";

Ang estudyanteng si Juan dela Cruz ay binura sa tabla. Ang resulta ng tabla ay:

ID Pangalan Tirahan
202 Jose Santos 333 Masagana St. Tondo Manila
104 Michael Reyes 444 Mahusay St. Paranaque
152 Lisa Aquino 555 Masinop St. Makati

Pagdudugtong(Join)[baguhin | baguhin ang batayan]

Ang Join(gaya ng INNER JOIN, OUTER JOIN, at iba pa) ay ginagamit upang pagdugtungin ang dalawang tabla. Halimbawa, ang dalawang tablang Estudyante at Pagsusulit ay mapagdudugtong gamit ang pagdudugtong ng pangunahing susi ng Estudyante sa dayuhang susi ng Pagsusulit.

Lumikha ng bagong tablang Pagsusulit:

CREATE TABLE Pagsusulit(
   ID  INT NOT NULL,
   Marka       INT,
   Asignatura  VARCHAR(20)
   CONSTRAINT  Pagsusulit PRIMARY KEY (PagsusulitID),
   CONSTRAINT FK_Pagsusulit FOREIGN KEY (EstudyanteID)
              REFERENCES Estudyante(EstudyanteID)
)TYPE = InnoDB;

Lagyan ng data:

INSERT INTO Pagsusulit
        (ID, Marka, PagsusulitID)
    VALUES
        (202, 90, 233);
INSERT INTO Pagsusulit
        (EstudyanteID, Marka, PagsusulitID)
    VALUES
        (202, 100, 444);
INSERT INTO Pagsusulit
        (EstudyanteID, Marka,PagsusulitID)
    VALUES
        (104, 98, 111);
INSERT INTO Pagsusulit
        (EstudyanteID, Marka, PagsusulitID)
    VALUES
        (152, 98, 111);

Ang resulta ng tablang Pagsusulit ay:

EstudyanteID Marka PagsusulitID
202 90 233
202 100 444
104 98 111
152 98 111

Pagdugtungin ang dalawang tabla:

   SELECT  Estudyante.ID as EstudyanteID, Estudyante.Pangalan AS Pangalan, Pagsusulit.Marka AS Marka, Pagsusulit.PagsusulitID AS PagsusulitID
     FROM Estudyante
      INNER JOIN Pagsusulit
      ON Estudyante.ID = Pagsusulit.EstudyanteID

Ang resulta ay:

EstudyanteID Pangalan Marka PagsusulitID
202 Jose Santos 90 233
202 Jose Santos 100 444
104 Michael Reyes 98 111
152 Lisa Aquino 98 111

Pagbura ng tabla[baguhin | baguhin ang batayan]

Upang burahin ang mga tablang Estudyante at Pagsusulit sa database, ang instruksiyon ay:

DROP Estudyante, Pagsusulit;