SlideShare a Scribd company logo
1 of 29
MySQL Database

      Өгөгдлийн сан
Database гэж юу вэ?
   Өгөгдлийн бааз буюу Database гэдэг
    нь хоорондын хамаарал бүхий
    өгөгдөлүүдийн цуглуулга юм.
Database юунд хэрэгтэй вэ?
   Бид янз бүрийн мэдээ мэдээллийг өдөр бүр хүлээн авч
    байдаг.
   Тэдгээр мэдээллүүдийг бид эмхэлж цэгцлэх шаардлага
    гардаг бөгөөд бид түүнийг өгөгдлийн баазад буюу
    database-д хадгалдаг.
   Жишээ нь

Нэр                Нас                 Ажилд орсон огноо
Батбаяр            Хатанбаатар         1994-03-11
Энхбаяр            Дорж                1992-02-05
Гэрэл              Бат                 1988-09-29
Явуухулан          Бавуу               1988-08-09
Хуучин систем
   Бид бүх мэдээллээ
    цаасандээр хадгалдаг



   Мөн бүх мэдээлэл нь өөр
    өөрийн хэлбэр
    дүрстэйгээр оршин байдаг
Хуучин системийн
дутагдалтай тал
   Доорх зүйлс нь бидний хуучин
    системийн дутагдал
       Залхуутай
       Цаг их зарцуулдаг
       Мэдээллийн алдагдал их
       Мэдээллийн алдаа их
Компьютерт хадгалсны
давуу тал
   Мэдээллийн бодитоор эзлэх хэмжээ
    бага
   Мэдээллийг дундаа ашиглахад
    хялбар
   Нэгдсэн нэг стандартад
   Мэдээллийг алдаагүй байх магадлал
    өндөр
   Мэдээллийн нууцлал хамгаалалт
    өндөр
DBMS гэж юу вэ?
   DBMS гэдэг нь Database Management System гэсэн үгний товчлол
    юм.
   Энэ нь Өгөгдлийн санг удирдах бөгөөд бид зөвхөн DBMS-д л
    хүсэлтээ илэрхийдэг

                       Database
             A003 Allen       A007    Shane
             A004 Brian       A008    Ricky
      Retrieve Data                   Update Data
         Insert Data                  Delete Data
                       DBMS
Төвлөрсөн Database систем

•Бүх мэдээллийг
төвлөрсөн
мэдээллийн санд
хадгалдаг.
•Хэрэглэгч өөрийн
хандах эрхийн дагуу
уг Database-руу
хандана.
MySQL-д нэвтрэх
   shell>mysql –h <host> -u <username> -p <password>
       Host холбогдох гэж буй серверийн нэр.
       Username өгөгдлийн санд хандах
        хэрэглэгчийн нэр
       Password өгөгдлийн санд хандах
        хэрэглэгчийн нууц үг
MySQL Database
   show databases; командаар бүх
    database-ээ хардаг.
   MySQL-ийн комманд болгон нь (;) –
    аар төгссөн байдаг.
   use <database_name>; командаар
    database-ээ сонгодог.
Шинэ database үүсгэх
   CREATE DATABASE
    <database_name>; коммандаар шинэ
    database үүсгэнэ.
   DROP DATABASE <database_name>;
    коммандаар үүсгэсэн database-ээ
    устгана.

CREATE DATABASE UbErdemOyu;
Хүснэгт /Table/
   Яагаад хүснэгт хэрэгтэй гэж

   Мэдээллийн зөв байдлыг
    тодорхойлох
       Keys
       Default value
       Indexes
       Null values
Хүснэгт үүсгэх
    CREATE TABLE <table_name> (<column_name>
     <data_type>); командаар хүснэгт үүсгэнэ
    DROP TABLE <table_name>; коммандаар үүсгэсэн
     хүснэгтийг устгана.
    Үүсгэсэн хүснэгтээ харахдаа show tables; коммандаар
     харана

 CREATE TABLE student
 (
 Student_id int primary key,
 Student_name varchar(255) not null
 );
Хүснэгтийн файлын төрөл


Файл           Тайлбар
               Хүснэгтийг тодорхойлсон
tbl_name.frm   файл
tbl_name.MYD   Өгөгдлийн файл
tbl_name.MYI   Index файл
Өгөгдлийн төрөл /Data type/
   Char
   Varchar
   Text
   Int
   Smallint
   Float
   Bit
   Time
   Timestamp
Data Integrity



Найдвартай   Оновчтой   Data Integrity
  байдал      байдал
