You are on page 1of 10

DỮ LIỆU KHÔNG GIAN TRÊN

MICROSOFT SQL SERVER 2008

1
Chương 1: GIỚI THIỆU VỀ MICROSOFT SQL SERVER 2008
1.1. Tổng quan về SQL Server
Microsoft SQL Server là hệ thống quản trị cơ sở dữ liệu quan hệ (Relational
DataBase Management System - RDBMS) do Microsoft phát triển, nó sử dụng ngôn
ngữ lập trình và truy vấn cơ sở dữ liệu Transact-SQL để trao đổi dữ liệu giữa máy trạm
(Client) và máy chủ (Server).
Transact-SQL dựa trên ngôn ngữ vấn tin có cấu trúc chuẩn (ANSI-SQL: là ngôn
ngữ vấn tin có cấu trúc do học viện quốc gia Hoa Kỳ đưa ra), ANSI-SQL thường được
gọi là SQL, ngôn ngữ này là cách thức chuẩn để giao tiếp với cơ sở dữ liệu (CSDL).
1.2. Mô hình hoạt động của SQL Server
SQL Server là hệ quản trị CSDL hoạt động trên mạng, có thể thực hiện trao đổi
dữ liệu theo nhiều mô hình mạng khác nhau, nhiều giao thức và phương thức truyền tin
khác nhau.

Hình 1.1 Mô hình chung của SQL Server

Trong đó có ba kiểu kết nối cơ bản đến SQL Server là:
 Kết nối trên Desktop: Có thể trên cùng máy tính với SQL Server hoặc kết nối
qua mạng nội bộ. Trên một Desktop có thể có nhiều ứng dụng, mỗi ứng dụng có
thể thực hiện thao tác với nhiều CSDL.

2
Hình 1.2 Mô hình Desktop của SQL Server

 Kết nối qua mạng diện rộng: Thông qua đường truyền mạng xa kết nối đến
SQL Server. SQL Server có thể thực hiện trao đổi dữ liệu với các ứng dụng
theo nhiều giao thực truyền tin khác nhau (TCP/IP, NetBeUI, Names Pipes,…),
các ứng dụng có thể sử dụng nhiều phương thức kết nối khác nhau (OLE DB,
ODBC, DB-Library).

Hình 1.3 Mô hình Client / Server của SQL Server

3
 Kết nối qua mạng Internet: nếu xét riêng các ứng dụng kết nối với SQL
Server trên mạng Internet, các máy chủ SQL Server sẽ được quản lý thông qua
các hệ thống máy chủ mạng, hệ điều hành mạng, các ứng dụng (COM+, ASP,
IIS) sẽ thông qua máy chủ mạng kết nối đến SQL Server, mô hình này có thể áp
dụng cho các mạng nội bộ, diện rộng, ứng dụng được khai thác trên trình duyệt
Internet Browser.

Hình 1.4 Mô hình kết nối ứng dụng trên mạng Internet của SQL Server

1.3. Tính năng cơ bản


 Cho phép quản trị một hệ CSDL lớn, có tốc độ xử lý dữ liệu nhanh đáp ứng yêu
cầu về thời gian.
 Cho phép nhiều người cùng khai thác trong một thời điểm đối với một CSDL và
toàn bộ quản trị CSDL.
 Sử dụng câu lệnh truy vấn dữ liệu Transaction-SQL.
 Có hệ thống phân quyền bảo mật tương thích với hệ thống bảo mật của công
nghệ NT (Network Technology) hoặc sử dụng hệ thống bảo vệ độc lập của SQL
Server.
 Hỗ trợ trong việc triển khai CSDL phân tán và phát triển ứng dụng trên
Internet.
 Cho phép lập trình kết nối với nhiều ngôn ngữ lập trình khác dùng xây dựng các
ứng dụng đặc thù (Visual Basic, C, C++, ASP, ASP.NET, XML,...).
1.4. Lưu trữ dữ liệu không gian
Khái niệm Hệ quản trị cơ sở dữ liệu không gian (SDBMS – Spatial Database
Manage System), đây là một hệ quản trị cơ sở dữ liệu, có hỗ trợ mô hình dữ liệu không
gian, kiểu dữ liệu không gian (SDT – Spatial Data Types) và ngôn ngữ truy vấn SQL
4
không gian, hỗ trợ kiểu dữ liệu không gian trong lập trình : cung cấp chỉ số không gian
(Spatial Indexing) và thuật toán liên kết không gian (Spatial Joins).
Cơ sở dữ liệu không gian là một cơ sở dữ liệu trong đó có chứa đối tượng không
gian. Đối tượng không gian có được biểu diễn thông qua các đối tượng hình học cơ bản
(điểm, đường và vùng) hoặc được biểu diễn dạng ảnh (raster). Dữ liệu không gian biểu
diễn thông tin vị trí địa lý và hình dạng của các đối tượng trên trái đất.

Hình 1.5 Minh họa cơ sở dữ liệu không gian

Hiện nay có rất nhiều hệ quản trị CSDL không gian như: DB2 (phần mở rộng
IBM DB2 Spatial Extender), Oracle (Oracle Spatial), PostgreSQL (phần mở rộng
PostGIS), Sqlite (phần mở rộng SpatialLite), và Microsoft SQL Server phiên bản 2008
trở lên.
Trong SQL Server 2008 giới thiệu các 2 kiểu dữ liệu không gian là:
 Kiểu dữ liệu hình học (Geometry): Là kiểu dữ liệu không gian cơ bản được sử
