my sql lec2

22
MySQL lecture

Upload: -

Post on 17-May-2015

821 views

Category:

Documents


6 download

TRANSCRIPT

Page 1: My sql lec2

MySQL lecture

Page 2: My sql lec2

Java өгөгдлийн сан програмчлалJava болон MySQL сервер програмуудыг ашиглан сүлжээни орчинд өгөгдлийн сантай ажиллах программ хийх боломжтой. Бусад хувилбарууд: Java , access database Java ,oracle database server Java ,Microsoft SQL server Java , Sybase Java ,IBM DB2

Page 3: My sql lec2

MySQL

MySQL нь сервер программ юм.Энэ програмыг суулгасан компьютерийг өгөгдлийн сангийн сервер гэж нэрлэдэг.

Ийм сервер рүү java программ ашиглан дэлхийн аль ч цэгээс дээрх өгөгдөлтэй нь ажиллах боломжтой.

MySQL сервер лүү холбогдохын тулд уг сервер дээр бүртгэлтэй хэрэглэгчийн нэр , нууц үгийг ашигладаг

Page 4: My sql lec2

MySQL

MySQL нь сервер дэх хамгийн өндөр эрхтэй хэрэглэгч бол root хэрэглэгч юм

Root хэрэглэгч нь бусад хэрэглэгчийг үүсгэх ,устгах , хандах баазыг нь зааж өгөх , уг бааз дээрээ ямар эрхтэй ажиллах бусад баазуудыг тохируулах зэрэг бүх эрхээр хангагдсан байдаг

MySQL серверийг суулгасны дараа Root хэрэглэгч нь нууц үггүй байдаг тул нэн даруй зохих шаардлага хангасан нууц үгийг олгох шаардлагатай байдаг

Page 5: My sql lec2

MySQL

MySQL програмыг http://www.mysql.com/ сайтаас татаж авч болно.MySQL-ийн давуу талууд:• Бусад өгөгдлийн сангийн програмуудыг

бодвол хурдтай ажилладаг• 2 tb хэмжээний бичлэгүүдтэй байхад ч

хангалттай хэмжээнд ажиллах боломжтой • Үнэгүй• Open Source

Page 6: My sql lec2

JDBC

Java хэлийг ашиглан өгөгдлийн сантай ажиллахын тулд JDBC драйверийг ашигладаг

Ихэнх өргөн хэрэглэгддэг өгөгдлийн сангийн програмууд нь (MySQL , Oracle ) JDBC драйверуудыг гаргаж өгсөн байдаг.

Page 7: My sql lec2

MySQL –JDBC (MySQL Connector/J) MySQL –ийг JDBC тэй ашиглахын тулд

MySQL –н JDBC драйвер болох MySQL Connector/J програмыг суулгах шаардлагатай байдаг

Энэ драйверийг http://www.mysql.com/products/connector/ сайтаас авч болно

Page 8: My sql lec2

Order by Clause

Select authorID , firstName, lastName FROM authors ORDER BY lastName ASC Select authorID , firstName, lastName FROM authors where lastName LIKE ‘%c’ ORDER BY lastName ASC

Page 9: My sql lec2

Олон хүснэгт холбон өгөгдөл авах

Ерөнхий хэлбэр :INSERT JOIN

SELECT columnName1,columnName2 ,…FROM table1INNER JOIN table2 ON

table1.columnName=table2.columnName

Page 10: My sql lec2

INSERT Statement

Хүснэгтэд өгөгдөл оруулахад Ерөнхий хэлбэр :INSERT INTO tableName (columnName1,.,columnNameN)VALUES (value1,…..valueN)Жишээ:INSERT INTO authors (firstName,lastName) VALUES (‘Sue’,’Smith’)

Page 11: My sql lec2

UPDATE Statement