Entity Integrity
   Entity Integrity нь өгөгдлийн дахин
    давтагдахгүй байх нөхцлийг
    бүрдүүлж байдаг
   Үүнд primary key болон unique key
    ордог
   Entity Integrity-г мөн Row Integrity
    гэдэг
Referential Integrity
   Referential Integrity нь хамааралтай
    хүснэгтүүдийн хоорондын холбоосын
    аяулгүй байдлыг хангаж байдаг.
   Ингэснээр бид илүү нарийн
    уяалдаатай мэдээллийг бүрдүүлэх
    боломжтой
   Үүнд foreign key ордог.
Referential Integrity

                     Хэрэв эцэг
                      Хэрэв эцэг
                     хүснэгтэд
                      хүснэгтэд
                                     Хүү
    Нэмэх            байхгүй бол
                      байхгүй бол


Бичлэг
              Хэрэв хүү
               Хэрэв хүү
              хүснэгтэд
                                    Эцэг
               хүснэгтэд
     Устгах   байгаа бол
               байгаа бол
Анхдагч түлхүүр баганыг
тодорхойлох /PRIMARY
KEY/
CREATE TABLE Table_name
(<Column_definition> PRIMARY KEY);

Эсвэл

CREATE TABLE Table_name
(<Column_definition>,
PRIMARY KEY(Column_name[,Column_name])
);

Жишээ нь:

CREATE TABLE Student
( Student_id int PRIMARY KEY )
Үүсгэсэн хүснэгтэнд primary
key багана үүсгэх
   ALTER TABLE <table_name> ADD
    CONSTRAINT PRIMARY KEY
    (<column_name>[,<column_name>]);
    коммандаар үүсгэнэ.

Жишээ нь:
ALTER TABLE Student ADD
 CONSTRAINT PRIMARY KEY
 (student_id)
AUTO_INCREMENT
   AUTO_INCREMENT нь бидэнд дахин давтагдахгүй
    баганыг үүсгэхэд тусалдаг
   Бид шинэ мөр оруулах тутамд уг багана нь
    автоматаар дугаарлагдаж байдаг

Жишээ нь:
CREATE TABLE Student (
   Student_id INT NOT NULL AUTO_INCREMENT,
   Studentname CHAR(30) NOT NULL,
   PRIMARY KEY (id)
);
Холбоос түлхүүр
тодорхойлох /FOREIGN
KEY/

 Primary Key
                Эцэг хүснэгт




               Хүү хүснэгт
Foreign Key
Холбоос түлхүүр
тодорхойлох /FOREIGN
KEY/
CREATE TABLE Table_name
(<Column_definition> REFERANCES
   <referance_table_name>(referance_column_name));

Жишээ нь:

CREATE TABLE Student (
   Student_id INT UNSIGNED NOT NULL AUTO_INCREMENT,
   Student_name CHAR(60) NOT NULL,
   Lesson_id INT NOT NULL REFERANCES Lesson(Lesson_id)
);
Хүснэгтэнд өгөгдөл оруулах
   INSERT [INTO] <Table_name>
    VALUES(<values>[,<values>[,…]]);
    коммандаар оруулна.

Жишээ нь:
INSERT INTO student
  VALUES(1,’Батсүрэн’),(2,’Амархүү’)
Оруулсан өгөгдлийг
засварлах
UPDATE <Table_name> SET
  <Column_name = Value>
[WHERE <Search condition>]

Жишээ нь:

UPDATE Student SET student_name =
 ‘Баатархүү’ WHERE student_id = 1
Олон баганд засвар оруулах
   Бид олон баганд нэгэн зэрэг засвар
    оруулж болно.

Жишээ нь:

UPDATE student SET student_id = 1,
 student_name = ‘Баатархүү’ WHERE
 student_id = 3
Оруулсан өгөгдлийг устгах
DELETE FROM <Table_name> [WHERE
 <Search_Condition>]; коммандаар
 устгана.

Жишээ нь:

DELETE FROM student WHERE
 student_id = student_id = 1
TRUNCATE TABLE
   TRUNCATE TABLE <table_name>;
    комманд нь бүх хүснэгтийн бүх
    өгөгдлийг устгадаг.

Жишээ нь:

TRUNCATE TABLE student

More Related Content

What's hot

Програм хангамжийн компаниудын дунд хийсэн судалгаа 2011
Програм хангамжийн компаниудын дунд хийсэн судалгаа 2011Програм хангамжийн компаниудын дунд хийсэн судалгаа 2011
Програм хангамжийн компаниудын дунд хийсэн судалгаа 2011Mongolian Software Industry Association
 
