• Գլխավոր
  • Լուրեր
    • Առողջապահություն
    • Անվտանգություն
    • Արհեստական Ինտելեկտ
    • Էկոլոգիա
    • Մեքենաշինություն
    • Ռոբոտաշինություն
    • Համացանց
    • Համակարգիչ
    • Սմարթֆոն
    • Սոցցանց
    • Google
    • Microsoft
    • Hi-Tech
  • Վեբ
    • PHP
    • HTML
      • HTML5
    • CSS
      • CSS3
    • JavaScript
      • jQuery
    • WordPress
  • SQL
  • Թեստեր
    • PHP
    • MySQL
    • HTML
    • JavaScript
    • CSS
  • Ֆորում
  • Հետադարձ կապ
IT-Blog.am
Տեղեկատվական տեխնոլոգիաների պորտալ
  • Գլխավոր
  • Լուրեր
    • Առողջապահություն
    • Անվտանգություն
    • Արհեստական Ինտելեկտ
    • Էկոլոգիա
    • Մեքենաշինություն
    • Ռոբոտաշինություն
    • Համացանց
    • Համակարգիչ
    • Սմարթֆոն
    • Սոցցանց
    • Google
    • Microsoft
    • Hi-Tech
  • Վեբ
    • PHP
    • HTML
      • HTML5
    • CSS
      • CSS3
    • JavaScript
      • jQuery
    • WordPress
  • SQL
  • Թեստեր
    • PHP
    • MySQL
    • HTML
    • JavaScript
    • CSS
  • Ֆորում
  • Հետադարձ կապ
Գլխավոր  /  MySQL • SQL • Web  /  SQL լեզվի հիմնական հրամանները
14 Մարտի 2016

SQL լեզվի հիմնական հրամանները

Հեղինակ Եվգինե
MySQL, SQL, Web

Ողջույն սիրելի ընթերցողներ: Մենք արդեն ծանոթացանք, թե ինչ են իրենցից ներկայացնում տվյալների բազաները, իսկ այսօր որոշեցի ավելի մանրամասն խոսել SQL լեզվի հրամանների մասին, որոնց միջոցով կստեղծենք տվյալների բազա և դրա մեջ կավելացնենք աղյուսակներ, ինչպես նաև կսովորենք նոր ինֆորմացիա ավելացնել աղյուսակների մեջ, փոփոխել դրանք և ջնջել:

Մինչ այդ, ծանոթանանք SQL-ի հիմնական հրամանների հետ: Դրանք բաժանվում են 3 խմբի՝

Տվյալների մանիպուլյացիայի լեզու (DML – Data Manipulation Language)
Նախատեսված է տվյալները կառավարելու համար: Հրամաններն են՝ SELECT, INSERT, UPDATE, DELETE:

Տվյալների սահմանման լեզու (DDL – Data Definition Language)
Նախատեսված է տվյալների նկարագրության համար: Հրամաններն են՝ CREATE, ALTER, DROP, SHOW:

Տվյալների կառավարման լեզու (DCL – Data Control Language)
Նախատեսված է ադմինիստրատիվ գործողությունների և դերերի վերագրման համար: Հրամաններն են՝ GRANT, REVOKE:

Սկսենք նոր բազա ստեղծելուց, դրա համար օգտագործվում է CREATE հրամանը՝

CREATE DATABASE ՝blog՝

որտեղ ՝blog՝-ը նոր բազայի անունն է:

Հաջորդ քայլում ՝blog՝ բազայի մեջ ստեղծենք նոր աղյուսակ: Նշեմ, որ գոյություն ունեն աղյուսակների 10 տիպեր՝

  • MyISAM
  • InnoDB
  • MARGE
  • MEMORY
  • BDB(BerkeleyDB)
  • EXAMPLE
  • FEDERATED
  • ARCHIVE
  • BLACKHOLE
  • CSV

Հիմնականում օգտագործվում են MyISAM և InnoDB աղյուսակների տիպերը: Խոստանում եմ, որ հետագայում կլինի  առանձին հոդված՝ նվիրված MyISAM և InnoDB աղյուսակների տիպերին, դրանց տարբերությանը, առավելություններին և թերություններին: Իսկ մնացած տիպերի  հետ կարող եք ավելի մանրամասն ծանոթանալ dev.mysql.com կայքում:

