MỤC LỤC
1
DANH MỤC HÌNH ẢNH
LỜI CẢM ƠN
Qua thời gian học tập và rèn luyện tại khoa Công nghệ thông tin – Trường đại học
công nghệ thông tin và truyền thông, đến nay chúng em đã kết thúc khoá học 5 năm và
hoàn thành đồ án tốt nghiệp. Để có được kết quả này em xin chân thành cảm ơn
Ban chủ nhiệm trường đại học Công nghệ thông tin và truyền thông cùng các thầy
cô giáo trong trường đã giảng dạy, quan tâm và tạo điều kiện thuận lợi để chúng em học
tập và rèn luyện trong suốt thời gian theo học tại trường.
Cô giáo Th.s Hà Thị Thanh người đã tận tình hướng dẫn, giúp đỡ em trong quá
trình học tập và đặc biệt là trong suốt thời gian làm đồ án tốt nghiệp. Cô luôn quan tâm và
rất nhiệt tình hướng dẫn em từ việc tìm tài liệu cho đến việc định hướng lựa chọn giải pháp
2
để triển khai đồ án. Cô cũng luôn nhắc nhở, động viên em mỗi khi gặp khó khăn, nhờ vậy
mà em đã hoàn thành tốt đồ án tốt nghiệp của mình đúng thời hạn.
Em cũng xin gửi lời cảm ơn tới gia đình, bạn bè, những người đã động viên, giúp
đỡ em rất nhiều trong thời gian học tập và làm đồ án tốt nghiệp.
Thái Nguyên, tháng 6 năm 2012
Sinh viên
Trần Văn Định
LỜI CAM ĐOAN
Sau quá trình học tập tại khoa Công Nghệ Thông Tin, có sự kết hợp, vận dụng giữa
lý thuyết và thực tế, em đã nghiên cứu và tập hợp các tài liệu để hoàn thành đồ án tốt
nghiệp của mình.
Em xin cam đoan đồ án tốt nghiệp này là công trình do chính bản thân em tự tìm
hiểu, nghiên cứu và hoàn thành dưới sự hướng dẫn của cô giáo Th.s Hà Thị Thanh. Em xin
cam đoan các kiến thức sử dụng trong đồ án chưa từng được sử dụng để bảo vệ bất cứ học
vị nào.
Thái Nguyên, tháng 6 năm 2012
Sinh viên
Trần Văn Định
3
LỜI NÓI ĐẦU
Ngày nay Khoa Học-Công Nghệ rất phát triển, Tin hoc là một trong những yếu tố
quan trọng không thể thiếu trong sự phát triển này. Chẳng hạn, Internet là điểm đến của
những nguồn sáng tạo các phần mềm, là nơi với nhiều chuyên mục mới chuyển tải những
thông tin Khoa học mang đến cho người dùng, từ đó người dùng có thể tìm tòi tri thức
cũng như các lĩnh vực khác của đời sống.
Vì thế, Tin học hóa là vấn đề rất cần thiết từ trẻ lẫn già, từ thành thị đến nông thôn
và nhất là các cơ quan, công ty, xí nghiệp,các doanh nghiệp vừa và nhỏ…có những cơ cấu
tổ chức, quản lý rất đa dạng, phong phú. Do vậy, để nâng cao hiệu quả công việc, Tin học
được ứng dụng vào việc quản lý đó. Đặc biệt, các phần mềm quản lý lần lượt ra đời, trong
đó “Quản lý nhân sự” là phần mềm hết sức cần thiết.
Đề tài được chia làm 4 phần :
Chương 1 : Tổng quan về chương trình
Chương 2 : Giới thiệu Visual Studio và SQL Server
Chương 3 : Phân tích thiết kế hệ thống
Chương 4 : Thiết kế dữ liệu và cài đặt chương trình
Trong quá trình thực hiện đồ án do chưa có kinh nghiệm nhiều nên em vẫn mắc
phải những sai sót mong nhận được sự góp ý phê bình của các thầy cô và các bạn để đồ án
được hoàn thiện hơn.
4
Cuối cùng em xin chân thành cảm ơn cô Ths. Hà Thị Thanh người đã trực tiếp
hướng dẫn và tận tình giúp đỡ em trong suốt quá trình thực hiện đồ án này.
Sinh viên
Trần Văn Định
CHƯƠNG I : TỔNG QUAN VỀ CHƯƠNG TRÌNH
1.1 Tìm hiểu về Tổng Công ty Cổ Phần CPN Hợp Nhất
1.1.1 Giới thiệu chung
Hình 1: Công ty Hợp Nhất
Tập đoàn Hợp Nhất Việt Nam(HNC) ra đời từ năm 2001, với mô hình Công ty tư
nhân và chuyển sang hoạt động dưới hình thức Cổ phần, với sự đóng góp của các cổ đông.
Tập đoàn Hợp Nhất Việt Nam là tập đoàn tư nhân đa ngành,có thế mạnh là dịch vụ
chuyển phát nhanh và được đánh giá là tập đoàn hàng đầu trong ngành hàng.
Địa chỉ :Tầng 8, Tòa nhà 3D, đường Nguyễn Phong Sắc kéo dài, Cầu Giấy, Hà Nội.
Điện thoại :04.37831230/fax 04.37831350.
Qua tìm hiểu thực tế cho thấy:Công ty Hợp Nhất có 300 nhân viên trong đó:
Cán bộ có trình độ Đại học và trên Đại học là 100 người.
Cán bộ có trình dộ Trung cấp và Cao đẳng là 130 người.
Còn lại là lao động phổ thông sơ cấp.
5
1.1.2 Hoạt động của phòng nhân sự công ty Hợp Nhất
Các hoạt động thực tế của công việc là cơ sở cho việc xây dựng chương trình, vì
thế em đã thực hiện khảo sát các công việc trên thực tế tại phòng quản lý nhân sự của công
ty Hợp Nhất và đã thu được một số kết quả như sau :
Từ trước tới nay những công việc thuộc phạm vi quản lý nhân sự do phòng quản lý
nhân sự thực hiện. Các hoạt động của phòng có liên quan cụ thể đến hồ sơ nhân sự là :
Cung cấp cho giám đốc lý lịch của nhân viên.
Thống kê số lượng nhân viên có đối với từng đơn vị.
Hàng năm báo cáo về thực trạng nhân viên trong công ty.
Cùng giám đốc quyết định những thay đổi về thực trạng các bộ công nhân.
Ngoài ra vấn đề nhân sự còn được một số phòng ban khác cùng quan tâm như :
phối hợp với các phòng kế hoạch, tài vụ để làm các chế độ tiền lương, cùng các ngành bảo
hiểm y tế, bảo hiểm xã hội… để làm công tác bảo hiểm.
Theo thống kê sơ bộ thì trong tuần ít nhất phòng nhân sự phải làm việc với giám
đốc về vấn đề nhân sự một lần. Trong tháng kết hợp với phòng tài chính kế toán về vấn đề
tiền lương như duyệt bảng chấm công của các đơn vị gửi lên. Ngoài ra còn rất nhiều vấn đề
không cố định như tìm kiếm, xác nhận hồ sơ, kết hợp cùng với phòng ban khác trong công
ty thi lên lương cho các công nhân trong công ty.
Sơ đồ tổ chức :
Hội đồng quản trị
Giám đốc công ty
Phòng IT
Phòng kinh doanh
Phòng tài chính kế toán
Phòng nhân sự
Phòng khai thác
Phòng khách hàng
Phòng giao nhận
Hình 2 : Sơ đồ tổ chức
Trong cơ cấu tổ chức điều hành của công ty mỗi một vị trí có chức năng và nhiệm
vụ khác nhau.
Hội đồng quản trị : là cơ quan quản lý của công ty có toàn quyền nhân danh công ty
để quyết định mọi chủ trương, dường lối theo Luật doanh nghiệp và Điều lệ công
ty, mọi vấn đề quyền lợi của cổ đông.Hội đồng quản trị gồn chủ tịch hội đồng quản
trị,phó chủ tịch hội đồng quản trị và các ủy viên hội đồng quản trị.
6
Giám đốc công ty : là người có quyền lãnh đạo cao nhất, chịu trách nhiệm về mọi
hoạt động kinh doanh của công ty và trực tiếp điều khiển quản lý của công ty.
Phòng IT : quản lý dữ liệu, viết phần mềm cho công ty, hỗ trợ nhân viên sử dụng
phần mềm.
Phòng nhân sự : thực hiện quản lý tình hình nhân sự trong công ty ,đưa ra các báo
cáo về nhân sự giúp nhà quản lý có thể kiểm tra,theo dõi tình hình nhân sự của
công ty mình từ đó có thể đưa ra điều chỉnh thay đổi một cách hợp lý và nhanh
chóng giúp cho công ty hoạt động ổn định và hiệu quả.
Phòng tài chính kế toán : thực hiện hoạch toán chi tiết và tổng hợp các nghiệp vụ
kinh tế phát sinh trong toàn bộ công ty, phản ánh chính xác, toàn diện kết quả kinh
doanh, cung cấp các thông tin cần thiết cho lãnh đạo, các bộ phận liên quan và
những đối tượng có nhu cầu thông qua các báo cáo tài chính giúp nhà quản lý đề ra
những biện pháp quản lý ,tổ chức kinh doanh phù hợp cho sự phát triển của công ty.
Phòng kinh doanh : quản lý, điều hành xây dựng kế hoạch kinh doanh tổng hợp của
công ty thực hiện công tác tiếp thị,thị trường.
Phòng khách hàng : tư vấn về các dịch vụ cho khách hàng.
Phòng khai thác : quản lý các hoạt động khai thác dịch vụ khách hàng.
Phòng giao nhận : giao nhận hàng hóa, sản phẩm và vận chuyển.
Mỗi phòng ban có chức năng, nhiệm vụ riêng nhưng đều có mục đích chung và
cuối cùng là phục vụ lợi ích cho công ty. Và chúng có mối quan hệ gắn bó với nhau, mối
quan hệ này không ngừng được củng cố và phát huy để tăng cường sự thống nhất trong
công ty làm cho công ty có những bước tiến vững chắc trong tương lai.
1.1.3 Cách thức tổ chức của hệ thống quản lý nhân sự hiện tại
Hồ sơ của một nhân viên sẽ được nộp tại phòng tổ chức nếu như nhân viên trúng
tuyển hoặc chuyển từ nơi khác về công ty.
Sau khi đã chính thức được nhận công tác, hồ sơ của nhân viên đó chính thức được
lưu trữ từ đây. Các giấy tờ, quyết định liên quan đến lương, công việc, sinh hoạt đoàn thể
được gửi tới phòng ban liên quan thi hành.
Khi có những thay đổi trong quá trình hoạt động của mỗi nhân viên các phòng nhân
sự sẽ cập nhật thông tin theo quy định.
Dựa trên cơ sở các bảng biểu, sổ theo dõi các các cán bộ phòng nhân sự sẽ tìm theo
yêu cầu quản lý như : danh sách nhân viên theo phòng, theo bằng cấp, theo chức vụ, theo
bậc lương…
7
1.2 Lý do chọn đề tài và sơ lược về phần mềm
1.2.1 Lý do chọn đề tài
Bạn không thể kinh doanh nếu không có nguồn tài chính, nhưng nguồn nhân lực lại
là vấn đề quan trọng hơn. Khái niệm nguồn nhân lực được nêu ở đây là toàn bộ vốn kiến
thức, kỹ năng và sức người cần đầu tư vào kinh doanh để đạt được thành công.
Hoạt động của công ty luôn bị chi phối bởi nhiều vấn đề trong đó vấn đề nhân sự là
một yếu tố quan trọng quyết định đến sự tồn tại của bất kỳ công ty nào, vì thế quản lý nhân
sự là một đề tài mà gần như tất cả các công ty đều quan tâm đến bởi nó phản ánh sự hoạt
động của công ty có hiệu quả hay không, công tác quản lý vấn đề nhân sự của công ty có
tối ưu để công ty hoạt động tốt hay không…
Để trở thành một người quản lý nhân sự khôn khéo thì người làm công tác nhân sự
luôn luôn cần phải nắm rõ lý lịch, đặc điểm, quá trình công tác khen thưởng, kỷ luật của
từng nhân viên để có thể theo dõi, kịp thời báo cáo với cấp trên khi có yêu cầu, có những
đề xuất , góp ý đối với quản lý nhân sự để có thể làm các nhân viên toàn tâm toàn ý làm
việc cho công ty, giúp công ty hoàn thành những mục tiêu đặt ra và góp phần thúc đẩy sự
phát triển của công ty lên một tầm cao mới.
Qua đó, ta thấy rằng vấn đề nhân sự luôn luôn là một vấn đề cấp thiết do đó em
chọn đề tài “Xây dựng phần mềm quản lý nhân sự cho công ty Hợp Nhất bằng công cụ
Visual Studio và SQL Server” để làm đề tài tốt nghiệp. Chương trình quản lý nhân sự này
được viết dưới dạng một phần mềm tin học dùng với mục đích quản lý nhân viên về các
mặt: lý lịch, công tác…
Từ khi thành lập Công ty Hợp Nhất sử dụng phần mềm quản lý nhân sự viết bằng
ngôn ngữ cũ nên em đã chọn ngôn ngữ lập trình C#- là một ngôn ngữ thịnh hành nhất hiện
nay để viết phần mềm này nhằm sử dụng cơ sở dữ liệu hiệu quả,tạo giao diện thân thiện
với người sử dụng và cũng nhằm mục đích rèn luyện kỹ năng lập trình, tập làm những bài
tập lớn, học hỏi thêm về ngôn ngữ này…
Để giúp doanh nghiệp hoạt động thành công hơn trong công tác quản lý nhân sự em
đã xây dựng phần mềm với mục tiêu :
Phần mềm vận hành đơn giản, dễ sử dụng chỉ cần một số lượng ít nhân viên quản lý
nhân sự là có thể vận hành tốt hệ thống.
Tổ chức, quản lý, lưu trữ trên hệ thống máy tính làm tăng tính an toàn và bảo mật
cao hơn. Trợ giúp nhanh chóng cho người quản lý đưa ra các quyết định có lợi cho
công ty.
8
Đơn giản, dễ sử dụng : giao diện trực quan bằng tiếng việt ,các form nhập liệu đơn
giản.
Phù hợp với các ứng dụng triển khai trên diện rộng. Không phụ thuộc vào phạm vi
ứng dụng. Việc mở rộng ít tốn kém.
Đào tạo sử dụng chương trình ít tốn kém.
Hệ thống dễ bảo trì.
Chương trình cho phép người sử dụng có thể kiểm tra, tìm kiếm thông tin nhanh,
chính xác. Song bên cạnh đó vì thời gian có hạn, kỹ năng lập trình chưa chuyên nghiệp…
nên chương trình này của em còn rất nhiều hạn chế mà em chưa có thời gian khắc phục. Vì
vậy, em rất mong nhận được sự đóng góp ý kiến của tất cả các thày cô và tất cả những
người quan tâm.
1.3 Các chức năng của phần mềm
1.3.1 Các chức năng chính của người quản trị hệ thống
Chỉ có Admin mới sử dụng được chức năng bảo mật của hệ thống. Trong menu bảo
mật có 2 chức năng chính là tạo người dùng và phân quyền. Admin sẽ thêm người dùng và
cấp cho người dùng các quyền để truy cập vào các chức năng trên thanh menu.
1.3.2 Các chức năng của người quản lý nhân sự
1.3.2.1 Cập nhật hồ sơ nhân viên
Quản lý tất cả thông tin về nhân sự nhằm trợ giúp và cung cấp thông tin cho
chương trình:
Quản lý thông tin nhân viên : mã nhân viên, họ tên, giới tính…
Quản lý sơ yếu lý lịch.
Quản lý quá trình công tác, trình độ, kỷ luật.
Cập nhật trình độ, chuyên môn, ngoại ngữ, hợp đồng.
Quá trình biến động nhân sự(tăng giảm nhân sự theo thời kỳ).
Danh sách nhân sự, tìm kiếm nhân sự theo nhiều tiêu chí khác nhau.
Các loại báo cáo về nhân viên theo từng chỉ tiêu
Nhân viên quản lý có thể thêm nhân viên, xóa nhân viên, tra cứu nhân viên, cập
nhật nhân viên và xem danh sách nhân viên theo tình trạng làm việc.
Khi thêm nhân viên thì hệ thống sẽ tự động tự cung cấp cho nhân viên mới một mã
gồm 5 ký tự, có ý nghĩa là: 2 ký tự đầu cho biết đó là một nhân viên, 3 ký tự tiếp theo là
thứ tự thêm vào.
Ví dụ : NV020
9
Sau khi thao tác nhân viên sẽ lưu lại, phần mềm sữ kiểm tra tên nhân viên, chứng
minh nhân dân, phòng ban, chức vụ…nếu rỗng sẽ báo lỗi ngay. Nếu hợp lệ thì phần mềm
sẽ cập nhật một nhân viên.
Khi người quản lý tra cứu nhân viên thì phần mềm sẽ hiển thị các nhân viên cần tra
cứu và người quản lý có thể thao tác(thêm, xóa, sửa) trực tiếp trên đó. Người quản lý cũng
có thể xem hình nhân viên.
1.3.2.2 Cập nhật các danh mục
Các danh mục cập nhật gồm :
Danh mục dân tộc.
Danh mục tôn giáo.
Danh mục phòng ban.
Danh mục tổ.
Danh mục loại hợp đồng.
Danh mục chức vụ.
Danh mục chuyên môn.
Danh mục khen thưởng kỷ luật.
Danh mục trình độ.
Danh mục ngoại ngữ.
1.3.3 Chức năng xem báo cáo
Bao gồm các báo cáo về danh sách nhân viên trong công ty, thống kê nhân viên
theo phòng ban, theo chức vụ…
10
CHƯƠNG II : GIỚI THIỆU VISUAL STUDIO VÀ SQL
SERVER
2.1 Tổng quan về Visual Studio
2.1.1 Định nghĩa
Là môi trường phát triển tích hợp chính( Integrated Development Environment )
được phát triển từ Microsoft. Đây là một loại phần mềm máy tính có công dụng giúp đỡ
lập trình viên trong việc phát triển phần mềm.
Các môi trường phát triển hợp nhất thường bao gồm :
Một trình soạn thảo mã (source code editor): dùng để viết mã.
Trình biên dịch (compiler) và/hoặc trình thông dịch (interpreter).
Công cụ xây dựng tự động: khi sử dụng sẽ biên dịch (hoặc thông dịch) mã nguồn,
thực hiện liên kết (linking), và có thể chạy chương trình một cách tự động.
Trình gỡ lỗi (debugger): hỗ trợ dò tìm lỗi.
Ngoài ra, còn có thể bao gồm hệ thống quản lí phiên bản và các công cụ nhằm đơn
giản hóa công việc xây dựng giao diện người dùng đồ họa (GUI).
Nhiều môi trường phát triển hợp nhất hiện đại còn tích hợp trình duyệt lớp (class
browser), trình quản lí đối tượng (object inspector), lược đồ phân cấp lớp (class
hierarchy diagram),… để sử dụng trong việc phát triển phần mềm theo hướng đối
tượng.
Như vậy, Microsoft Visual Studio được dùng để phát triển console (thiết bị đầu cuối
– bàn giao tiếp người máy) và GUI (giao diện người dùng đồ họa) cùng với các trình ứng
dụng như Windows Forms, các web sites, cũng như ứng dụng, dịch vụ wed (web
applications, and web services). Chúng được phát triển dựa trên một mã ngôn ngữ gốc
(native code ) cũng như mã được quản lý (managed code) cho các nền tảng được được hỗ
trợ Microsoft Windows, Windows Mobile, .NET Framework, .NET Compact Framework
và Microsoft Silverlight.
Visual Studio hỗ trợ rất nhiều ngôn ngữ lập trình, có thể kể tên như sau: C/C++
( Visual C++), VB.NET (Visual Basic .NET), va C# (Visual C#)… cũng như hỗ trợ các
ngôn ngữ khác như F#, Python, và Ruby; ngoài ra còn hỗ trợ cả XML/XSLT,
HTML/XHTML, JavaScript và CSS…
2.1.2 Những chức năng của Visual Studio
Microsoft Visual Studio có những chức năng cơ bản sau:
11
Soạn thảo mã ( code editor); Trình gỡ lỗi (debugger); và Thiết kế (Designer). ở đây
tôi chỉ trình bày một số công cụ quan trọng của chức năng Designer – đây được
xem là một trong những điểm nhấn của microsft visual studio.
WinForms Designer: đây là công cụ tạo giao diện đồ họa dùng WinForms. Điểm
đặc biệt ở đây là giao diện với người dùng sinh động, dễ nắm bắt. Nó bao gồm các
phím bấm, thanh tác vụ, hay các box đa dạng (textbox, list box, grid view…). Bạn
có thể di chuyển, kéo ra, nhúng thả chúng một cách dễ dàng.
WPF Designer: WPF Designer còn có tên mã là Cider, được hỗ trợ trong Visual
Studio 2008. Nó tạo các mã XAML cho giao diện người sử dụng (UI), mã này tích
hợp với trình ứng dụng Microsoft Expression Design.
Web designer: Visual Studio cũng hỗ trợ cộng cụ thiết kế trang web, trong đó cho
phép các công cụ thiết kế trang web được kéo, thả, rê, nhúng một cách dễ dàng…
Công cụ này dùng để phát triển trình ứng dụng ASP.NET và hỗ trợ HTML, CSS
and JavaScript.
Class designer: Đây là công cụ dùng để thực thi và chỉnh sửa lớp. Nó có thể dùng
mã C# và VB.NET …
Data designer: Đây là công cụ dùng để chỉnh sửa một cách sinh động, linh hoạt các
lược đồ dữ liệu, bao gồm nhiều loại lược đồ, liên kết trong và ngoài
Mapping designer: Đây là công cụ tạo các mối liên hệ giữa sơ đồ dữ liệu và các lớp
để quản lý dữ liệu một cách hiệu quả hơn.
Ngoài ra còn có thể kể tên một số công cụ khác như:
Open Tabs Browser: Nó được dùng để liệt kể các tab đã mở và chuyển đổi giữa
chúng. Bạn cũng có thể dùng phím nóng: CTRL + TAB.
Properties Editor: Chức năng dùng để chỉnh sửa các chức năng của các cửa sổ giao
diện đồ họa người dùng (GUI) trong Visual Studio. Nó có thể áp dụng cho các lớp,
các mẫu định dạng hay trang web và các đốI tượng khác.
Object Browser: Đây là một thư viện tên miền và lớp trình duyệt cho
Microsoft.NET.
Solution Explorer: theo ngôn ngữ của Visual Studio, solution là một bộ phận của
mã file và mã nguồn khác được dùng để xây dựng các trình ứng dụng. Công cụ
Solution Explorer được dùng để để quản lý và trình duyệt các file trong solution.
Team Explorer: Đây là công cụ dùng để hợp nhất các máy tính trong Team
Foundation Server, và RCS (revision control system - hệ thống điều khiển xét
duyệt) vào trong IDE.
12
Data Explorer: Data Explorer dùng để quản lý các dữ liệu trên các phiên bân của
Microsoft SQL Server. Nó cho phép tạo lập và chỉnh sửa các bảng dữ liệu được tạo
T-SQL commands hay dùng Data designer.
Server Explorer: Đây là công cụ dùng để quản lý dữ liệu trên máy tính được kết
nối.
2.1.3 Các sản phẩm của Microsoft Visual Studio
Microsoft Visual Studio đã phát hành các dòng sản phẩm sau:
Visual Studio Express: trong đó bao gồm: Visual Basic Express; Visual C++ Express;
Visual C# Express; Visual Web Developer Express.
Visual Studio Standard
Visual Studio Professional
Visual Studio Tools for Office
Visual Studio Team System: trong đó bao gồm: Team Explorer (basic TFS client);
Architecture Edition; Database Edition; Development Edition; Test Edition.
Về Visual Studio Team System: Năm 2006, Microsoft đã mở rộng dòng sản phẩm
Visual Studio của họ thêm một số nhóm sản phẩm có tên gọi là Visual Studio Team
System. Chúng có một sản phẩm mới đó là Team Foundation Server cho việc điều khiển
mã nguồn, quản lý dự án, kiểm tra và mô hình hóa cũng như một số phiên bản của môi
trường phát triển đã được tích hợp Visual Studio 2005 (IDE) hỗ trợ các tính năng của Team
Foundation Server.
Visual Studio Team System là một dòng sản phẩm được thiết kế để hỗ trợ sự cộng
tác và truyền thông giữa các chuyên gia phát triển phần mềm, những người đang sử dụng
Visual Studio IDE. Team System hỗ trợ kiểm soát mã nguồn, quản lý dự án, quản lý xây
dựng phần mềm, kiểm tra và các nhóm nhiệm vụ phát triển khác. Nó gồm có Visual Studio
Team Foundation Server và một tập các phiên bản đặc biệt của Visual 2005 Studio IDE hỗ
trọ các role phát triển cụ thể như các kiến trúc sư, các chuyên gia phát triển phần mềm hay
các kiểm tra viên. Các khả năng của Team System gồm có:
Kiểm soát mã nguồn: Team System cung cấp một hệ thống kiểm soát mã nguồn
mới, hệ thống này cho phép các chuyên gia phát triển có thể thực hiện hài hòa các
thay đổi đối với các file mã nguồn cho một dự án.
Quản lý dự án: Team System cung cấp một cơ sở dữ liệu quản lý dự án phần mềm
có khả năng tùy chỉnh cho việc kiểm tra lỗi, các yêu cầu trong tương lai, các trường
13
hợp thử và lĩnh vực khía cạnh công việc của các chuyên gia phát triển phần mềm
khác thông qua toàn bộ một chu trình thiết kế, viết mã và kiểm tra.
Về Visual Studio Tools for Office: Visual Studio Tools for Office cho phép các
chuyên gia phát triển phần mềm có thể tạo các ứng dụng tùy thích hoặc ứng dụng
để mở rộng Word, Excel và Outlook với sự logic riêng (như một giao diện cuối đối
với một hệ thống thanh toán) đang chạy dưới .NET Framework
2.1.4 Lịch sử phát triển của Microsoft Visual Studio
2.1.4.1 Visual Studio 97
Microsoft lần đầu ra mắt Visual Studio vào năm 1997 và tích hợp nhiều công cụ
phát triển đi kèm. Visual Studio 97 có 2 phiên bản là Professional and Enterprise. Lúc này
visual studio có chứa các ngôn ngữ lập trình sau: Visual Basic 5.0 và Visual C++ 5.0 dành
cho HĐH Windows; Visual J++ 1.1 dành cho Java; Visual FoxPro 5.0 lập trình CSDL;
Visual InterDev để thiết kế web động như ASP, hỗ trợ cả 2 ngôn ngữ là JAVASCRIPT và
VBSCRIPT.
Visual Studio 97 được Microsoft thử nghiệm việc sử dụng cùng một môi trường
phát triển cho nhiều ngôn ngữ.
Visual C++, Visual J++, InterDev, và MSDN Library… Developer Studio) sử dụng
chung một môi trường phát triển WinAPI.
Trong khi Visual Basic và Visual FoxPro lại phát triển theo một hướng riêng lẻ so
với các ngôn ngữ trên.
2.1.4.2 Visual Studio 6.0
Là một phiên bản tiếp (version 6.0) ra đời vào tháng 6 năm 1998 cải thiện thêm cho
Visual Studio 97. Đây cũng là phiên bản cuối cùng chạy trên nền tảng Win9x. Mặt khác
cũng có những nâng cấp rõ rệt: Visual J++ nâng cấp lên 1.1 và Visual InterDev 1.0. Phiên
bản này như là một cơ sở, một nền tảng mà Microsoft phải mất tới 4 năm để phát triển lên
một môi trường phát triển mới mà giờ đây người ta gọi là .NET Framework.
Visual Studio 6.0 là phiên bản cuối cùng của các ngôn ngữ Visual Basic, Visual J++;
Đồng thời trong phiên bản J++ đã được cải tiến thêm một số chức năng hướng đối tượng
khác và nhanh chóng bán công cụ lập trình này với mục tiêu là JVM (Java Virtual
Machine). JVM có vai trò rất quan trọng để các ứng dụng Java hoạt động. Nó hoạt động
giống một máy tính ảo, có bộ lệnh, cấu trúc bộ nhớ… JVM được xây dựng ở tất cả các
HĐH. Nó dịch các class của Java và đó là lý do để các ứng dụng Java hoạt động được ở
các HĐH.
14
Khác với VC97. Visual J++ Visual InterDev không sử dụng chung môi trường phát
triển WINAPI của Visual C++ nữa, trong khi đó Visual Basic và Visual FoxPro vẫn tiếp tục
đi theo những công cụ lập trình của mình.
2.1.4.3 Visual Studio .NET(2002)
Microsoft phát hành Visual Studio .NET - tên mã là Rainier, vào tháng 2 năm 2002
( bản beta được phát hành năm 2001). Đó là một sự thay đổi lớn trong công nghệ phát triển
phần mềm. MS đã giới thiệu một môi trường phát triển “quản lý code” (managed code) sử
dụng .NET Framework. Chương trình được phát triển sử dụng .NET không được biên dịch
giống như C++ trước đây. Nhưng được biên dịch theo một ngôn ngữ trung gian gọi là
MSIL (Microsoft Intermediate Language) hoặc CIL (Common Intermediate Language).
Khi chương trình MSIL chạy thì nó mới được biên dịch bằng ngôn ngữ máy (ASM), và từ
đây người ta có thể viết được các phần mềm portable (không cần setup).
Ngoài ra Microsoft cho ra đời 2 ngôn ngữ mới là C# (C-sharp) và J# với mục tiêu
là lập trình trên môi trường .NET. J# là thế hệ tiếp theo của J++. Visual J# dùng cú pháp
của ngôn ngữ Java. Tuy nhiên không giống như Visual J++, Visual J# có thể hoạt động độc
lập trên .NET Framework, Nó không còn phụ thuộc vào JVM và các công cụ của Java nữa.
Visual Basic được lột xác thành Visual Basic .NET. Trước kia nó được thiết kế để
lập trình ứng dụng tương tác với CSDL, nhưng khi lên VB.NET nó có đầy đủ khả năng để
viết được tất cả các ứng dụng mạnh không thua gì C++ và J++. Microsoft cũng mở rộng
C++, gọi là Managed Extensions for C++. Vì vậy người lập trình C++ vẫn có thể sử
dụng .NET. Ở Visual Studio .NET, ngoài Visual FoxPro thì các ngôn ngữ C+
+,J#,C#,VB.NET đã cùng sử dụng chung một môi trường phát triển.
2.1.4.4 Visual Studio .NET 2003
Vào tháng 4 năm 2003, Microsoft hoàn thành một bản nâng cấp của Visual
Studio.NET được gọi là Visual Studio .NET 2003 - có tên mã là everett. Nâng cấp thêm
.NET Framework thành phiên bản 1.1 với sự hỗ trợ cho việc phát triển ứng dụng trên điện
thoại di động và ASP.NET.
Trình biên dịch Visual C++ được cải thiện thêm nhiều so với C++ chuẩn trước đây,
chủ yếu là thêm một số từ khóa mới để thích hợp với .NET. Trong VS2k3 thì có một công
cụ miễn phí là Visual C++ Toolkit 2003 có thể biên dịch nhanh các file .cpp mà không cần
IDE và nhanh chóng được ứng dụng mà ngày nay nó được thay thế là Express Editions.
2.1.4.5 Visual Studio 2005
15
Visual Studio 2005, có tên mã là Whidbey, được phát hành vào tháng 10 năm 2005.
Cùng với NET Framework, được nâng cấp lên thành version 2.0. Đây cũng là phiên bản
cuối cùng thích hợp cho Windows 2000. Microsoft phát hành Service Pack 1cho Visual
Studio 2005 vào 14 tháng 12 năm 2006. Bản nâng cấp Service Pack 1 cho Windows Vista
được hoàn thành vào 3/6/2007.
Phiên bản này cung cấp các công cụ mới cho việc phát triển mã cơ sở dữ liệu phía
trình chủ của SQL Server 2005. Nó cũng hỗ trợ .NET Framework 2.0, cụ thể có các công
cụ hỗ trợ các tính năng ASP.NET 2.0 (như các mẫu “Master Pages” chung cho các trang
thông thường) và sự triển khai “ClickOnce” của các ứng dụng nhỏ trên máy khách. Visual
Studio 2005 đã giới thiệu các API Visual Basic được đơn giản hóa cho các nhiệm vụ lập
trình chung nhất và khôi phục các tính năng Visual Basic IDE (như việc gỡ rối “edit-andcontinue”), đây là tính năng không có trong Visual Studio .NET 2003 và Visual Studio
.NET. Visual Studio 2005 cũng cung cấp một công nghệ tối ưu hóa hiệu suất mới cho C++
“profile-driven” đặc biệt dành cho các ISV thương mại.
Visual Studio 2005 giới thiệu một số phiên bản mới của IDE để sử dụng với Team
Foundation Server. Mặc dù vậy, các phiên bản Visual Studio 2005 Express, Standard và
Professional của IDE có thể được sử dụng độc lập cho dịch-gỡ rối trước đây và chúng cũng
có thể được sử dụng với các công cụ dành cho nhóm phát triển từ các hãng khác.
Trong phiên bản này có nhiều sự thay đổi lớn về ngôn ngữ nó đặc biệt là C++. Ra
đời C++/CLI để thay thế cho Managed C++ khi lập trình trên .NET Một số nét đặc trưng
mới của VS2k5 là thêm vào “Deployment Designer” cho phép kiểm tra ứng dụng trước khi
đưa ra triển khai, Môi trường phát triển WEB trở thành ASP.NET 2.0.
Visual Studio 2005 cũng hỗ trợ các ứng dụng 64-bit. Trong khi xây dựng trên môi
trường ứng dụng WINDOWS 32-bit. Visual C++ 2005 hỗ trợ biên dịch cho x64 (AMD64,
EM64T) giống như IA-64 (Itanium).
2.1.4.6 VISUAL STUDIO 2008
Visual Studio 2008, có tên mã là Orcas, là một phiên bản tiếp theo của Visual Studio
2005. Phiên bản Visual Studio này gồm các công cụ phát triển với .NET Framework 3.0,
được cài đặt trước trong Windows Vista và cũng có sẵn cho Windows XP và Server 2003
nhưmột add-on miễn phí. Các công cụ đã được lên kế hoạch gồm có bộ thiết kế kéo - thả
cho các giao diện sử dụng đồ họa (GUI) Windows Presentation FrameWork và các công cụ
thiết kế cho engine luồng công việc Windows Workflow Foundation. Orcas cũng sẽ cung
cấp ngôn ngữ truy vấn tích hợp (LINQ), các mở rộng trong cơ sở dữ liệu và dữ liệu XML.
Orcas sẽ cộng tác với các cộng cụ lập trình mới nhất cho công cụ quản lý hệ thống theo sự
16
phát triển trong cách giải quyết hệ thống động (Dynamic Systems Initiative). Tuy nhiên có
một điều là Orcas không có J#, một ngôn ngữ giống như Java mà Microsoft lên kế hoạch
để tiếp tục phát triển. (J# sẽ không được hỗ trợ chủ đạo vào năm 2012 và 5 năm hỗ trợ mở
rộng sau đó).
2.2 Tổng quan về SQL Server
Ngày nay, có rất nhiều hệ số đang hội tụ để tạo nên sự bùng nổ về lưu trữ thông tin.
Lượng thông tin số bên trong một tổ chức đang ngày càng tăng một cách rõ rệt bởi nhiều
kiểu khác nhau như số hóa dữ liệu từ ảnh số, video và các tín hiệu cảm biến. Việc tăng sự
thi hành và tính toàn cầu hóa yêu cầu thông tin được lưu một cách an toàn nhưng cũng phải
có thể truy cập cứ lúc nào. Người dùng phải di chuyển qua hàng núi dữ liệu để tìm được
thông tin thích đáng. Mặt khác họ cũng muốn sử dụng những thông tin này trên các thiết bị
và bên trong các ứng dụng sử dụng hàng ngày như Microsoft Office System. Với sự phát
triển của công nghệ, chi phí cho việc lưu trữ cũng được giảm đáng kể; các ổ đĩa FLASH
cho phép lưu trữ lượng dữ liệu lớn trên các thiết bị mới. Chính vì vậy các tổ chức hiện có
thể lưu nhiều dữ liệu và giảm được chi phí cho việc lưu trữ. Mặc dù vậy, vẫn tồn tại rất
nhiều khó khăn và thách thức còn đó trong việc quản lý sự bùng nổ dữ liệu này.
Toàn cảnh về nền tảng dữ liệu của Microsoft đã đề cập đến những vấn đề cần thiết trong
việc bùng nổ dữ liệu và thế hệ kế tiếp của các ứng dụng thao tác dữ liệu bằng việc cung
cấp dữ liệu mọi lúc, mọi nơi. Các tổ chức yêu cầu một nền tảng dữ liệu có thể lưu và quản
lý các dữ liệu khác nhau gồm XML, email, thời gian/lịch biểu, file, tài liệu, tính không
gian… trong khi đó vẫn cung cấp một loạt các dịch vụ phong phú để tương tác với dữ liệu
như: tìm kiếm, truy vấn, phân tích, báo cáo, tích hợp dữ liệu liên tục, đồng bộ hóa dữ liệu.
Người dùng có thể truy cập thông tin từ ứng dụng đến kho lưu trữ dữ liệu và truy cập trên
bất kỳ thiết bị nào, có thể từ máy trạm hay thiết bị di động.
Nền tảng dữ liệu Microsoft là một giải pháp xuyên suốt cần cho các thách thức đã
tồn tại và hơn thế nữa, bằng việc đưa ra những cách tân trong bốn lĩnh vực chính nhằm hỗ
trợ cho dữ liệu: Nền tảng cho các nhiệm vụ then chốt, phát triển động, dữ liệu quan hệ mở
rộng, thông tin trong toàn bộ doanh nghiệp.
Hãy tìm hiểu cách SQL Server 2008 đáp ứng những cần thiết cho thế hệ kế tiếp của
các ứng dụng thao tác dữ liệu.
17
Hình 3 : Toàn cảnh nền tảng dữ liệu của Microsoft
2.2.1 SQL Server 2008
SQL Server 2008 giới thiệu 4 lĩnh vực chính trong toàn cảnh nền tảng dữ liệu của
Microsoft:
•
Nền tảng cho các nhiệm vụ then chốt - SQL Server 2008 cho phép các tổ
chức có thể chạy hầu hết các ứng dụng phức tạp của họ trên một nền tảng an
toàn, tin cậy và có khả năng mở rộng, bên cạnh đó còn giảm được sự phức
tạp trong việc quản lý cơ sở hạ tầng dữ liệu. SQL Server 2008 cung cấp một
nền tảng tin cậy và an toàn bằng cách bảo đảm những thông tin có giá trị
trong các ứng dụng đang tồn tại và nâng cao khả năng sẵn có của dữ liệu.
SQL Server 2008 giới thiệu một cơ chế quản lý cách tân dựa trên chính sách,
cơ chế này cho phép các chính sách có thể được định nghĩa quản trị tự động
cho các thực thể máy chủ trên một hoặc nhiều máy chủ. Thêm vào đó, SQL
Server 2008 cho phép thi hành truy vấn dự báo với một nền tảng tối ưu.
•
Sự phát triển động - SQL Server 2008 cùng với .NET Framework đã giảm
được sự phức tạp trong việc phát triển các ứng dụng mới. ADO.NET Entity
Framework cho phép các chuyên gia phát triển phần mềm có thể nâng cao
năng suất bằng làm việc với các thực thể dữ liệu logic đáp ứng được các yêu
cầu của doanh nghiệp thay vì lập trình trực tiếp với các bảng và cột. Các mở
rộng của ngôn ngữ truy vấn tích hợp (LINQ) mới trong .NET Framework đã
18
cách mạng hóa cách các chuyên gia phát triển truy vấn dữ liệu bằng việc mở
rộng Visual C#® và Visual Basic® .NET để hỗ trợ cú pháp truy vấn giống
SQL vốn đã có. Hỗ trợ cho các hệ thống kết nối cho phép chuyên gia phát
triển xây dựng các ứng dụng cho phép người dùng mang dữ liệu cùng với
ứng dụng này vào các thiết bị và sau đó đồng bộ dữ liệu của chúng với máy
chủ trung tâm.
•
Dữ liệu quan hệ mở rộng - SQL Server 2008 cho phép các chuyên gia phát
triển khai thác triệt để và quản lý bất kỳ kiểu dữ liệu nào từ các kiểu dữ liệu
truyền thống đến dữ liệu không gian địa lý mới.
•
Thông tin trong toàn bộ doanh nghiệp - SQL Server 2008 cung cấp một cơ sở
hạ tầng có thể mở rộng, cho phép quản lý các báo cáo, phân tích với bất kỳ
kích thước và sự phức tạp nào, bên cạnh đó nó cho phép người dùng dễ dàng
hơn trong việc truy cập thông tin thông qua sự tích hợp sâu hơn với
Microsoft Office. Điều này cho phép CNTT đưa được thông tin của doanh
nghiệp rộng khắp trong tổ chức. SQL Server 2008 tạo những bước đi tuyệt
vời trong việc lưu trữ dữ liệu, cho phép người dùng hợp nhất các trung tâm
dữ liệu vào một nơi lưu trữ dữ liệu tập trung của toàn doanh nghiệp.
2.2.1.1 Nền tảng cho các nhiệm vụ then chốt
Trong một thế giới dữ liệu ngày nay, dữ liệu và các hệ thống quản lý dữ liệu đó cần
phải luôn luôn được bảo đảm và ở trạng thái có sẵn. SQL Server 2008 cho phép CNTT
giảm được sự phức tạp của cơ sở hạ tầng trong khi đó vẫn bảo đảm cung cấp một nền tảng
dữ liệu doanh nghiệp có khả năng bảo mật, khả năng mở rộng và quản lý tốt hơn, cùng với
thời gian chết của ứng dụng giảm.
Nền tảng tin cậy cho dữ liệu của bạn : Được xây dựng có kế thừa những
điểm mạnh có trong SQL Server 2005, SQL Server 2008 mở rộng tính năng
bảo mật và khả năng có sẵn với những nâng cao dưới đây.
Mã hóa dữ liệu trong suốt : SQL Server 2008 cho phép mã hóa toàn bộ cơ sở dữ
liệu, các file dữ liệu và file bản ghi mà không cần thay đổi ứng dụng. Một số lợi ích của mã
hóa dữ liệu trong suốt cho phép tìm kiếm dữ liệu đã mã hóa bằng cả tìm kiếm phạm vi và
tìm kiếm thô, tìm kiếm dữ liệu bảo mật từ những người dùng không có thẩm quyền và sự
mã hóa dữ liệu. Tất cả có thể được mã hóa mà không cần thay đổi các ứng dụng đang tồn
tại.
19
Quản lý khóa mở rộng : SQL Server 2008 cung cấp một giải pháp toàn diện cho
việc mã hóa và quản lý khóa. Sự mã hóa cho phép đáp ứng được nhu cầu của các tổ chức
trong việc thi hành những chính sách và sử dụng dữ liệu riêng tư. SQL Server 2008 mang
đến một qiải phát tuyệt vời với những nhu cầu ngày càng tăng này bằng việc hỗ trợ các sản
phẩm modul bảo mật phần cứng (HSM) và quản lý khóa của nhóm thứ ba.
Hot Add CPU : Với việc mở rộng, SQL Server 2008 hỗ trợ cho việc bổ sung thêm
tài nguyên bộ nhớ trực tuyến, Hot Add CPU cho phép một cơ sở dữ liệu có thể được mở
rộng theo nhu cầu. Trong thực tế, tài nguyên CPU có thể được bổ sung vào SQL
Server 2008 trên các nền tảng phần cứng được hỗ trợ mà không phải dừng ứng dụng.
Quản lý dựa trên chính sách sản xuất : Như một phần của cố gắng được
thực hiện bởi Microsoft trong việc giảm chi phí tổng thể của chủ sở hữu
(TCO), SQL Server 2008 giới thiệu Declarative Management Framework,
một cơ chế quản lý mới dựa trên chính sách cho SQL Server Database
Engine. Declarative Management mang đến cho các bạn những lợi ích dưới
đây:
–
Bảo đảm sự thi hành các chính sách cho cấu hình hệ thống
–
Kiểm tra và ngăn chặn những thay đổi đối với hệ thống bằng việc
thẩm định các chính sách đối với cấu hình
–
Giảm chi phí tổng thể cho chủ sở hữu bằng cách đơn giản hóa các
nhiệm vụ quản trị
–
Phát hiện các vấn đề thi hành trong SQL Server Management Studio
Declarative Management Framework (DMF) : là một hệ thống dựa trên chính
sách cho việc quản lý một hoặc nhiều trường hợp trong SQL Server 2008. Để sử
dụng DMF, các quản trị viên chính sách SQL Server sử dụng SQL Server
Management Studio để tạo chính sách quản lý các thực thể trên máy chủ, như
trường hợp trong SQL Server, các cơ sở dữ liệu và đối tượng SQL Server khác.
Declarative Management Framework gồm có ba thành phần: quản lý chính sách,
quản trị viên chính sách - người tạo chính sách và quản trị viên thực thụ. Các quản
trị viên chọn một hoặc nhiều mục tiêu đã có và kiểm tra các mục tiêu đó có tuân
theo chính sách nào đó không hoặc ép buộc các mục tiêu đó với một chính sách nào
đó.
Quản trị tự động
20
Các quản trị viên chính sách có thể thi hành chính sách tự động bằng sử dụng
một trong những chế độ thi hành dưới đây:
•
Ép buộc - sử dụng các kích hoạt DDL để ngăn chặn các xâm phạm chính
sách
•
Kiểm tra thay đổi - sử dụng thông báo sự kiện để thi hành một chính sách
khi có một thay đổi xuất hiện
•
Kiểm tra bằng lịch biểu - sử dụng SQL Server Agent để đánh giá một
cách định kỳ một chính sách
Hình 4 : Declarative Management Framework
Sự cài đặt hợp lý : SQL Server 2008 giới thiệu những cải thiện đáng kể đối
trong chu trình phát triển dịch vụ SQL Server thông qua sự cài đặt được xây dựng
lại, các thiết lập và kiến trúc cấu hình. Những cải thiện này phân chia sự cài đặt
thành các bit vật lý trên phần cứng từ sự cấu hình của phần mềm SQL Server, điều
đó cho phép các tổ chức và đối tác phần mềm có thể cung cấp cấu hình cài đặt đã
khuyến khích.
•
Thực thi tối ưu và khả năng dự báo : Các tổ chức đã phải đối mặt với cả
sức ép cho sự phát triển - cần phải cung cấp những câu trả lời có thể dự báo
trước, tăng các ấn bản dữ liệu và tăng số lượng người dùng. SQL Server
2008 cung cấp một tập các tính năng nâng cao cho phép sự thực thi có thể dự
21
báo trước và mở rộng cho bất kỳ luồng công việc nào trên nền tảng dữ liệu
của bạn.
Thực thi chọn lọc dữ liệu : Thực hiện việc điều chỉnh và xử lý sự cố là các
nhiệm vụ gây tốn rất nhiều thời gian cho các quản trị viên. Để cung cấp
những gì tốt nhất trong thực thi hành động đối với các quản trị viên, SQL
Server 2008 cho phép thực thi chọn lọc dữ liệu có phạm vi rộng hơn, một
kho dữ liệu tập trung mới cho việc lưu dữ liệu thực thi và các công cụ mới
cho việc báo cáo và kiểm tra.
Nén dữ liệu : Cải thiện việc nén dữ liệu, cho phép dữ liệu được lưu một cách
hiệu quả hơn và giảm được các nhu cầu lưu trữ đối với dữ liệu. Nén dữ liệu
cũng cung cấp những cải thiện thực thi đáng kể cho các luồng công việc
vào/ra lớn như việc lưu một kho lớn dữ liệu.
Resource Governor : SQL Server 2008 cho phép các tổ chức có thể cung
cấp sự đáp trả phù hợp và có thể dự báo đến người dùng bằng Resource
Governor. Resource Governor cho phép các tổ chức định nghĩa giới hạn tài
nguyên và sự ưu tiên cho các luồng công việc khác nhau, điều đó cho phép
các luồng công việc cùng lúc có thể được cung cấp một cách phù hợp đến
với người dùng.
Thực thi truy vấn dự báo : SQL Server 2008 cho sự ổn định thực thi truy
vấn và khả năng dự báo tốt hơn bằng việc cung cấp chức năng mới để hạn
chế các kế hoạch truy vấn, cho phép các tổ chức đẩy mạnh kế hoạch truy
vấn ổn định qua các sắp đặt phần cứng máy chủ, nâng cấp máy chủ và triển
khai sản xuất.
2.2.1.2 Phát triển động
Nền tảng cho khả năng lập trình dữ liệu toàn diện của Microsoft cho phép
chuyên gia phát triển phần mềm có thể xây dựng giải pháp dữ liệu tập trung có các
máy trạm, các thiết bị di động, các máy chủ Web trực tuyến và máy chủ doanh
nghiệp.SQL Server 2008 hỗ trợ cho việc xây dựng các ứng dụng sử dụng nhiều
công nghệ đã có từ trước như ODBC, ADO/OLEDB, và ADO.NET. Đặc biệt, SQL
Server 2008 cùng với NET Framework và Visual Studio® Team Systems còn cho
22
phép chuyên gia phát triển phần mềm xây dựng các ứng dụng cơ sở dữ liệu thế hệ
kế tiếp.
Sự hỗ trợ mới cho các hệ thống kết nối cho phép các chuyên gia xây dựng
ứng dụng mà người dùng có thể đưa dữ liệu vào các thiết bị và sau đó đồng bộ dữ
liệu của họ với máy chủ trung tâm. Một số tiến bộ cho việc phát triển các ứng dụng
bằng SQL Server 2008 sẽ được giới thiệu trong các phần tiếp theo.
•
Thúc đẩy quá trình phát triển : ADO.NET Entity Framework mới cho
phép các chuyên gia phát triển đạt được năng suất cao hơn bằng cách làm
việc với các thực thể dữ liệu logic đáp ứng với các nhu cầu cần thiết của
doanh nghiệp thay vì việc phải lập trình trực tiếp với bảng và cột. Các mở
rộng của ngôn ngữ truy vấn tích hợp (LINQ) trong .NET Framework đã cách
mạng hóa cách chuyên gia phát triển phần mềm truy vấn dữ liệu bằng việc
mở rộng C# và Visual Basic .NET để hỗ trợ cú pháp truy vấn giống SQL.
Thúc đẩy sự phát triển của bạn với các thực thể và ADO.NET Entity
Framework : Một xu hướng chung đối với các chuyên gia phát triển phần mềm đó
là định nghĩa các đối tượng doanh nghiệp mức cao hoặc thực thể được ánh xạ với
các bảng và cột được lưu trong một cơ sở dữ liệu. Không phải lập trình với bảng và
cột trong một cơ sở dữ liệu, giờ đây chuyên gia phát triển phần mềm sử dụng các
thực thể mức cao này, ví dụ như ‘Customer’ hay ‘Order’ để thể hiện dữ liệu nằm
bên dưới. ADO.NET Entity Framework cho phép chuyên gia phát triển phần mềm
có thể lập trình với dữ liệu quan hệ dưới dạng các thực thể như vậy. Việc lập trình ở
mức trừu tượng này tạo năng suất cao và cho phép chuyên gia phát triển lợi dụng
được các thuận lợi của mô hình Entity-Relationship (E-R).
Ngôn ngữ truy vấn tích hợp : Ngôn ngữ truy vấn tích hợp (LINQ) cho phép
các chuyên gia phát triển phần mềm có thể truy vấn dữ liệu bằng sử dụng một ngôn
ngữ lập trình đã có như C# hoặc Visual Basic.NET, thay vì các câu lệnh SQL. LINQ
cho phép truy vấn hướng tập hợp, truy vấn kiểu được ghi đè trong các ngôn ngữ
.NET Framework để chạy ADO.NET (LINQ cho SQL), ADO.NET DataSets (LINQ
cho DataSets), ADO.NET Entity Framework (LINQ cho Entities), và cho Entity
Data Service Mapping Provider. SQL Server 2008 đặc trưng bằng một LINQ mới
23
cho SQL Provider, cho phép các chuyên gia có thể sử dụng LINQ trực tiếp trên các
bảng và cột của SQL Server 2008.
Hình 5 : LINQ cho các thực thể
Tích hợp CLR và các dịch vụ đối tượng của ADO.NET : Lớp các dịch vụ đối
tượng của ADO.NET cho phép sự cụ thể hóa, kiểm tra các thay đổi và sự bền của dữ liệu
như các đối tượng CLR. Các chuyên gia sử dụng ADO.NET Entity Framework có thể lập
trình một cơ sở dữ liệu bằng cách sử dụng các đối tượng CLR được quản lý bởi ADO.NET.
SQL Server 2008 hỗ trợ tối ưu và hiệu quả hơn nhằm cải thiện sự thực thi và đơn giản hóa
sự phát triển.
•
Các hệ thống kết nối không thường xuyên : Với các thiết bị di động và
những người đang đi trên đường, việc kết nối trở thành một vấn đề không thể
thiếu của cuộc sống. SQL Server 2008 mang đến một nền tảng đồng bộ hợp
nhất cho phép đồng bộ nhất quán qua các ứng dụng, kho dữ liệu và kiểu dữ
liệu. Trong sự nỗ lực chung vớiVisual Studio, SQL Server 2008 cho phép có
thể nhanh chóng tạo các ứng dụng kết nối không thường xuyên bằng cách
của các dịch vụ đồng bộ mới trong ADO.NET và các thiết kế offline trong
Visual Studio. SQL Server 2008 cung cấp sự hỗ trợ cho việc kiểm tra thay
đổi, cho phép khách hàng có thể phát triển các ứng dụng dựa trên thông báo,
đồng bộ và lưu trữ bằng sự bổ sung mạnh mẽ về hiệu suất tối thiểu cho
overhead.
24
2.2.1.3 Dữ liệu quan hệ mở rộng
Các ứng dụng hiện nay đang kết hợp nhiều kiểu dữ liệu hơn so với trước kia. SQL
Server 2008 xây dựng trên một di sản kế thừa việc hỗ trợ dữ liệu không quan hệ mạnh
bằng việc cung cấp các kiểu dữ liệu mới cho phép các chuyên gia và quản trị viên lưu trữ
một cách có hiệu quả và quản lý được dữ liệu không kết cấu như các tài liệu và ảnh. Sự hỗ
trợ cho việc quản lý dữ liệu không gian địa lý nâng cao được bổ sung trong sản phẩm này.
Thêm vào với các kiểu dữ liệu mới, SQL Server 2008 còn cung cấp một số các dịch vụ
phong phú trên các kiểu dữ liệu khác nhau trong khi vẫn cung cấp khả năng tin cậy, tính
bảo mật và khả năng quản lý của kho dữ liệu quan hệ.
•
Lưu trữ các kiểu dữ liệu : SQL Server 2008 cho phép sự giao dịch không bị
đứt quãng giữa việc quản lý dữ liệu không quan hệ và quan hệ. Điều này cho
phép người dùng dễ dàng truy cập vào các tài liệu như dữ liệu, các kiến trúc
mã hóa phức tạp bên trong XML và truy vấn cả dữ liệu quan hệ và văn bản.
DATE/TIME SQL Server 2008 giới thiệu các kiểu dữ liệu date và time mới:
− DATE – là một kiểu dữ liệu ngày
− TIME – kiểu dữ liệu thời gian
− DATETIMEOFFSET – kiểu dữ liệu thời gian và ngày tính theo
vùng
− DATETIME2 – rộng hơn kiểu DATETIME đang tồn tại
Các kiểu dữ liệu mới cho phép các ứng dụng có thể phân biệt kiểu dữ liệu và kiểu
thời gian trong khi đó vẫn cung cấp được các dải dữ liệu lớn hơn hoặc độ chính xác được
định nghĩa bởi người dùng cho các giá trị thời gian.
HIERARCHY ID : SQL Server 2008 cho phép các ứng dụng dữ liệu có thể mô
hình theo cấu trúc cây một cách hiệu quả hơn với các phiên bản hiện hành. HierarchyId là
một kiểu hệ thống mới có thể lưu giá trị để thể hiện các nút trong kiến trúc cây. Kiểu dữ
liệu mới này đặc trưng cho mô hình lập trình linh động. Nó được thực thi như CLR UDT
cho thấy một số hiệu quả và phương pháp hữu dụng bên trong cho việc tạo và hoạt động
trên các nút của kiến trúc hệ đẳng cấp.
FILESTREAM Data : Kiểu dữ liệu FILESTREAM mới của SQL Server
2008 cho phép dữ liệu nhị phân cỡ lớn được lưu trực tiếp trong một hệ thống file
NTFS, trong đó vẫn duy trì gần như toàn bộ cơ sở dữ liệu và duy trì sự nhất quán
trong giải quyết nhiệm vụ ứng dụng. Kiểu dữ liệu FILESTREAM mới cho phép sự
25