Thiết kế website tại công ty TNHH trí tuệ nhân tạo
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
.4
Các lĩnh vực hoạt động chính 4
1.1 Các sản phẩm dịch vụ 4
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 13
2.3 Dự kiến 14
II CƠ SỞ PHƯƠNG PHÁP LUẬN CỦA VIỆC THIẾT KẾ WEBSITE 14
2 Tổng quan về internet 14
1.1 Cách thức truyền thông trên Internet 15
1.2 Các dịch vụ Internet 16
3 Giới thiệu về SQL Server 2000 16
2.1 Giới Thiệu Về Transact SQL (T-SQL) 17
2.1.1 Cú Pháp Của T-SQL: 21
2.1.2 Các thành phần Control-Of Flow 23
2.1.3 Thực Thi Các Câu Lệnh SQL 24
2.1.4 Cấu Trúc Vật Lý Của Một SQL Server Database 24
2.1.5 Cấu Trúc Logic Của Một SQL Server Database 26
4 Asp.Net 32
3.1 Khác biệt giữa ASP.NET và ASP 32
3.2 Kiểu mẫu RESQUEST/RESPONSE 34
3.3 Kiểu mẫu EVENT-DRIVEN 34
5 Sơ lược về NetFramework CLR 35
(Common Language Runtime) 35
III XÂY DỰNG WEBSITE “SINH VIÊN NỘI TRÚ ĐẠI HỌC KINH TẾ QUỐC DÂN” 40
1 Chức năng chính 40
1.1 Cung cấp thông tin 41
Trang 21.2 Quản lí danh sách sinh viên 41
1.3 Đăng kí ra vào kí túc xá, chuyển phòng ở cho sinh viên 41
1.4 Quản lí khách ra vào kí túc xá 42
1.5 Tạo diễn đàn cho sinh viên 42
1.6 Quản lí người dùng (phân quyền người sử dụng) 42
2 Sơ đồ website: 43
2.1 Sinh viên và các đối tượng khác truy cập đến website: 43
2.2 Ban quản lí kí túc xá 44
2.3Cập nhật thông tin 44
2.4Quản lí sinh viên 44
3 Các chức năng chính: 46
3.1Đăng kí (Register) 48
3.2Đăng nhập 50
3.3Thêm/ Sửa/ Xóa thông tin 52
3.4 Tìm kiếm thông tin 53
3.5Quản lí quyền 54
3.6Quản lí người dùng 55
6 Một số giao diện chính của website 60
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ương pháp quản lý hiện đại nhằm nâng cao hiệu quả hoạt động sản xuất và kinh doanh
• 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 khi chuyển giao để đảm bảo chất lượng hoàn hảo nhất, thoả mãn yêu cầu của khá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ực hiện việc đào tạo cho sinh viên, hỗ trợ cho sinh viên tự học, cung cấp cho cá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 11o 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ế web site “Vì người nghèo”, em đã tìm hiểu qui trình thiết kế web site và các cô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ế web site 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ệc quả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ác khoa, khóa khác nhau gặp không ít những khó khăn Kí túc xá đã xây thêm tò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ải quản lý các phòng ở, sắp xếp các sinh viên cùng khoa, khóa trong một phòng, mỗi phòng gồm 10 người Trong một một học kì có thể có rất nhiều lượ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ếp lạ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 đồng hươ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ính xá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ết nố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ác hoạt động, cũng như danh tiếng, uy tín của trường, cuộc sống của các sinh viê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ực tập của các sinh viên công nghệ thông tin Kết quả là, đã có khá nhiều web site 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ưa từ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ẽ cung cấ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ằng SQL, phân tích thiết kế bằng ngôn ngữ mô hình UML, thiết kế giao diện bằng công cụ Dotnetnuke, photoshop…
Trong khuôn khổ thời gian và kinh phí nhất định, web site chỉ dừng lạ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ển web site chạy trên mạng máy tính và tất cả người dùng đều có thể truy cập và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à ứng rụng này nhanh chóng được áp dụng rộng rãi Arpanet nhanh chóng phát triể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ông thu đượ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êng NFSFNET 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ác vù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ột phươ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ận tiệ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ên cá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ẹp
Tiếp đó là mạng lớn hơn - mạng diện rộng WAN, nối nhiều máy tính vớ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ầu hế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ộ định tuyế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ách thức truyền tin) Các chuẩn giao thức được sử dụng hiện nay là giao thức TCP/IP, SNA, X.25 Giao thức TCP/IP cho phép dữ liệu dưới dạng các gói nhỏ 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 RDBMS bao 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àn user 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, Proxy Server
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ệu rất hiệu quả (Analysis Services)
• Standard : Rất thích hợp cho các công ty vừa và nhỏ vì giá
thành rẻ hơn nhiều so với Enterprise Edition, nhưng lại bị giới hạ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ết nối vào Server cùng một lúc Edition này có thể cài trên Windows 2000 Professional hay Win NT Workstation
• Desktop Engine (MSDE): Ðây chỉ là một engine chạy trên
desktop và không có user interface (giao diện) Thích hợp cho việc triển khai ứng dụng ở máy client Kích thước database bị giới hạn khoảng 2 GB
• Win CE : Dùng cho các ứng dụng chạy trên Windows CE
• 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 (American National 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ột database 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(hay bớ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ối trướ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 SQL Server (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:
• Rowset Functions : Loại này thường trả về một object và
đượ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 trong câ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ại nhỏ như các hàm về toán học, về thời gian, xử lý kiểu dữ liệu String 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ủa SQL 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 đó SQL Server 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áp tố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 được gọ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 file chí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 khi cầ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ành riê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ủa primary 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ứa trong cùng một table
Trang 29BookID Title Publisher PubState PubCity PubCountry
1
Inside SQL Server 2000
Microsoft Press CA Berkely USA
2
Windows
2000 Server
New Riders MA Boston USA
3
Beginning Visual Basic 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
• 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
Rick Johnson Null
3 Beginning
Visual Basic 6.0
Peter Wright
James Moon
John Brown
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ặp phiền phức ngay Trong ví dụ này ta nên chặt ra thành 3 table như sau:
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:
• One-to-One Relationships : trong mối quan hệ này thì một
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
• One-to-Many Relationships : trong mối quan hệ này thì một
hàng bên table A có thể liên kết với nhiều hàng bên table B
• Many-to-Many Relationships : trong mối quan hệ này thì
một hàng bên table A có thể liên kết với nhiều hàng bên table
B và một hàng bên table B cũng có thể liên kết với nhiều hàng bên table A
Trang 324 Asp.Net
ASP.NET là Active Server Pages .NET (.NET ở đây là .NET framework) 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 lai ASP.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ập trình Ngôn ngữ lập trình được dùng để diển đạt ASP.NET trong đề tài này là VB.NET (Visual Basic NET) và VB.NET chỉ là một trong 25 ngô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
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 đi vững chắc cho tương lai Tin Học ASP.NET cung cấp một phương phá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át triển mạng của công nghệ Tin Học ASP được thiết kế riêng biệt và nằm ở tầng phiá trên hệ điều hành Windows và Internet Information Server, do đó các công dụng của nó hết sức rời rạt và giới hạn
Trang 33Trong 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 (.NET framework), như vậy ASP.NET không những có thể dùng các object củ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ân tích bởi ASP.DLL
• ASP.NET là kiểu mẫu lập trình phát động bằng sự kiện (event driven), 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ất nhanh, 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òn ASP chỉ chấp nhận VBScript và JavaScript nên ASP chỉ là một scripted language trong môi trường thông dịch(in the interpreter environment) Không những vậy, ASP.NET còn kết hợp nhuần nhuyễn với XML (Extensible Markup Language) để chuyển vận cá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ểu Client /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ạng trong đó 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át phươ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 Web Server 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 hay default.htm
3 Server đáp ứng bằng cách hoàn trả hồ sơ mà Client đã yêu cầu trước đây
4 Client nhận được hồ sơ gởi về và hiển thị (display) trong browser 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ình cá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 (compiled languages) như C# hay VB.NET để soạn các nguồn mã trong các trang Web ở 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 khi biê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ũng sả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ột lần nữa ra thành ngôn ngữ gốc (native language) của máy vi tính trước khi 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 2 phươ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
Trang 36Mục đích:Hiển thị hàng chữ "Welcome to Khóa Tự Học ASP.NET" trong trang ASP.NET đầu tiên
Các bước thứ tự như sau:
1 Chạy MS Visual Studio.NET và chọn dự án mới (New Project) như sau:
Project
Types: Visual Basic Projects
Templates: ASP.NET Web Application
Name: vs-welcome
Location: http://cantho/VovisoftASPNET/baihoc/Bai01/