Хүснэгт дэх өгөгдлийг өөрчлөхдөөUPDATE table_name SET columnName1=value1,…..columnNameN=valueNWHERE criteriaЖишээUPDATE authorsSET lastName=‘Jones’WHERE lastName=‘Smith’ AND firstName=‘Sue’

Page 12: My sql lec2

DELETE Statement

Хүснэгтээс өгөгдөл устгахдаа DELETE FROM table_name WHERE criteriaЖишээ DELETE FROM authors WHERE lastName=‘Jones’ and firstName=‘Sue’

Page 13: My sql lec2

SQL

CREATE DATABASE IF NOT EXISTS books;USE books;DROP TABLE IF EXISTS author;

Page 14: My sql lec2

Өгөгдлийн сан руу монголоор бичих Өгөгдлийн сангийн тэмдэгтийн

кодчилолыг UTF8 буюу unicode болгох. MySQL –ийг суулгасны дараа хэрвээ тохируулаагүй бол тэмдэгтийн кодчилол нь default-аараа буюу latin1 дээр байдаг

Үүнийг UTF8 болгохын тулдALTER DATABASE баазын_нэр DEFAULT CHARACTER SET utf8 COLLATE =utf8_general_ci гэсэн коианд өгнө.

Page 15: My sql lec2

SELECT команд

Хүснэгтээс өгөгдөл гаргаж авахад хэрэглэгдэнэ.

SELECT column_nameFROM table_name

Хэрвээ бүх өгөгдлийг биш ялгаатай өгөгдлийг гаргаж авахыг хүсвэл DISTINCT түлхүүр үгийг хэрэглэнэ SELECT DISTINCT column_name FROM table_name

Page 16: My sql lec2

WHERE команд Хандах бичлэгийг нөхцөл ашиглан

тодорхойлноSELECT column_name FROM table_nameWHERE column_name operator valueНөхцөлд ашиглагдах операторууд- <>> <>= <=BETWEEN LIKE

Page 17: My sql lec2

WHERE команд

SELECT * FROM Persons WHERE FirstName=‘Tom’

SELECT * FROM Persons WHERE Year>1965

Page 18: My sql lec2

LIKE операторSELECT column_name FROM table_name WHERE column_name LIKE pattern

SELECT * FROM PersonsWHERE FisrtName LIKE ‘O%’

SELECT * FROM PersonsWHERE FisrtName LIKE ‘%O%’

Page 19: My sql lec2

AND ба OR операторууд Олон нөхцөлийг холбоход хэрэглэгдэнэ.SELECT * FROM PersonsWHERE FirstName =‘Tom’AND LastName =‘Cat’

SELECT * FROM PersonsWHERE ( FirstName =‘Tom’ OR FirstName=‘John’ ) AND LastName =‘Cat’

Page 20: My sql lec2

IN оператор

Утгуудыг нь зааж өгөх боломжийг олгодог

SELECT column_name FROM table_name WHERE column_name IN (value1,value2,…)

SELECT * FROM Persons WHERE lastName IN (‘Stephan’,’Anderson’)

Page 21: My sql lec2

BETWEEN ….. AND …. оператор

Хоёр утганы хоорондох өгөгдлийг заахад хэрэглэгддэг. Энэ хоёр утга нь тоо , текст , огноо төрлийн өгөгдөл байж болдог.

SELECT column_name FROM table_name WHERE column_name BETWEEN value1 AND value2 Текст утгуудыг зарим өгөгдлийн сангууд

ондоо ондоогоор харьцуулдаг тул нэг бааз дээр нэг ижил query өгөхөд ч ялгаатай үр дүн гаргаж болно гэдгийг анхаарах хэрэгтэй

Page 22: My sql lec2

BETWEEN ….. AND …. оператор SELECT * FROM Persons WHERE LastName BETWEEN ‘Hansen’ and ‘Pettersen’

SELECT * FROM Persons WHERE LastName NOT BETWEEN ‘Hansen’ and ‘Pettersen’