Tài liệu tham khảo chuyên ngành tin học Xây dựng web site quản lý sinh viên kí túc xá trường ĐH Kinh Tế Quốc Dân
Trang 1Mục lục
Lời nói đầu 3
I GIỚI THIỆU VỀ CÔNG TY VÀ XÁC ĐỊNH ĐỀ TÀI THỰC TẬP _4
1 Giới thiệu chung về công ty 4
1.1 Các sản phẩm dịch vụ _5 1.2 Cơ cấu tổ chức 6 1.3 Đối tác 11
2 Xác định đề tài 12
2.1 Lý do chọn đề tài 12 2.2 Mục tiêu của đề tài 14 2.3 Dự kiến _15
II CƠ SỞ PHƯƠNG PHÁP LUẬN CỦA VIỆC THIẾT KẾ WEBSITE 16
1 Tổng quan về internet _16
1.1 Cách thức truyền thông trên Internet _17 1.2 Các dịch vụ Internet _17
2 Giới thiệu về SQL Server 2000 18
2.1 Giới Thiệu Về Transact SQL (T-SQL) 19 2.1.1 Cú Pháp Của T-SQL: 24 2.1.2 Các thành phần Control-Of Flow 26 2.1.3 Thực Thi Các Câu Lệnh SQL _26 2.1.4 Cấu Trúc Vật Lý Của Một SQL Server Database 27 2.1.5 Cấu Trúc Logic Của Một SQL Server Database _28
3 Asp.Net 35
3.1 Khác biệt giữa ASP.NET và ASP _36 3.2 Kiểu mẫu RESQUEST/RESPONSE 37 3.3 Kiểu mẫu EVENT-DRIVEN 38
4 Sơ lược về NetFramework CLR _39
III XÂY DỰNG WEBSITE “SINH VIÊN NỘI TRÚ ĐẠI HỌC KINH TẾ QUỐC DÂN” _44
1 Chức năng chính 44
1.1 Cung cấp thông tin _45 1.2 Quản lí danh sách sinh viên 45 1.3 Đăng kí ra vào kí túc xá, chuyển phòng ở cho sinh viên _45 1.4 Quản lí khách ra vào kí túc xá 46
Trang 21.5 Tạo diễn đàn cho sinh viên 46 1.6 Quản lí người dùng (phân quyền người sử dụng) 46
2 Sơ đồ website: 48
2.1 Sinh viên và các đối tượng khác truy cập đến website: 48 2.2 Ban quản lí kí túc xá _49 2.3 Cập nhật thông tin _50 2.4 Quản lí sinh viên _50
3 Các chức năng chính: 53
3.1 Đăng kí (Register) 54 3.2 Đăng nhập 56 3.3 Thêm/ Sửa/ Xóa thông tin _59 3.4 Tìm kiếm thông tin _61 3.5 Quản lí quyền _63 3.6 Quản lí người dùng 64
4 Một số giao diện chính của website 69
Trang 3Lời nói đầu
Công nghệ thông tin ngày càng phát triển và con đẻ của nó là các web site cũng không ngừng lớn mạnh cả về số lượng cũng như chất lượng Từ trang web quen thuộc www.google.com người dùng có thể tìm thấy rất nhiều các web site về mọi lĩnh vực: văn hoá, thời sự, khoa học công nghệ, làm đẹp, nấu ăn, thể thao, ca nhạc, phim ảnh…Độc giả sẽ click chuột vào đâu? Tất nhiên là vào những địa chỉ chứa những thông tin người dùng tìm kiếm, hay những web site ấn tượng.
Ngày nay, việc tự tạo ra trang web cho riêng mình không còn là điều khó khăn Chẳng hạn như, khi truy cập vào trang web 360.yahoo.com , người dùng có thể dễ dàng tạo ra web site cá nhân, tự thiết kế giao diện, nội dung trong Blog của mình theo phong cách riêng.
Tuy nhiên, những web site như vậy, phần lớn chỉ mang tính giải trí, để tạo ra một trang web có sức sống bền lâu thì bản thân nó phải mang lại lợi ích cho nhiều người Giao diện bắt mắt là yếu tố quan trọng để người xem click chuột đến web site của bạn Nhưng yếu tố quyết định giữ chân độc giả lại là nội dung mà web site cung cấp Đi theo lối mòn là sự lựa chọn có nhiều thách thức, tuy nhiên, được tham gia một khóa học khá lí thú về qui trình thiết kế web site tại công ty TNHH Trí Tuệ Nhân Tạo, em đã chọn nơi thực tập tại công ty và định hướng đề tài thực tập là thiết kế web site theo một lối đi mới.
Do thời gian và kinh nghiệm còn hạn chế nên báo cáo không tránh khỏi những thiếu xót Rất mong được sự phê bình, góp ý của cô giáo Ts.Trần Thị Thu Hà.
Trang 4
I GIỚI THIỆU VỀ CÔNG TY VÀ XÁC ĐỊNH ĐỀ TÀI
THỰC TẬP
1 Giới thiệu chung về công ty
Tên công ty : AI.Co.ltd (Artificial intelligence Limited Company) Giám đốc : Hoàng Ngọc Trung
Địa chỉ : Nhà CT2B, Lê Đức Thọ, Mĩ Đình, Hà Nội
Loại hình doanh nghiệp: Công ty TNHH
Sản xuất và gia công phần mềm
Đào tạo và hỗ trợ đào tạo
Cung cấp các hệ thống phần mềm phục vụ đào tạo
Nghiên cứu, phát triển và tư vấn giải pháp công nghệ
In ấn, xuất bản tài liệu công nghệ thông tin
Thiết kế, thi công và bảo trì các hệ thống mạng WAN, LAN
Sản xuất và sửa chữa các thiết bị điện, điện tử
.
1.1 Các sản phẩm dịch vụ
Phần mềm quản lí đào tạo và hỗ trợ đào tạo
o Phần mềm quản lí đào tạo – TMS
o Trường học trực tuyến (Elearning) – School online
Trang 5o Thư viện điện tử - LMS
o Phần mềm thi trực tuyến – Testing & Certification
Ứng dụng thương mại điện tử
o Web site cho doanh nghiệp
o Giải pháp quản lý doanh nghiệp trên môi trường Web
Trang 61.2 Cơ cấu tổ chức
Giám đốc
Bộ phận Phân tích thiết kế
P.Lập trình
Bộ phận Kiểm thử
Bộ phận Kiểm soát chất lượng
Bộ phận Triển khai và
tư vấn khách hàng
P.
Phần
mềm
Bộ phận Thiết
Trang 7 Phòng phần mềm:
Mục tiêu: thay thế các thao tác nghiệp vụ thủ công, tiếp cận các phươngpháp quản lý hiện đại nhằm nâng cao hiệu quả hoạt động sản xuất và kinhdoanh
Bộ phận phân tích thiết kế
Trang 8Đưa ra các giải pháp phần mềm toàn diện,đề xuất các phương án tốt nhất
để hỗ trợ khách hàng trong việc xác định yêu cầu và mục tiêu của dự án.
Trang 9Bộ phận có nhiệm vụ kiểm tra và giám sát chất lượng sản phẩm trước khichuyển giao để đảm bảo chất lượng hoàn hảo nhất, thoả mãn yêu cầu củakhách hang
Bộ phận triển khai và tư vấn khách hàng
Đội ngũ triển khai, bảo trì và hỗ trợ Khách hàng đưa sản phẩm phần mềmđến với Khách hàng, đáp ứng các nhu cầu thay đổi của Khách hang
Bộ phận thiết kế đồ hoạ
Trang 10 Phòng đào tạo và nghiên cứu
Xây dựng các chương trình, nội dung đào tạo, tài liệu nghiên cứu để thựchiện việc đào tạo cho sinh viên, hỗ trợ cho sinh viên tự học, cung cấp chocác tổ chức đào tạo các doanh nghiệp CNTT
Xây dựng hệ thống chia sẻ tin tức, tài nguyên cho cộng đồng CNTT
Trang 11 Đối tác nước ngoài
o Hãng truyền thông Brainsonic
Trang 12o Hogeschool Drenthe
2 Xác định đề tài
2.1 Lý do chọn đề tài
Sau một thời gian thực tập tại công ty, được tham gia trực tiếp vào dự
án ETC (xây dựng web site du lịch), và tiến hành phân tích thiết kế website “Vì người nghèo”, em đã tìm hiểu qui trình thiết kế web site và cáccông cụ hỗ trợ khác Đặc biệt ngôn ngữ thiết kế mô hình UML và các kĩthuật đồ họa đã định hướng cho em một lối đi mới cho đề tài thiết kế website vốn được coi là lối mòn
Mục đích lớn nhất của công nghệ thông tin là các ứng dụng trong thực
tế, đáp ứng những nhu cầu nhất định của người sử dụng
Là sinh viên năm cuối trường ĐH Kinh tế Quốc Dân, em mong muốn
đề tài thực tập của mình có thể ứng dụng trong thực tế, hữu ích, thiết thực
mà đối tượng sử dụng gần gũi nhất là các sinh viên trong trường
Bản thân đã từng sinh hoạt trong kí túc xá của trường, em nhận thấy việcquản lý một số lượng lớn các sinh viên từ nhiều tỉnh thành, học tại cáckhoa, khóa khác nhau gặp không ít những khó khăn Kí túc xá đã xây thêmtòa nhà và sắp tới sẽ quản lý cả các sinh viên nước ngoài Ban quản lý phảiquản lý các phòng ở, sắp xếp các sinh viên cùng khoa, khóa trong mộtphòng, mỗi phòng gồm 10 người Trong một một học kì có thể có rất nhiềulượt sinh viên chuyển ra và chuyển vào các phòng, ban quản lí phải sắp xếplại chỗ ở cho từng đối tượng này Tình hình an ninh, vé gửi xe, đóng tiềnđiện nước, khách ở trọ qua đêm, gửi thông báo đên ban quản lý ký túc xá.Đồng thời Website giúp cho hoạt động của sinh viên tình nguyện, hội đồnghương trở nên dễ dàng, thuận tiện…
Mặt khác, các bậc phụ huynh luôn muốn có được các thông tin chínhxác về con em mình: điều kiện sinh hoạt, các bạn cùng phòng…
Trang 13Nhà trường đã tài trợ cho kí túc xá một số lượng lớn các máy tính có kếtnối Internet Vì vậy:
Web site quản lý sinh viên kí túc xá là một giải pháp tốt cho các vấn đề
nêu trên Trang web không chỉ hướng tới ban quản lý, sinh viên, phụ huynh
mà mọi người đều có thể truy cập, tìm kiếm thông tin và hiểu thêm về cáchoạt động, cũng như danh tiếng, uy tín của trường, cuộc sống của các sinhviên kí túc xá…
2.2 Mục tiêu của đề tài
Một web site thành công đòi hỏi phải có sự thiết kế cẩn thận, giao diệnđẹp mắt và nội dung thông tin chất lượng, được bố trí khoa học
Thiết kế web site được coi là một lối mòn cho sự lựa chọn đề tài thựctập của các sinh viên công nghệ thông tin Kết quả là, đã có khá nhiều website do các sinh viên tạo ra phong phú về nội dung, đa dạng về hình thức
“Con đường quen thuộc nhất cũng có thể có những lối đi mà bạn chưatừng đặt chân đến” - với quan niệm như vậy, trong học kì cuối của mình,
em đã thực tập tại công ty AI (Artificial Intelligence) và mong muốn những
gì đã học tại nhà trường và những kinh nghiệm thực tế từ kì thực tập sẽgiúp em tìm được môt “lối đi” mới trong đề tài của mình
Mục tiêu của đề tài là có thể áp dụng vào thực tế Trang web sẽ cungcấp các thông tin cần thiết cho người sử dụng, thuận tiện cho việc quản lý
mà vẫn đảm bảo quyền riêng tư cá nhân Ban quản lý sẽ có được thông tin
về các sinh viên, phòng ở và các thông tin liên quan một cách hệ thống.Sinh viên và các đối tượng khác có thể tìm được các thông tin hữu ích từweb site
Trang 142.3 Dự kiến
Web site sẽ được thiết kế bằng VB.Net, thiết kế cơ sở dữ liệu bằngSQL, phân tích thiết kế bằng ngôn ngữ mô hình UML, thiết kế giao diệnbằng công cụ Dotnetnuke, photoshop…
Trong khuôn khổ thời gian và kinh phí nhất định, web site chỉ dừnglại ở ứng dụng Desktop
Trong thời gian tới, web site có thể được đăng kí tên miền, phát triểnweb site chạy trên mạng máy tính và tất cả người dùng đều có thể truy cậpvào web site mọi nơi, mọi lúc
Đề tài được lựa chọn là Xây dựng web site quản lý sinh viên kí túc
xá trường ĐH Kinh Tế Quốc Dân Và phục vụ cho đề tài đó, trong thời
gian thực tập của mình, em đã tìm hiểu về nơi thực tập (công ty TNHH TríTuệ Nhân Tạo), tìm hiểu các qui trình thiết kế web site, các kĩ thuật và
công cụ hỗ trợ đặc biệt là ngôn ngữ thiết kế mô hình UML Em hi vọng
công cụ này sẽ phát huy được sức mạnh của nó trong quá trình thiết kế web
1972, Tomlinson phát mình ra chương trình thư tín điện tử E-mail và ứngrụng này nhanh chóng được áp dụng rộng rãi Arpanet nhanh chóng pháttriển và được tách thành hai mạng riêng vào năm 1983 là Milnet vàArpanet
Trang 15Tuy nhiên, thời gian sau đó, kế hoạch sử dụng mạng Arpanet khôngthu được kết quả như mong muốn do một số lí do về kĩ thuật và chính trị Hội đồng khoa học Mĩ đã quyết định xây dựng một mạng riêngNFSFNET liên kết các trung tâm tính toán lớn và các trường Đại học năm
1986 Mạng này đã phát triển rất nhanh và thuật ngữ Internet ra đời từ đây.Lợi ích của hệ thống trên mạng ngày càng được nhiều người biết đến,tận dụng và khai thác, người ta có thể dễ dàng trao đổi thông tin giữa cácvùng với khoảng cách ngày càng xa Những năm 1990, người ta bắt đầu
mở rộng hệ thống mạng sang lĩnh vực thương mại
Ngày nay, Internet đã trở thành một phần tất yếu của cuộc sống hiệnđại, nó trở nên phổ biến giống như điện thoại hay ti vi Internet là mộtphương tiện thông tin hoàn hảo, giúp việc thông tin liên lạc trở nên thuậntiện hơn bao giờ hết
1.1 Cách thức truyền thông trên Internet
Mạng cục bộ (LAN) ra đời trong những năm 60 là công nghệ dựa trêncác phần cứng riêng biệt, nối các máy tính với nhau trong phạm vi hẹpTiếp đó là mạng lớn hơn - mạng diện rộng WAN, nối nhiều máy tínhvới nhau trong phạm vi rộng thông qua hệ thống dây truyền dẫn
Hai mạng này bị hạn chế chỉ trong từng mạng riêng rẽ, hơn nữa hầuhết các LAN, WAN không tương thích với nhau Internet được thiết kế đểliên kết các mạng với nhau và cho phép thông tin được lưu thông một cách
tự do giữa những người sử dụng Để làm được điều đó, cần có các bộ địnhtuyến nối các LAN và WAN Các máy tính được nối với nhau như vậy phải
có chung một giao thức (một tập hợp các luật dùng chung quy định về cáchthức truyền tin) Các chuẩn giao thức được sử dụng hiện nay là giao thứcTCP/IP, SNA, X.25 Giao thức TCP/IP cho phép dữ liệu dưới dạng các góinhỏ Giao thức này đảm bảo việc thông suốt thông tin giữa các máy tính.Một mạng máy tính gồm một máy trung tâm và nhiều máy trạm.Internet được coi là mạng của các mạng
Trang 161.2 Các dịch vụ Internet
Thư điện tử : trao đổi thông tin giữa các cá nhân, tổ chức với nhau
Word wide web
Web là một dịch vụ của Internet chứa thông tin bao gồm văn bản, hình ảnh,
âm thanh thậm chí cả video
Dịch vụ truyền file FTP
Dùng để trao đổi các tệp tin từ máy chủ đến các máy cá nhân và ngược lại
Gropher : Dịch vụ này hoạt động như thư viện menu
Telnet: Dịch vụ này cho phép truy cập đến Server được xác định rõràng
3 Giới thiệu về SQL Server 2000
SQL Server 2000 là một hệ thống quản lý cơ sở dữ liệu (Relational
Database Management System (RDBMS) ) sử dụng Transact-SQL để trao
đổi dữ liệu giữa Client computer và SQL Server computer Một RDBMSbao gồm databases, database engine và các ứng dụng dùng để quản lý dữliệu và các bộ phận khác nhau trong RDBMS
SQL Server 2000 được tối ưu để có thể chạy trên môi trường cơ sở dữliệu rất lớn lên đến Tera-Byte và có thể phục vụ cùng lúc cho hàng ngànuser SQL Server 2000 có thể kết hợp "ăn ý" với các server khác nhưMicrosoft Internet Information Server (IIS), E-Commerce Server, ProxyServer
SQL Server có 7 editions:
Enterprise : Chứa đầy đủ các đặc trưng của SQL Server và có
thể chạy tốt trên hệ thống lên đến 32 CPUs và 64 GB RAM
Trang 17Thêm vào đó nó có các dịch vụ giúp cho việc phân tích dữ liệurất hiệu quả (Analysis Services)
thành rẻ hơn nhiều so với Enterprise Edition, nhưng lại bị giớihạn một số chức năng cao cấp (advanced features) khác,edition này có thể chạy tốt trên hệ thống lên đến 4 CPU và 2
GB RAM
Personal: được tối ưu hóa để chạy trên PC nên có thể cài đặt
trên hầu hết các phiên bản windows kể cả Windows 98
Developer : Có đầy đủ các tính năng của Enterprise Edition
nhưng được chế tạo đặc biệt như giới hạn số lượng người kếtnối vào Server cùng một lúc Edition này có thể cài trênWindows 2000 Professional hay Win NT Workstation
desktop và không có user interface (giao diện) Thích hợp choviệc triển khai ứng dụng ở máy client Kích thước database bịgiới hạn khoảng 2 GB
Trial: Có các tính năng của Enterprise Edition, download free,
nhưng giới hạn thời gian sử dụng
2.1 Giới Thiệu Về Transact SQL (T-SQL)
Transact-SQL là ngôn ngữ SQL mở rộng dựa trên SQL chuẩn của ISO(International Organization for Standardization) và ANSI (AmericanNational Standards Institute) được sử dụng trong SQL Server khác với P-SQL (Procedural-SQL) dùng trong Oracle
T-SQL được chia làm 3 nhóm:
Data Definition Language (DDL):
Trang 18Ðây là những lệnh dùng để quản lý các thuộc tính của một database nhưđịnh nghĩa các hàng hoặc cột của một table, hay vị trí data file của mộtdatabase thường có dạng
CREATE TABLE Importers(
CompanyID int NOT NULL,
CompanyName varchar(40) NOT NULL,
Contact varchar(40) NOT NULL
)
Lệnh Alter cho phép ta thay đổi định nghĩa của một table như thêm(haybớt) một cột hay một Constraint
USE Northwind
ALTER TABLE Importers
ADD ContactTitle varchar(20) NULL
Trang 19Lệnh Drop hoàn toàn xóa table khỏi database nghĩa là cả định nghĩa của
table và data bên trong table đều biến mất
USE Northwind
DROP TABLE Importers
Data Control Language (DCL):
Ðây là những lệnh quản lý các quyền truy cập lên từng object (table, view,stored procedure ) Thường có dạng sau:
Grant
Revoke
Deny
Ví dụ:
Lệnh sau sẽ cho phép user trong Public Role được quyền Select đối với
table Customer trong database Northwind (Role là một khái niệm giống
như Windows Group )
Trang 20Lệnh sau sẽ xóa bỏ tác dụng của các quyền được cho phép hay từ chốitrước đó
USE Northwind
REVOKE SELECT
ON Customers
TO PUBLIC
Data Manipulation Language (DML):
Ðây là những lệnh phổ biến dùng để xử lý data như Select, Update, Insert,Delete
Trang 22Ðây chính là tên của các database object Nó dùng để xác định một object (table, view, stored procedure, index ) Trong ví dụ sau TableX, KeyCol,Description là những identifiers
CREATE TABLE TableX
(KeyCol INT PRIMARY KEY, Description NVARCHAR(80))
Có hai loại Identifiers một loại thông thường (Regular Identifier) và một loại gọi là Delimited Identifier, loại này cần có dấu "" hay dấu [] để ngăn
cách Loại Delimited được dùng đối với các chữ trùng với từ khóa của SQLServer (reserved keyword) hay các chữ có khoảng trống
Ví dụ:
USE Northwind
DECLARE @EmpIDVar INT
SET @EmpIDVar = 3
SELECT * FROM Employees
WHERE EmployeeID = @EmpIDVar + 1
Functions (Hàm)
Trang 23Có 2 loại hàm một loại là built-in và một loại user-defined
Các hàm Built-In được chia làm 3 nhóm:
được đối xử như một table Ví dụ như hàm OPENQUERY sẽtrả về một recordset và có thể đứng vị trí của một table trongcâu lệnh Select
Aggregate Functions : Loại này làm việc trên một số giá trị
và trả về một giá trị đơn hay là các giá trị tổng
Scalar Functions : Loại này làm việc trên một giá trị đơn và
trả về một giá trị đơn Trong loại này lại chia làm nhiều loạinhỏ như các hàm về toán học, về thời gian, xử lý kiểu dữ liệuString Ví dụ như hàm MONTH('2002-09-30') sẽ trả về tháng
9
Các hàm User-Defined (được tạo ra bởi câu lệnh CREATE
FUNCTION và phần body thường được gói trong cặp lệnh BEGIN END)cũng được chia làm các nhóm như sau:
Scalar Functions : Loại này cũng trả về một giá trị đơn bằng
Trang 24Comments (Chú Thích)
T-SQL dùng dấu để đánh dấu phần chú thích cho câu lệnh đơn và dùng /
* */ để chú thích cho một nhóm
2.1.3 Thực Thi Các Câu Lệnh SQL
Thực thi một câu lệnh đơn:
Một câu lệnh SQL được phân ra thành các thành phần cú pháp nhưtrên bởi một parser, sau đó SQL Optimizer (một bộ phận quan trọng củaSQL Server) sẽ phân tích và tìm cách thực thi (Execute Plan) tối ưu nhất ví
dụ như cách nào nhanh và tốn ít tài nguyên của máy nhất và sau đó SQLServer Engine sẽ thực thi và trả về kết quả
Thực Thi một nhóm lệnh (Batches)
Khi thực thi một nhóm lệnh SQL Server sẽ phân tích và tìm biện pháptối ưu cho các câu lệnh như một câu lệnh đơn và chứa execution plan đãđược biên dịch (compiled) trong bộ nhớ sau đó nếu nhóm lệnh trên đượcgọi lại lần nữa thì SQL Server không cần biên dịch mà có thể thực thi ngayđiều này giúp cho một batch chạy nhanh hơn
2.1.4 Cấu Trúc Vật Lý Của Một SQL Server Database
Mỗi một database trong SQL Server đều chứa ít nhất một data filechính (primary), có thể có thêm một hay nhiều data file phụ (Secondary) vàmột transaction log file
Primary data file (thường có phần mở rộng mdf) : đây là file
chính chứa data và những system tables
Trang 25 Secondary data file (thường có phần mở rộng ndf) : đây là
file phụ thường chỉ sử dụng khi database được phân chia đểchứa trên nhiều dĩa
Transaction log file (thường có phần mở rộng ldf) : đây là
file ghi lại tất cả những thay đổi diễn ra trong một database vàchứa đầy đủ thông tin để có thể roll back hay roll forward khicần
Data trong SQL Server được chứa thành từng Page 8KB và 8 page liên tục tạo thành một Extent như hình vẽ dưới đây:
Trước khi SQL Server muốn lưu data vào một table nó cần phải dànhriêng một khoảng trống trong data file cho table đó Những khoảng trống
đó chính là các extents Có 2 loại Extents: Mixed Extents (loại hỗn hợp)
Trang 26dùng để chứa data của nhiều tables trong cùng một Extent và Uniform
Extent (loại thuần nhất) dùng để chứa data của một table Ðầu tiên SQL
Server dành các Page trong Mixed Extent để chứa data cho một table sau
đó khi data tăng trưởng thì SQL dành hẳn một Uniform Extent cho tableđó
2.1.5 Cấu Trúc Logic Của Một SQL Server Database
Một số Sytem objects thường dùng:
System Stored Procedure Ứng dụng
Sp_help ['object'] Cung cấp thông tin về một database object
(table, view ) hay một data type
Sp_helpdb ['database'] Cung cấp thông tin về một database cụ thể nào
sp_helpdb 'Northwind' sẽ cho kết quả có dạng như bảng dưới đây
name db_size owner dbid created status . - -Northwind 3.94 MB sa 6 Aug 6 2000 Status=ONLINE,Updateability=READ_WRITE,
stored procedure sp_spaceused như ví dụ sau
USE Northwind
Trang 27sp_spaceused 'Customers'
sẽ cho biết thông tin về table Customer:
name rows reserved data index_size unused - -Customers 91 104 KB 24 KB 80 KB 0 KB
Tạo Một User Database
Có thể tạo một database bằng cách right-click lên trên "database" và chọn
"New Database":
Sau đó đánh tên của database và click OK
Trang 28Ngoài ra dùng SQL script để tạo một database Khi đó phải chỉ rõ vị trí củaprimary data file và transaction log file.
Khi thiết kế table nên:
Có ít nhất một cột thuộc loại ID dùng để xác định một record
dễ dàng
Chỉ chứa data của một entity (một thực thể)
Trong ví dụ sau thông tin về Sách và Nhà Xuất Bản được chứatrong cùng một table
Trang 29BookID Title Publisher PubState PubCity PubCountry
1
Inside SQLServer2000
MicrosoftPress CA Berkely USA
2
Windows2000Server
NewRiders MA Boston USA
3
BeginningVisualBasic 6.0
Wrox CA Berkely USA
Ta nên tách ra thành table Books và table Publisher như sau:
PublisherID Publisher PubState PubCity PubCountry
P1 Microsoft Press CA Berkely USA
P2 New Riders MA Boston USA
Tránh dùng cột có chứa NULL và nên luôn có giá trị Default
cho các cột
Tránh lập lại một giá trị hay cột nào đó
Trang 30Ví dụ một cuốn sách có thể được viết bởi hơn một tác giả và nhưthế ta có thể dùng một trong 2 cách sau để chứa data:
Books
1 Inside SQL Server 2000 John Brown
2 Windows 2000 Server Matthew Bortniker, Rick
RickJohnson Null3
BeginningVisual Basic6.0
PeterWright
JamesMoon
JohnBrown
Tuy nhiên việc lập đi lập lại cột Author sẽ tạo nhiều vấn đề sau này.Chẳng hạn như nếu cuốn sách có nhiều hơn 3 tác giả thì chúng ta sẽ gặpphiền phức ngay Trong ví dụ này ta nên chặt ra thành 3 table như sau:
Books
BookID Title
1 Inside SQL Server 2000
Trang 31Ngoài ra một trong những điều quan trọng là phải biết rõ quan hệ
(Relationship) giữa các table:
hàng bên table A không thể liên kết với hơn 1 hàng bên table
B và ngược lại
hàng bên table A có thể liên kết với nhiều hàng bên table B
một hàng bên table A có thể liên kết với nhiều hàng bên table
Trang 32B và một hàng bên table B cũng có thể liên kết với nhiều hàngbên table A
4 Asp.Net
ASP.NET là Active Server Pages .NET (.NET ở đây là .NETframework) ASP.NET là một công nghệ có tính cách mạng dùng đểphát triển các ứng dụng về mạng hiện nay cũng như trong tương laiASP.NET là một phương pháp tổ chức hay khung tổ chức (framework)
để thiết lập các ứng dụng hết sức hùng mạnh cho mạng dựa trên CLR(Common Language Runtime) chứ không phải là một ngôn ngữ lậptrình Ngôn ngữ lập trình được dùng để diển đạt ASP.NET trong đề tàinày là VB.NET (Visual Basic NET) và VB.NET chỉ là một trong 25ngôn ngữ NET hiện nay được dùng để phát triển các trang ASP.NET
mà thôi
ASP.NET không phải là ASP
3.1 Khác biệt giữa ASP.NET và ASP
ASP.NET được phác thảo lại từ số không, nó được thay đổi vàphát triển phù hợp với yêu cầu hiện nay cũng như vạch một hướng đivững chắc cho tương lai Tin Học ASP.NET cung cấp một phươngpháp hoàn toàn khác biệt với phương pháp của ASP.Mặc dù ASP.NET và ASP khác biệt nhau nhưng chúng có thể hoạtđộng với nhau trong Web Server
Sự thay đổi cơ bản
ASP không còn đáp ứng đủ nhu cầu hiện nay trong lãnh vực pháttriển mạng của công nghệ Tin Học ASP được thiết kế riêng biệt và
Trang 33nằm ở tầng phiá trên hệ điều hành Windows và Internet InformationServer, do đó các công dụng của nó hết sức rời rạt và giới hạn.
Trong khi đó, ASP.NET là một cơ cấu trong các cơ cấu của hệđiều hành Windows dưới dạng nền hay khung .NET (.NETframework), như vậy ASP.NET không những có thể dùng các objectcủa các ứng dụng cũ mà còn có thể sử dụng tất cả mọi tài nguyên màWindows có Ta có thể tóm tắc đại khái sự thay đổi như sau:
Tập tin của ASP.NET (ASP.NET file) có extension là ASPX,còn tập tin của ASP là ASP
Tập tin của ASP.NET (ASP.NET file) được phân tích ngữ pháp(parsed) bởi XSPISAPI.DLL, còn tập tin của ASP được phântích bởi ASP.DLL
ASP.NET là kiểu mẫu lập trình phát động bằng sự kiện (eventdriven), còn các trang ASP được thi hành theo thứ tự tuần tự từtrên xuống dưới
ASP.NET xử dụng trình biên dịch (compiled code) nên rấtnhanh, còn ASP dùng trình thông dịch (interpreted code) do đóhiệu suất và tốc độ phát triển cũng thua sút hẳn
ASP.NET yểm trợ gần 25 ngôn ngữ lập trình mới với NET vàchạy trong môi trường biên dịch (compiled environment), cònASP chỉ chấp nhận VBScript và JavaScript nên ASP chỉ là mộtscripted language trong môi trường thông dịch(in the interpreterenvironment) Không những vậy, ASP.NET còn kết hợp nhuầnnhuyễn với XML (Extensible Markup Language) để chuyển vậncác thông tin (information) qua mạng
ASP.NET yểm trợ tất cả các browser và quan trọng hơn nữa làyểm trợ các thiết bị lưu động (mobile devices)
Trang 343.2 Kiểu mẫu RESQUEST/RESPONSE
Kiểu mẫu này chính là toàn bộ phương pháp làm việc theo kiểuClient /Server hiện dùng với ASP
Client/Server - Một trường hợp đơn giản nhất là sự trao đổi
thông tin giữa 2 máy vi tính để hoàn thành 1 công việc nào đó, trong
đó máy server cung cấp dịch vụ theo yêu cầu của 1 máy khách hành(Client PC)
Thường thường, Server là máy vi tính lưu trữ thông tin về mạngtrong đó có hình ảnh, video, những trang HTML hay ASP và Client làmáy vi tính được dùng dể viếng thăm mạng Một cách tổng quátphương pháp này gồm có 4 bước như sau:
1 Client (thông qua Internet Browser) xác định vị trí của WebServer qua 1 nối URL (Universal Resource Locator) ví dụ như
www.aspvn.net
2 Client sẽ yêu cầu được tham khảo 1 trang trong mạng đó vàthường thường là trang chủ (home page) tỷ như index.htm haydefault.htm
3 Server đáp ứng bằng cách hoàn trả hồ sơ mà Client đã yêu cầutrước đây
4 Client nhận được hồ sơ gởi về và hiển thị (display) trongbrowser của mình
3.3 Kiểu mẫu EVENT-DRIVEN
Kiểu mẫu event-driven này dùng với ASP.NET cũng tương tợ như
là kiểu mẫu event-driven mà ta vẫn thường dùng trong khi lập trìnhcác ứng dụng với Visual Basic 6
Trang 35ASP.NET sẽ dùng các ngôn ngữ mới có trình biên dịch (compiledlanguages) như C# hay VB.NET để soạn các nguồn mã trong các trangWeb ở Server.
5 Sơ lược về NetFramework CLR
(Common Language Runtime)
CLR là môi trường được dùng để quản lý sự thi hành các nguồn
mã mà ta đã soạn ra và biên dịch trong các ứng dụng Tuy nhiên khibiên dịch nguồn mã, ta lại biên dịch chúng ra thành một ngôn ngữ
trung gian gọi là Microsoft Intermediate Language (MSIL) MSIL
trung gian này là ngôn ngữ chung cho tất cả các ngôn ngữ NET hiện
có, do đó chắc bạn cũng đoán ra là ASP.NET cũng được biên dịch(compile) ra MSIL Trong khi biên dịch như vậy, các ứng dụng cũngsản xuất ra những thông tin cần thiết để tự quảng cáo chính mình,
những thông tin này gọi là metadata Ðến khi ta chạy một ứng dụng,
CLR sẽ tiếp quản (take-over) và lại biên dịch (compile) nguồn mã mộtlần nữa ra thành ngôn ngữ gốc (native language) của máy vi tính trướckhi thi hành những công tác đã được bố trí trong nguồn mã đó
.NET FRAMEWORK CLASSES
Ðiều quan trọng nhất mà ta cần phải nhớ là mọi thứ trong NET
đều là object, Các object được tổ chức lại thành từng nhóm riêng
biệt như trong một thư viện để ta dễ dàng xữ dụng Ta gọi các nhóm
như vậy là namespaces
Ví dụ về tạo trang Asp.Net
Trong ASP cổ điển Ta sẽ tạo trang ASP.NET đầu tiên bằng 2phương pháp như sau:
Dùng MS Visual Studio.NET để tạo trang ASP.NET đầu tiên
Dùng Notepad để tạo trang ASP.NET đầu tiên
VD Dùng MS Visual Studio.NET để tạo trang ASP.NET