dụng để biểu diễn các đối tượng trong hệ tọa độ Euclide (tọa độ phẳng), đối
tượng không có thông tin về SRID (Spatial Reference Identifiers, đây là một hệ
quy chiếu đã được định nghĩa trước ứng với một số nguyên).

 Kiểu dữ liệu địa lý (Geography): Là kiểu dữ liệu không gian cơ bản được sử
dụng để biểu diễn các đối tượng trong hệ tọa độ trái đất (tọa độ Ellipsoid). Đối
tượng có chứa thông tin về SRID.

Hình 1.6 Mô hình thiết kế của các đối tượng khô ng gian

5
Trong SQL Server 2008, các đối tượng hình học trên bản đồ được mô tả bởi Well-Know
Text (WKT) hoặc Well-Known Binary (WKB), các định nghĩa đầu tiên được đưa ra bởi
Open Geospatial Consortium (OGC) trong đó:
 Well-Know Text (WKT): ngôn ngữ đánh dấu kiểu văn bản dùng để biểu diễn
cho các đối tượng hình học ở định dạng vector trên bản đồ. WKT bao gồm các
thông tin về kiểu của đối tượng và các tọa độ dạng đối tượng
Ví Dụ:

POINT(0 0)
LINESTRING(0 0,1 1,1 2)
POLYGON((0 0,4 0,4 4,0 4,0 0),(11, 2 1, 2 2, 1 2,1 1))
MULTIPOINT(0 0,1 2)
MULTILINESTRING((0 0,1 1,1 2),(2 3,3 2,5 4))
MULTIPOLYGON(((0 0,4 0,4 4,0 4,0 0),(1 1,2 1,2 2,1 2,1 1)), ((-1 -1,-1 -
2,-2 -2,-2 -1,-1 -1)
GEOMETRYCOLLECTION(POINT(2 3),LINESTRING(2 3,3 4))

Ngoài ra, WKT cũng được sử dụng để mô tả hệ quy chiếu như Datum, Geoid, Hệ tọa
độ và Phép chiếu bản đồ của các đối tượng không gian.

 Well-Known Binary (WKB): ngôn ngữ đánh dấu kiểu nhị phân dùng để biểu
diễn cho các đối tượng hình học trên bản đồ (tương tự như WKT) ở hệ thập lục
phân.
Ví Dụ:
POINT(2.0 4.0) được thể hiện bằng: 000000000140000000000000004010000000000000

 1-byte integer 00 or 0: big endian


 4-byte integer 00000001 or 1: POINT (trên mặt phẳng)
 8-byte float 4000000000000000 or 2.0: tọa độ x
 8-byte float 4010000000000000 or 4.0: tọa độ y

Với sự hỗ trợ làm việc với các đối tượng không gian, người sử dụng SQL Server
2008 có thể thực hiện việc lưu trữ dữ liệu không gian cũng như thực hiện truy vấn không
gian mà các hệ quản trị cơ sở dữ liệu truyền thống (không chứa thành phần không gian
– non spatial database) không thể thực hiện được. Tính năng này sẽ cung cấp cho các
nhà quản lý trong các lĩnh vực liên quan đến yếu tố không gian một hệ quản trị CSDL
phù hợp, đặc biệt là những nhà quản lý về tài nguyên-môi trường, nhà quản lý giao
thông, các hệ thống điện – cấp thoát nước, người nghiên cứu về địa lý, cũng như các
nhà quy hoạch phát triển kinh tế.
6
Chương 2: TẠO CƠ SỞ DỮ LIỆU
2.1. Tạo Database
Bước 1: Vào Server cần tạo, click chuột phải vào Database > New Database.

Bước 2: Đặt tên cho Database

2.2. Tạo bảng


Bước 1: Vào Database cần tạo, click chuột phải vào Table > New Table.

7
Bước 2: Tạo các trường thuộc tính cho bảng

Ví dụ: Tạo một bảng có tên là “Khong_gian” trong cơ sở dũ liệu “dialy”

2.3. Tạo dữ liệu không gian


a. Tạo đối tượng dạng điểm
insert into [ten_bang] ([ten_cot]) x, y: tọa độ điểm

values SRID: thông số quy


định lưới chiếu
(geography::STPointFromText(‘Point (x y)’, SRID)

8
Ví dụ: Tạo một đối tượng điểm có tọa độ là (7 12) thuộc hệ quy chiếu WGS-84.
Bước 1:

Bước 2:

Bước 3:

Kết quả:

9
b. Tạo dữ liệu dạng đường

insert into [ten_bang] ([ten_cot])


values
(geography::STLineFromText(‘linestring_tagged_text’, SRID)

linestring_tagged_text: có dạng Linestring(x1 y1, x2 y2,… xn yn ); SRID: thông số


quy định lưới chiếu.
Ví dụ: Tạo đối tượng dạng đường có tọa độ điểm bắt đầu là (0 0) và kết thúc là (7 8)
thuộc hệ quy chiếu WSG-84.
Thực hiện các bước tương tự như đối với đối tượng điểm.

Kết quả:

c. Tạo dữ liệu dạng vùng


insert into [ten_bang] ([ten_cot])
values
(geography::STPolyFromText(‘polygon_tagged_text’, SRID)

polygon_tagged_text: có dạng POLYGON(x1 y1, x2 y2,… xn yn, x1 y1 );


SRID: thông số quy định lưới chiếu.
Ví dụ: Tạo một Polygon có tọa độ là (-122.358 47.653, -122.348 47.649, -122.348
47.658, -122.358 47.658, -122.358 47.653) thuộc hệ quy chiếu WGS-84.

10

You might also like