Աղյուսակ ստեղծելիս պետք է որոշել, թե քանի սյուն է հարկավոր մեզ  և դրանցից յուրաքանչյուրը ինչ տիպի են պատկանելու: Աղյուսակի սյուներն էլ  լինում են  մի քանի տիպերի ՝ կախված դրանց պարունակությունից: Այդ տիպերին կարող եք ծանոթանալ w3schools.com -ում: Օրինակ,  եթե մեր սյունում պետք է պահվի  տեքստային ինֆորմացիա, ապա նրա տիպը պետք է լինի կա՛մ VARCHAR, կա՛մ TEXT, կա՛մ LONGTEXT , կա՛մ էլ ցանկացած տեքստային այլ տիպ: Նույն  տրամաբանությամբ թվային  ինֆորմացիա պարունակող սյուները պետք է ունենան թվային տիպերից որևէ մեկը: Սյուները կարող են պարունակել նաև տրամաբանական արժեքներ, որոնց համար հատուկ առանձնացված տվյալների տիպեր կան: Սյուները հաճախ օգտագործվում են  նաև ամիս, ամսաթիվ, տարի, ժամանակ պահելու համար: DATETIME տիպերն էլ հենց դրանց համար են:

Հիմա ստեղծենք նոր աղյուսակ, դրա համար նույնպես օգտագործվում է CREATE հրամանը՝

USE `blog`;
CREATE TABLE `users`
(
 `id` INT(11) AUTO_INCREMENT,
 `first_name` VARCHAR(255),
 `last_name` VARCHAR(255),
 `birthday` DATE,
 `phone_number` INT(11),
 `e_mail` VARCHAR(255),
  PRIMARY KEY (`id`)
)ENGINE=MYISAM CHARSET=utf8;

USE հրամանով ընտրում ենք բազան, որի մեջ պետք է ավելանա նոր աղյուսակը: ՝users՝-ը աղյուսակի անունն է, փակագծերի մեջ հերթականությամբ գրված են սյուների անունները, իսկ դրանցից յուրաքանչյուրի դիմաց  գրված է սյան տվյալների տիպը: ՝id՝ սյան կողքին գրված AUTO_INCREMENT-ը նախատեսված է, որպեսզի տվյալներ ավելացնելիս այն ավտոմատ գեներացնի թվերը: PRIMARY KEY-ով ապահովում ենք, որ տվյալ աղյուսակում մեկից ավելի նույն id-ով տող չպետք է լինի, այսինքն id-ի կրկնությունը մեր աղյուսակում բացառում ենք:  Փակագծերից հետո ENGINE-ով նշված է աղյուսակի տիպը, իսկ  CHARSET-ը նախատեսված է, որպեսզի  մեր աղյուսակում բացի լատինատառից կարողանանք պահել այլ լեզուներով ինֆորմացիա:

Դե ինչ արդեն ունենք պատրաստի աղյուսակ, իսկ հիմա փորձենք դրա մեջ լցնել տվյալներ: Դրա համար օգտագործվում է INSERT INTO հրամանը՝

INSERT INTO `users`(`first_name`,`last_name`,`birthday`,`phone_number`,`e_mail`)
VALUES ('Պետրոս', 'Պետրոսյան', '1987-03-09','123456789', 'petros@gmail.com')

INSERT INTO հրամանից հետո գրվում է այն աղյուսակի անունը, որի մեջ պետք է ավելացնել տվյալները: Փակագծերի մեջ հերթականությամ գրում ենք սյուների անունները,  որոնց մեջ պետք է լցնենք ինֆորմացիա (ինչպես տեսնում եք ես բաց եմ թողել ՝id՝ սյունը, քանի որ AUTO_INCREMENT-ի օգնությամբ այն ավտոմատ կավելանա): VALUES-ից հետո փակագծերի մեջ արդեն համապատասխանաբար վերևի սյուների գրում ենք ավելացվող տվյալները: Վերջում հրամանը կատարելով կտեսնենք արդյունքը՝

Insert-into