Microsoft excel програм гарын авлага
Microsoft excel програм гарын авлагаMicrosoft excel програм гарын авлага
Microsoft excel програм гарын авлагаEnkhjargalDashdorjEn
 
магадлалын онол
магадлалын онолмагадлалын онол
магадлалын онолTsagaanaa Sambuu
 
Шугаман алгоритмын бодлогууд
Шугаман алгоритмын бодлогуудШугаман алгоритмын бодлогууд
Шугаман алгоритмын бодлогуудБаярсайхан Л
 
давталттай алгоритм
давталттай алгоритмдавталттай алгоритм
давталттай алгоритмEnkh Gvnj
 
Салаалсан алгоритмын бодлогууд
Салаалсан алгоритмын бодлогуудСалаалсан алгоритмын бодлогууд
Салаалсан алгоритмын бодлогуудБаярсайхан Л
 
Лекц-6
Лекц-6Лекц-6
Лекц-6taivna
 
мультмедиа технологи
мультмедиа технологимультмедиа технологи
мультмедиа технологиKhishighuu Myanganbuu
 
Pc бүтэц лекц 1
Pc бүтэц лекц 1Pc бүтэц лекц 1
Pc бүтэц лекц 1Kumis Ermek
 
Ogogdliin sangiin zohion baiguulalt lekts
Ogogdliin sangiin zohion baiguulalt lektsOgogdliin sangiin zohion baiguulalt lekts
Ogogdliin sangiin zohion baiguulalt lektsАлдарболд Э.
 

What's hot (20)

Програм хангамжийн компаниудын дунд хийсэн судалгаа 2011
Програм хангамжийн компаниудын дунд хийсэн судалгаа 2011Програм хангамжийн компаниудын дунд хийсэн судалгаа 2011
Програм хангамжийн компаниудын дунд хийсэн судалгаа 2011
 
Microsoft excel програм гарын авлага
Microsoft excel програм гарын авлагаMicrosoft excel програм гарын авлага
Microsoft excel програм гарын авлага
 
Access1
Access1Access1
Access1
 
It101 lec6 10.06
It101 lec6 10.06It101 lec6 10.06
It101 lec6 10.06
 
магадлалын онол
магадлалын онолмагадлалын онол
магадлалын онол
 
Шугаман алгоритмын бодлогууд
Шугаман алгоритмын бодлогуудШугаман алгоритмын бодлогууд
Шугаман алгоритмын бодлогууд
 
User requirements
User requirementsUser requirements
User requirements
 
MT101 Lecture 1(Mongolia)
MT101 Lecture 1(Mongolia)MT101 Lecture 1(Mongolia)
MT101 Lecture 1(Mongolia)
 
давталттай алгоритм
давталттай алгоритмдавталттай алгоритм
давталттай алгоритм
 
Салаалсан алгоритмын бодлогууд
Салаалсан алгоритмын бодлогуудСалаалсан алгоритмын бодлогууд
Салаалсан алгоритмын бодлогууд
 
Database 3
Database 3Database 3
Database 3
 
Лекц-6
Лекц-6Лекц-6
Лекц-6
 
загвар гэж юу вэ
загвар гэж юу вэзагвар гэж юу вэ
загвар гэж юу вэ
 
алгоритм 10 р анги
алгоритм 10 р ангиалгоритм 10 р анги
алгоритм 10 р анги
 
мультмедиа технологи
мультмедиа технологимультмедиа технологи
мультмедиа технологи
 
Pc бүтэц лекц 1
Pc бүтэц лекц 1Pc бүтэц лекц 1
Pc бүтэц лекц 1
 
Ogogdliin sangiin zohion baiguulalt lekts
Ogogdliin sangiin zohion baiguulalt lektsOgogdliin sangiin zohion baiguulalt lekts
Ogogdliin sangiin zohion baiguulalt lekts
 
Systemiin shinjilgee ba zohiomj lekts
Systemiin shinjilgee ba zohiomj lektsSystemiin shinjilgee ba zohiomj lekts
Systemiin shinjilgee ba zohiomj lekts
 
It101 lect9
It101 lect9It101 lect9
It101 lect9
 
Database 5
Database 5Database 5
Database 5
 

Similar to Day 1 database

Similar to Day 1 database (11)

datatable ,dataset,datagridview in C#
datatable ,dataset,datagridview in C#datatable ,dataset,datagridview in C#
datatable ,dataset,datagridview in C#
 
Хүснэгт
ХүснэгтХүснэгт
Хүснэгт
 
