1. Trang chủ
  2. » Thể loại khác

Ngôn ngữ truy vấn CSDL MySQL Trần Tiến Dũng Session 2 MySQL

18 65 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 18
Dung lượng 799,24 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Các kiểu dữ liệu trong MySQLn Dữ liệu dạng số Kiểu Dữ liệu Kích thước Bytes floatsize,d Một số lớn với dấu chấm động.. chỉ số các con số sau dấu chấm thập phân doublesize,d Một số lớn v

Trang 1

Hệ Quản Trị CSDL MySQL

Session 02

Hệ Quản Trị CSDL MySQL

Session 02

Trang 2

Tổng Quan

n Giới thiệu về MySQL

n Làm việc với MySQL

n Kết nối với cơ sở dữ liệu MySQL

n Sử dụng phát biểu Select để hiển thị dữ liệu Kết nối với cơ sở dữ liệu MySQL

Sử dụng phát biểu Select để hiển thị dữ liệu

Trang 3

Giới thiệu về MySQL

n MySQL là một hệ quản trị cơ sở dữ liệu mã nguồn mở, hoàn toàn miễn phí.

n Có thể chạy trên nhiều hệ điều hành: Window, Linux,

n Cung cấp một hệ thống lớn các hàm tiện ích Thích hợp cho các ứng dụng internet.

n Phù hợp khi dùng với PHP được cộng đồng hỗ trợ.

n Dữ liệu lưu trữ trong MySQL dưới dạng các đối tượng được gọi là các bảng.

Giới thiệu về MySQL

MySQL là một hệ quản trị cơ sở dữ liệu mã nguồn mở, hoàn toàn

Có thể chạy trên nhiều hệ điều hành: Window, Linux,

Cung cấp một hệ thống lớn các hàm tiện ích Thích hợp cho các

Phù hợp khi dùng với PHP được cộng đồng hỗ trợ.

Dữ liệu lưu trữ trong MySQL dưới dạng các đối tượng được gọi là

Kết nối tới Server MySQL

Trang 4

Cấu trúc ngôn ngữ MySQL

n Chuỗi (String)

n Là một dãy kí tự đặt trong cặp nháy đơn (' ') hoặc cặp nháy kép (" ") Ví dụ

'a string'

"another string"

n Thêm kí tự thoát (escape character) '\

\0 Kí tự NUL (có mã ASCII là 0)

\n Kí tự xuống dòng

\t Kí tự tab

\r Kí tự về đầu dòng

\' Kí tự ' được dùng để bao quanh một chuỗi kí tự

\" Kí tự " được dùng để bao quanh một chuỗi kí tự

\\ Kí tự \ được dùng để làm kí tự thoát

\% % là kí tự được dùng để đại diện cho một chuỗi kí tự bất kỳ

\_ _ là kí tự được dùng đại diện cho một kí tự bất kỳ

Cấu trúc ngôn ngữ MySQL

Là một dãy kí tự đặt trong cặp nháy đơn (' ') hoặc cặp nháy kép (" ") Ví dụ

\' vào trước các kí tự có nghĩa đặc biệt

Kí tự ' được dùng để bao quanh một chuỗi kí tự

Kí tự " được dùng để bao quanh một chuỗi kí tự

được dùng để làm kí tự thoát

% là kí tự được dùng để đại diện cho một chuỗi kí tự bất kỳ _ là kí tự được dùng đại diện cho một kí tự bất kỳ

Trang 5

Cấu trúc ngôn ngữ MySQL

n Giá trị NULL

n NULL có nghĩa là một giá trị chưa xác định hay giá trị không tồn tại trong csdl MySQL hỗ trợ NULL để biểu đạt khái niệm thông tin còn thiếu

n Tên csdl, tên bảng, tên cột, bí danh (alias)

n Tên csdl tối đa 64 kí tự, tuân theo qui tắc đặt tên thư mục ngoại trừ kí tự ‘.’ và ‘/’

n Tên bảng tối đa 64 kí tự, tuân theo qui tắc đặt tên file ngoại trừ kí tự ‘.’ và ‘/’

n Tên cột tối đa 64 kí tự, cho phép sử dụng tất cả các kí tự

n Alias cho phép tối đa 255 kí tự và dùng tất cả các kí tự

n Chú thích

n Để chú thích một dòng: sử dụng kí tự # hoặc

n Để chú thích một khối dòng đặt trong cặp /* và */

Cấu trúc ngôn ngữ MySQL

NULL có nghĩa là một giá trị chưa xác định hay giá trị không tồn tại trong csdl MySQL hỗ trợ NULL để biểu đạt khái niệm thông tin còn thiếu

