Professional Documents
Culture Documents
SqlServer - Spatial in SQL Server 2008
SqlServer - Spatial in 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.
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).
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
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
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.
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”
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
Kết quả:
10