Նույն կերպ կարող ենք ավելացնել մեկից ավել տող՝ VALUES-ից հետո փակագծերով մի քանի տող գրելով, որոնք առանձնացված են ստորակետերով՝

bulk-insert

Եթե պատահաբար ավելացրել եք սխալ ինֆորմացիա, կամ ցանկանում եք փոփոխություններ անել տվյալների մեջ, ապա օգնության է գալիս UPDATE հրամանը: Ենթադրենք Գևորգ Մինասյանի ծննդյան ամսաթիվը սխալ ենք մուտքագրել և անհրաժեշտ է այն փոփոխել, դրա համար կգրենք հետևյալ հրամանը՝

UPDATE `users` SET `birthday` = '1998-07-01' WHERE `id` = 4

UPDATE-ից հետո գրում ենք  աղյուսակի անունը, որտեղ պետք է կատարենք փոփոխություն: SET-ից հետո գրում ենք այն սյան անունը, որտեղ պետք է փոփոխություն անենք, իսկ WHERE-ով գրում պայման, թե որ դեպքում պետք է կատարվի հրամանը: Քանի որ պետք է փոփոխեինք Գևորգ Մինասյանի ծննդյան թիվը, իսկ նրա id-ին 4 է, ապա գրում ենք որ փոփոխությունը պետք է կատարվի միայն 4 id ունեցող տողում (եթե WHERE-ի պայմանը չգրեինք, ապա աղյուսակի բոլոր տողերի birthday դաշտի տվյալները կփոխվեին նոր արժեքով):

Եթե անհրաժեշտ է աղյուսակի կառուցվածքի մեջ փոփոխություններ կատարել, ինչպիսիք են աղյուսակի անուն փոխելը, նոր սյուն ավելացնելը  կամ սյան տիպը փոխելը, ապա օգտագործվում է ALTER հրամանը: Օրինակ, փոխենք մեր ստեղծած users աղյուսակի անունը՝

ALTER TABLE `users` RENAME `staff_list`

Բազաները թարմացնելուց հետո կտեսնեք արդյունքը՝

rename-table

Հիմա աղյուսակի մեջ ավելացնենք նոր address սյունը, դրա համար՝

ALTER TABLE `staff_list` ADD  `address` VARCHAR(255) AFTER `phone_number`

add-new-fild

ADD-ից հետո գրում ենք նոր ավելացվող սյան անունը և տիպը, հետո  նշում թե, որ սյունից հետո պետք է ավելանա( կարող ենք AFTER-ի փոխարեն գրել BEFORE՝ սյունից առաջ ավելացնելու համար, իսկ եթե չնշենք ո՛չ AFTER, ո՛չ BEFORE, ապա սյունը  կավելանա աղյուսակի վերջից):

SELECT հրամանը հնարավորություն է տալիս  աղյուսակից ստանալ որոշակի տվյալներ: Օրինակ, մեր աղյուսակից ստանանք բոլոր աշխատողների անունները, ազգանունները և հեռախոսահամարները:

SELECT `first_name`,`last_name`,`phone_number` FROM `staff_list`

SELECT-ից հետո ստորակետերով գրում ենք այն դաշտերի անունները, որոնք անհրաժեշտ է ստանալ, իսկ FROM-ից հետո նշում աղյուսակի անունը: Կարող ենք ավելացնել նաև պայման, որպեսզի ստանանք միայն 1995թ-ից հետո ծնված մարդկանց տվյալները՝

select-fname-lname-where

Կարող ենք AND-ով ավելացնել նոր պայման, օրինակ, ստանալ բոլոր աշխատողների անունները, ազգանունները և հեռախոսահամարները, ովքեր ծնվել են 1995թ-ից հետո և էլ. փոստը սկսվում է a տառով՝

SELECT `first_name`,`last_name`,`phone_number` FROM `staff_list` WHERE `birthday` > '1995' AND `e_mail` LIKE 'a%'

Աղյուսակից կարող ենք նաև ջնջել տվյալներ , դրա համար օգտագործվում է DELETE հրամանը՝

DELETE FROM `staff_list` WHERE `id` = 2

Իսկ եթե անհրաժեշտ է ջնջել աղյուսակը կամ տվյալների բազան, ապա օգտագործվում է DROP հրամանը՝

