My sql lec2

Preview:

Citation preview

MySQL lecture

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

MySQL

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

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

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

MySQL

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

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

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

MySQL

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

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

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

JDBC

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

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

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

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

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

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

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

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

SELECT columnName1,columnName2 ,…FROM table1INNER JOIN table2 ON

table1.columnName=table2.columnName

INSERT Statement

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

UPDATE Statement

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

DELETE Statement

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

SQL

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

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

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

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

SELECT команд

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

SELECT column_nameFROM table_name

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

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

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

WHERE команд

SELECT * FROM Persons WHERE FirstName=‘Tom’

SELECT * FROM Persons WHERE Year>1965

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

SELECT * FROM PersonsWHERE FisrtName LIKE ‘O%’

SELECT * FROM PersonsWHERE FisrtName LIKE ‘%O%’

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

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

IN оператор

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

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

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

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

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

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

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

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

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