Tên csdl, tên bảng, tên cột, bí danh (alias)

Tên csdl tối đa 64 kí tự, tuân theo qui tắc đặt tên thư mục ngoại trừ kí tự ‘.’ và ‘/’ Tên bảng tối đa 64 kí tự, tuân theo qui tắc đặt tên file ngoại trừ kí tự ‘.’ và ‘/’ Tên cột tối đa 64 kí tự, cho phép sử dụng tất cả các kí tự

Alias cho phép tối đa 255 kí tự và dùng tất cả các kí tự

Để chú thích một dòng: sử dụng kí tự # hoặc –

Để chú thích một khối dòng đặt trong cặp /* và */

Trang 6

Các kiểu dữ liệu trong MySQL

n Dữ liệu dạng số

Kiểu Dữ liệu Kích thước

(Bytes)

float(size,d) Một số lớn với dấu chấm động

chỉ số các con số sau dấu chấm thập phân

double(size,d) Một số lớn với dấu chấm động

chỉ số các con số sau dấu chấm thập phân

decimal(size,d) Lưu trữ double như một chuỗi, cho phép cố định dấu chấm thập

phân size chỉ ra số các con số tối đa

chấm thập phân

Các kiểu dữ liệu trong MySQL

Phạm vi biểu diễn

127 128 hoặc 0 255

32768 32767 hoặc 0 65535

8388608 838860 hoặc 0 16777215

231 231-1 hoặc 0 232-1

263 263-1 hoặc 0 264-1

Một số lớn với dấu chấm động size chỉ ra số các con số tối đa d

chỉ số các con số sau dấu chấm thập phân

Một số lớn với dấu chấm động size chỉ ra số các con số tối đa d

chỉ số các con số sau dấu chấm thập phân Lưu trữ double như một chuỗi, cho phép cố định dấu chấm thập

chỉ ra số các con số tối đa d chỉ số các con số sau dấu

chấm thập phân

Trang 7

Các kiểu dữ liệu trong MySQL

n Dữ liệu dạng chuỗi

Textual Data Types Description

char(size) Lưu trữ chuỗi có độ dài cố định Có thể lưu trữ tới 255 kí tự

varchar(size) Lưu trữ chuỗi có độ dài biến động Có thể lưu trữ tới 255 kí tự

tinytext Lưu trữ một chuỗi có độ dài tối đa 255 kí tự

text Lưu trữ một chuỗi với độ dài tối đa 65.535 kí tự

blob Cho BLOBs (Binary Large OBjects)

mediumtext Lưu trữ một chuỗi với độ dài tối đa 16.777.215 kí tự

mediumblob Cho BLOBs (Binary Large OBjects)

longtext Lưu trữ một chuỗi có độ dài tối đa 4.294.967.295 kí tự

longblob Cho BLOBs (Binary Large OBjects)

Các kiểu dữ liệu trong MySQL

Lưu trữ chuỗi có độ dài cố định Có thể lưu trữ tới 255 kí tự Lưu trữ chuỗi có độ dài biến động Có thể lưu trữ tới 255 kí tự Lưu trữ một chuỗi có độ dài tối đa 255 kí tự

Lưu trữ một chuỗi với độ dài tối đa 65.535 kí tự Cho BLOBs (Binary Large OBjects) Lưu trữ tới 65.535 byte dữ liệu Lưu trữ một chuỗi với độ dài tối đa 16.777.215 kí tự

Cho BLOBs (Binary Large OBjects) Lưu trữ tới 16.777.215 byte dữ liệu Lưu trữ một chuỗi có độ dài tối đa 4.294.967.295 kí tự

Cho BLOBs (Binary Large OBjects) Lưu trữ tới 4.294.967.295 byte dữ liệu

Trang 8

Các kiểu dữ liệu trong MySQL

n Dữ liệu ngày tháng:

Kiểu Dữ liệu