DROP TABLE `staff_list`

DROP DATABASE `blog`

Այսքանով ավարտեցինք SQL լեզվի հիմնական հրամանների հետ ծանոթացումը: Եթե առաջանան հարցեր, ապա կարող եք գրել մեկնաբանություններում և մենք սիրով կպատասխանենք ձեր հարցերին:

Շնորհակալություն մեր բլոգից օգտվելու համար:

Կապված գրառումներ

  • mysql transaction

    MySQL գործարքի(transaction) կառավարման օպերատորներ

    11/19/2016
  • Class

    Կլասների (classes) գրելաձևը (syntax)

    10/20/2016
  • MySQL Trigger

    MySQL տրիգերներ (Triggers) և իրադարձություններ(Events)

    10/04/2016
Facebook
  • Շատ Դիտված Գրառումներ
  • Նոր գրառումներ
  • Calculator
    Հաշվիչի (calculator) պատրաստում 04/18/2016
  • Sendmail կարգավորումներ 04/01/2016
  • Recursion
    Ռեկուրսիա (recursion) հասկացությունը 06/02/2016
  • Icon տառատեսակներ 02/21/2016
  • MySQL joins
    MySQL JOINS (MySQL միացումներ) 06/13/2016
  • Ի՞նչ է Pi Network-ը և ինչպե՞ս վաստակել Pi 03/27/2020
  • Honda-ն ներկայացրել է մոտոցիկլետ, որն օգտագործում է քամու էներգիա 12/23/2017
  • Նոր 3D-տպիչ սարքը ստեղծում է առարկաներ վայրկյանների ընթացքում 12/22/2017
  • Հետազոտողներն օգտագործում են էլեկտրական հոսանքներ`մարդու հյուսվածքներում քաղցկեղի հայտնաբերման համար 12/18/2017
  • Nvidia ընկերությունը ներկայացրել է երբևէ ստեղծված ամենահզոր գրաֆիկական պրոցեսորը 12/16/2017
  • WordPress -ի տեղադրումը .Net -ի վրա 03/16/2017
  • Class
    Կլասների (classes) գրելաձևը (syntax) 10/20/2016
  • encapsulation
    Ինկապսուլացիա (Encapsulation) 08/17/2016
  • object oriented programming
    Օբյեկտ կողմնորոշված ծրագրավորում (OOP) 07/04/2016
  • Ի՞նչ է Pi Network-ը և ինչպե՞ս վաստակել Pi 03/27/2020
  • Honda-ն ներկայացրել է մոտոցիկլետ, որն օգտագործում է քամու էներգիա 12/23/2017
  • Նոր 3D-տպիչ սարքը ստեղծում է առարկաներ վայրկյանների ընթացքում 12/22/2017
  • mysql transaction
    MySQL գործարքի(transaction) կառավարման օպերատորներ 11/19/2016
  • MySQL Trigger
    MySQL տրիգերներ (Triggers) և իրադարձություններ(Events) 10/04/2016
  • Procedures and Functions
    MySQL ընթացակարգեր (procedures) և ֆունկցիաներ (functions) 08/31/2016
  • MYSQL View
    MySQL ներկայացումներ (VIEWS) 07/16/2016
  • WordPress -ի տեղադրումը .Net -ի վրա 03/16/2017
  • SEO խրվակներ WordPress-ի համար 04/25/2016
  • Ծանոթացում WordPress-ի կառավարակետի հետ (մաս 2) 02/24/2016
  • Ի՞նչ է CMS-ը 02/17/2016
© 2020 թ.  IT-Blog.am Բոլոր հեղինակային իրավունքները պաշտպանված են:

Սույն կայքում տեղադրված նյութերի հեղինակային իրավունքը պատկանում է բացառապես IT-Blog.am կայքի հեղինակներին և կայքում բոլոր հրապարակված նյութերն անհատական օգտագործման համար են։ Այս կայքում  հրապարակված նյութերի (մասնակի կամ ամբողջական) վերահրապարկումը տեղեկատվություն տարածող այլ միջոցներում (բացառությամբ սոցկայքերի) արգելված է։ Խախտում թույլ տված անձինք կենթարկվեն պատասխանատվության` օրենքով սահմանված կարգով։