Se304 lec7
Se304 lec7Se304 lec7
Se304 lec7
 
Dynamic web 11
Dynamic web 11Dynamic web 11
Dynamic web 11
 
My sql lec2
My sql lec2My sql lec2
My sql lec2
 
Access Table
Access TableAccess Table
Access Table
 
Data set
Data setData set
Data set
 
005 өгөгдлийн нөөцийн удирдлага
005 өгөгдлийн нөөцийн удирдлага005 өгөгдлийн нөөцийн удирдлага
005 өгөгдлийн нөөцийн удирдлага
 
Se304 lec12
Se304 lec12Se304 lec12
Se304 lec12
 
8 9 angin ogogdl prs
8 9 angin ogogdl prs8 9 angin ogogdl prs
8 9 angin ogogdl prs
 
Pp Lect12 13
Pp Lect12 13Pp Lect12 13
Pp Lect12 13
 

Day 1 database

  • 1. MySQL Database Өгөгдлийн сан
  • 2. Database гэж юу вэ?  Өгөгдлийн бааз буюу Database гэдэг нь хоорондын хамаарал бүхий өгөгдөлүүдийн цуглуулга юм.
  • 3. Database юунд хэрэгтэй вэ?  Бид янз бүрийн мэдээ мэдээллийг өдөр бүр хүлээн авч байдаг.  Тэдгээр мэдээллүүдийг бид эмхэлж цэгцлэх шаардлага гардаг бөгөөд бид түүнийг өгөгдлийн баазад буюу database-д хадгалдаг.  Жишээ нь Нэр Нас Ажилд орсон огноо Батбаяр Хатанбаатар 1994-03-11 Энхбаяр Дорж 1992-02-05 Гэрэл Бат 1988-09-29 Явуухулан Бавуу 1988-08-09
  • 4. Хуучин систем  Бид бүх мэдээллээ цаасандээр хадгалдаг  Мөн бүх мэдээлэл нь өөр өөрийн хэлбэр дүрстэйгээр оршин байдаг
  • 5. Хуучин системийн дутагдалтай тал  Доорх зүйлс нь бидний хуучин системийн дутагдал  Залхуутай  Цаг их зарцуулдаг  Мэдээллийн алдагдал их  Мэдээллийн алдаа их
  • 6. Компьютерт хадгалсны давуу тал  Мэдээллийн бодитоор эзлэх хэмжээ бага  Мэдээллийг дундаа ашиглахад хялбар  Нэгдсэн нэг стандартад  Мэдээллийг алдаагүй байх магадлал өндөр  Мэдээллийн нууцлал хамгаалалт өндөр
  • 7. DBMS гэж юу вэ?  DBMS гэдэг нь Database Management System гэсэн үгний товчлол юм.  Энэ нь Өгөгдлийн санг удирдах бөгөөд бид зөвхөн DBMS-д л хүсэлтээ илэрхийдэг Database A003 Allen A007 Shane A004 Brian A008 Ricky Retrieve Data Update Data Insert Data Delete Data DBMS
  • 8. Төвлөрсөн Database систем •Бүх мэдээллийг төвлөрсөн мэдээллийн санд хадгалдаг. •Хэрэглэгч өөрийн хандах эрхийн дагуу уг Database-руу хандана.
  • 9. MySQL-д нэвтрэх  shell>mysql –h <host> -u <username> -p <password>  Host холбогдох гэж буй серверийн нэр.  Username өгөгдлийн санд хандах хэрэглэгчийн нэр  Password өгөгдлийн санд хандах хэрэглэгчийн нууц үг
  • 10. MySQL Database  show databases; командаар бүх database-ээ хардаг.  MySQL-ийн комманд болгон нь (;) – аар төгссөн байдаг.  use <database_name>; командаар database-ээ сонгодог.
  • 11. Шинэ database үүсгэх  CREATE DATABASE <database_name>; коммандаар шинэ database үүсгэнэ.  DROP DATABASE <database_name>; коммандаар үүсгэсэн database-ээ устгана. CREATE DATABASE UbErdemOyu;
  • 12. Хүснэгт /Table/  Яагаад хүснэгт хэрэгтэй гэж  Мэдээллийн зөв байдлыг тодорхойлох  Keys  Default value  Indexes  Null values
  • 13. Хүснэгт үүсгэх  CREATE TABLE <table_name> (<column_name> <data_type>); командаар хүснэгт үүсгэнэ  DROP TABLE <table_name>; коммандаар үүсгэсэн хүснэгтийг устгана.  Үүсгэсэн хүснэгтээ харахдаа show tables; коммандаар харана CREATE TABLE student ( Student_id int primary key, Student_name varchar(255) not null );
  • 14. Хүснэгтийн файлын төрөл Файл Тайлбар Хүснэгтийг тодорхойлсон tbl_name.frm файл tbl_name.MYD Өгөгдлийн файл tbl_name.MYI Index файл
  • 15. Өгөгдлийн төрөл /Data type/  Char  Varchar  Text  Int  Smallint  Float  Bit  Time  Timestamp
  • 16. Data Integrity Найдвартай Оновчтой Data Integrity байдал байдал
  • 17. Entity Integrity  Entity Integrity нь өгөгдлийн дахин давтагдахгүй байх нөхцлийг бүрдүүлж байдаг  Үүнд primary key болон unique key ордог  Entity Integrity-г мөн Row Integrity гэдэг
  • 18. Referential Integrity  Referential Integrity нь хамааралтай хүснэгтүүдийн хоорондын холбоосын аяулгүй байдлыг хангаж байдаг.  Ингэснээр бид илүү нарийн уяалдаатай мэдээллийг бүрдүүлэх боломжтой  Үүнд foreign key ордог.
  • 19. Referential Integrity Хэрэв эцэг Хэрэв эцэг хүснэгтэд хүснэгтэд Хүү Нэмэх байхгүй бол байхгүй бол Бичлэг Хэрэв хүү Хэрэв хүү хүснэгтэд Эцэг хүснэгтэд Устгах байгаа бол байгаа бол
  • 20. Анхдагч түлхүүр баганыг тодорхойлох /PRIMARY KEY/ CREATE TABLE Table_name (<Column_definition> PRIMARY KEY); Эсвэл CREATE TABLE Table_name (<Column_definition>, PRIMARY KEY(Column_name[,Column_name]) ); Жишээ нь: CREATE TABLE Student ( Student_id int PRIMARY KEY )
  • 21. Үүсгэсэн хүснэгтэнд primary key багана үүсгэх  ALTER TABLE <table_name> ADD CONSTRAINT PRIMARY KEY (<column_name>[,<column_name>]); коммандаар үүсгэнэ. Жишээ нь: ALTER TABLE Student ADD CONSTRAINT PRIMARY KEY (student_id)
  • 22. AUTO_INCREMENT  AUTO_INCREMENT нь бидэнд дахин давтагдахгүй баганыг үүсгэхэд тусалдаг  Бид шинэ мөр оруулах тутамд уг багана нь автоматаар дугаарлагдаж байдаг Жишээ нь: CREATE TABLE Student ( Student_id INT NOT NULL AUTO_INCREMENT, Studentname CHAR(30) NOT NULL, PRIMARY KEY (id) );
  • 23. Холбоос түлхүүр тодорхойлох /FOREIGN KEY/ Primary Key Эцэг хүснэгт Хүү хүснэгт Foreign Key
  • 24. Холбоос түлхүүр тодорхойлох /FOREIGN KEY/ CREATE TABLE Table_name (<Column_definition> REFERANCES <referance_table_name>(referance_column_name)); Жишээ нь: CREATE TABLE Student ( Student_id INT UNSIGNED NOT NULL AUTO_INCREMENT, Student_name CHAR(60) NOT NULL, Lesson_id INT NOT NULL REFERANCES Lesson(Lesson_id) );
  • 25. Хүснэгтэнд өгөгдөл оруулах  INSERT [INTO] <Table_name> VALUES(<values>[,<values>[,…]]); коммандаар оруулна. Жишээ нь: INSERT INTO student VALUES(1,’Батсүрэн’),(2,’Амархүү’)
  • 26. Оруулсан өгөгдлийг засварлах UPDATE <Table_name> SET <Column_name = Value> [WHERE <Search condition>] Жишээ нь: UPDATE Student SET student_name = ‘Баатархүү’ WHERE student_id = 1
  • 27. Олон баганд засвар оруулах  Бид олон баганд нэгэн зэрэг засвар оруулж болно. Жишээ нь: UPDATE student SET student_id = 1, student_name = ‘Баатархүү’ WHERE student_id = 3
  • 28. Оруулсан өгөгдлийг устгах DELETE FROM <Table_name> [WHERE <Search_Condition>]; коммандаар устгана. Жишээ нь: DELETE FROM student WHERE student_id = student_id = 1
  • 29. TRUNCATE TABLE  TRUNCATE TABLE <table_name>; комманд нь бүх хүснэгтийн бүх өгөгдлийг устгадаг. Жишээ нь: TRUNCATE TABLE student