Date Biểu dưới dạng YYYY-MM-DD (Từ '1000

Datetime Biểu dưới dạng YYYY-MM-DD HH:MM:SS

(Từ '1000-01-01 00:00:00' đến '9999

Từ -838:59:59' đến '838:59:59'

TimeStamp Biểu dưới dạng YYYY-MM-DD HH:MM:SS

('1970-01-01 00:00:00' UTC) Year(2|4) 1970 đến 2069

Các kiểu dữ liệu trong MySQL

Mô tả

DD (Từ '1000-01-01' tới '9999-12-31')

DD HH:MM:SS

01 00:00:00' đến '9999-12-31 23:59:59')

DD HH:MM:SS 838:59:59' đến '838:59:59'

DD HH:MM:SS

01 00:00:00' UTC)

Trang 9

Các phép toán trong MySQL

n Toán tử số học: +, -, *, /

n Toán tử so sánh: >, <, >=, <=, =, !=

n Toán tử logic: and, or, not

n Phép toán BETWEEN…AND…

n Phép toán IN, NOT IN

n Phép toán IFNULL:

n Ví dụ: IFNULL(11,‘’) =>0; IFNULL(1/0) =>1

n Toán tử LIKE

n Kí tự mở rộng dùng trong mẫu của toán tử LIKE

n Kí tự % : đại diện cho một chuỗi kí tự bất kì, kể cả chuỗi rỗng

n Kí tự _ : đại diện cho một kí tự bất kỳ

Biểu_thức LIKE mẫu [ESCAPE ‘escape_char’]

Các phép toán trong MySQL

Toán tử so sánh: >, <, >=, <=, =, !=

Ví dụ: IFNULL(11,‘’) =>0; IFNULL(1/0) =>1

của toán tử LIKE

Kí tự % : đại diện cho một chuỗi kí tự bất kì, kể cả chuỗi rỗng

Biểu_thức LIKE mẫu [ESCAPE ‘escape_char’]

Trang 10

Các phép toán trong MySQL

n Phép toán LIKE

escape-char: gồm kí tự ‘%’ đại diện cho một chuỗi kí tự bất kỳ, kí tự ‘

một kí tự bất kỳ

n Ví dụ

select ‘ha’ LIKE ‘ha\-’;

select ‘10’ LIKE ‘1\%’;

biểu_thức LIKE mẫu[ESCAPE

Các phép toán trong MySQL

char: gồm kí tự ‘%’ đại diện cho một chuỗi kí tự bất kỳ, kí tự ‘-’ đại diện chi

trả về 1 trả về 1

ESCAPE ‘escape-char’]

Trang 11

Các hàm xử lý chuỗi

n Các hàm so sánh chuỗi có phân biệt chữ hoa chữ thường

n Hàm CHAR(mã_ASCII_1, mã_ASCII_2, …mã_ASCII_n

các kí tự có mã ASCII tương ứng

n Hàm CONCAT(str1, str2, …, strN

chuỗi tham số Trả về NULL nếu tham số là NULL

SELECT CHAR(77,121,83,81,'76');

=>trả về “MySQL”

SELECT CONCAT(‘My’,’S’,’QL’);

=>trả về “MySQL”

Các hàm xử lý chuỗi

Các hàm so sánh chuỗi có phân biệt chữ hoa chữ thường

mã_ASCII_1, mã_ASCII_2, …mã_ASCII_n) Hàm trả về dãy

strN): Hàm trả về một chuỗi được ghép từ các chuỗi tham số Trả về NULL nếu tham số là NULL

(77,121,83,81,'76');

(‘My’,’S’,’QL’);

Trang 12

Các hàm xử lý chuỗi

n Hàm CONCAT_WS(separator,str1

về một chuỗi được ghép từ các

lại được phân cách bởi kí tự separator

hàm trả về NULL.

n Hàm LENGTH(str) Trả về độ dài của chuỗi str

n Hàm LOCATE(substr,str,[pos])

str ) Trả về vị trí xuất hiện đầu tiên của chuỗi con substr trong

chuỗi str.

SELECT CONCAT_WS(",","First name","Second name","Last Name");

->Trả về: 'First name,Second name,Last Name'

Các hàm xử lý chuỗi

separator,str1, str2, …, strN) : Hàm trả

về một chuỗi được ghép từ các str1,str2,strN, các chuỗi ghép

separator Nếu separator là NULL

Trả về độ dài của chuỗi str

(substr,str,[pos]) , POSITION(substr IN Trả về vị trí xuất hiện đầu tiên của chuỗi con substr trong

(",","First name","Second name","Last Name");

>Trả về: 'First name,Second name,Last Name'

Trang 13

Các hàm xử lý chuỗi

n Hàm UPPER(str): Hàm trả về chuỗi

n Hàm LOWER(str): Hàm trả về chuỗi

n Hàm LTRIM(str): Bỏ khoảng trắng bên trái chuỗi

n Hàm RTRIM(str): Bỏ khoảng trắng bên phải chuỗi

n Hàm LEFT(str,n): Hàm trả về một chuỗi gồm

chuỗi str.

n Hàm RIGHT(str,n): Hàm trả về một chuỗi gồm

phải chuỗi str.

n Hàm SUBSTRING(str,pos,[len]), SUBSTRING(str

len]), MID(str,pos,len) Là các hàm trả về một chuỗi gồm

được cắt từ bắt đầu từ vị trí pos của chuỗi

n Hàm InSTR(str1, str2): Trả về vị trí bắt đầu của chuỗi str1 trong chuỗi str2

Các hàm xử lý chuỗi

: Hàm trả về chuỗi str được viết in hoa.

: Hàm trả về chuỗi str được viết in thường.

: Bỏ khoảng trắng bên trái chuỗi

: Bỏ khoảng trắng bên phải chuỗi

: Hàm trả về một chuỗi gồm len kí tự được cắt từ bên trái : Hàm trả về một chuỗi gồm len kí tự được cắt từ bên

SUBSTRING(str,pos,[len]), SUBSTRING(str FROM pos [FOR

Là các hàm trả về một chuỗi gồm len kí tự của chuỗi str.

: Trả về vị trí bắt đầu của chuỗi str1 trong chuỗi

Trang 14

Các hàm về thời gian trong MySQL

n CURDATE(): trả về ngày hiện tại, giá trị được biểu diễn ở dạng

'YYYY-MM-DD' hoặc YYYYMMDD.

n CURTIME(): trả về thời gian hiện tại, giá trị được biểu diễn ở dạng 'HH:MM:SS' or HHMMSS

SELECT CURDATE();

-> '2011-07-15'

SELECT CURDATE()+0;

-> '20110715'

SELECT CURTIME();

-> '23:50:26'

SELECT CURTIME()+0;

-> '235026'

Các hàm về thời gian trong MySQL

: trả về ngày hiện tại, giá trị được biểu diễn ở dạng DD' hoặc YYYYMMDD.

: trả về thời gian hiện tại, giá trị được biểu diễn ở dạng

Trang 15

Các hàm về thời gian trong MySQL

n Hàm DATE(expr) trả về ngày tháng năm từ biểu thức expr có kiểu date, hay datetime.

n Hàm DATEDIFF(expr1,expr2)

hai ngày expr1 và expr2

n Hàm DAYNAME(date)trả về thứ của ngày

SELECT DATE('2003-12-31 01:02:03');

-> '2003-12-31'

SELECT DATEDIFF('1997-12-31 23:59:59','1997

-> 1

SELECT DAYNAME(‘2011-07-11');

-> Monday

Các hàm về thời gian trong MySQL

trả về ngày tháng năm từ biểu thức expr có

DATEDIFF(expr1,expr2): trả về khoảng thời gian giữa

trả về thứ của ngày

31 01:02:03');

31 23:59:59','1997-12-30');

Trang 16

Các hàm về thời gian trong MySQL

n Hàm DATE_FORMAT(date, format)

Các specifier sau đây được dùng trong chuỗi định dạng format

Specifier Description

%a,%W, %w (Sun Sat), (Sunday Saturday),

(0=Sunday 6=Saturday)

%b,%M (Jan Dec),(January December)

%c, %m Month, numeric (0 12)

%d, %e Day of the month, numeric (00 31), (0 31)

%h,%H Hour (01 12), (00 23)

%i Minutes, numeric (00 59)

%s, %S Seconds (00 59)

%T Time, 24-hour (hh:mm:ss)

%Y, %y Year, numeric: four digits ; two digits

Các hàm về thời gian trong MySQL

Hàm DATE_FORMAT(date, format)

Các specifier sau đây được dùng trong chuỗi định dạng format

(Sun Sat), (Sunday Saturday), (0=Sunday 6=Saturday)

(Jan Dec),(January December) Month, numeric (0 12)

Day of the month, numeric (00 31), (0 31)

), (00 23) Minutes, numeric (00 59)

hour (hh:mm:ss) Year, numeric: four digits ; two digits

Trang 17

Các hàm về thời gian trong MySQL

n HOUR(time)

n DAY(date)

n MINUTE(time)

n MONTH(date)

n NOW()

n SECOND(time)

n TIME()

n YEAR()

Các hàm về thời gian trong MySQL

Trang 18

Một số hàm khác

n Hàm IF

IF(điều_kiện, giá_trị_trả_về_1

NULL) thì hàm IF trả về giá trị giá_trị_trả_về_1

hàm IF trả về giá trị giá_trị_trả_về_2

n Hàm IFNULL( biểu_thức, giá_trị_trả_về_1

giá_trị_trả_về_1, Giá_trị_trả_về_2)

giá_trị_trả_về_2

Ngày đăng: 21/01/2018, 11:12

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w