1. 简介
本文将介绍如何基于ASP和MSSQL实现一个简单的管理系统。该系统的目的是为了帮助用户使用MSSQL Server来管理他们的数据。
2. 系统需求
2.1 硬件需求
以下是该系统的硬件需求:
1GHz或更快的处理器
1GB或更多的RAM
10GB或更多的硬盘空间
2.2 软件需求
以下是该系统的软件需求:
操作系统:Windows Server 2008或更高版本
Web服务器:IIS 7或更高版本
数据库服务器:MSSQL Server 2008或更高版本
3. 数据库设计
在开始编写系统之前,必须先设计数据库。以下是数据库设计:
3.1 用户表
存储系统用户的详细信息。
CREATE TABLE Users
(
UserID INT PRIMARY KEY,
Username VARCHAR(50) NOT NULL,
Password VARCHAR(50) NOT NULL,
Email VARCHAR(50) NOT NULL
)
User ID是该表的主键,它用来唯一标识每个用户。每个用户都有一个用户名,密码和电子邮件地址。
3.2 产品表
存储产品的详细信息。
CREATE TABLE Products
(
ProductID INT PRIMARY KEY,
ProductName VARCHAR(50) NOT NULL,
ProductDescription VARCHAR(200) NOT NULL,
Price DECIMAL(10,2) NOT NULL
)
Product ID 是该表的主键,它用来唯一标识每个产品。每个产品都有名称,描述和价格。
4. ASP代码
以下是该系统的ASP代码。我们将创建两个页面:一个用于登录,一个用于管理产品。
4.1 登录页面
以下是登录页面的代码:
<html>
<head>
<title>Login</title>
</head>
<body>
<form action="login.asp" method="post">
<label>Username:</label>
<input type="text" name="username">
<br/><br/>
<label>Password:</label>
<input type="password" name="password">
<br/><br/>
<input type="submit" value="Login">
</form>
</body>
</html>
该页面将提交登录表单到login.asp,以下是login.asp的代码:
<%
Dim conn, rs
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open "Provider=SQLOLEDB; Data Source=Server_Name; Initial Catalog=Database_Name; User Id=Username; Password=Password;"
Dim username, password
username = Request.Form("username")
password = Request.Form("password")
Set rs = conn.Execute("SELECT * FROM tbl_user WHERE username='" & username & "' AND password='" & password & "'")
If Not rs.EOF Then
Session("userid") = rs("userID")
Response.Redirect "product.asp"
Else
Response.Write "Invalid login."
End If
rs.Close: Set rs = Nothing
conn.Close: Set conn = Nothing
%>
在login.asp中,我们打开与数据库的连接,并从FORM请求中获取用户名和密码,然后将它们与用户表中的数据进行比较。如果登录成功,则将用户ID保存在Session变量中,并重定向到product.asp。如果登录失败,则会显示一条错误消息。
4.2 产品管理页面
以下是产品管理页面的代码:
<html>
<head>
<title>Product Management</title>
</head>
<body>
<a href="logout.asp">Logout</a>
<h2>Product Management</h2>
<p><a href="add_product.asp">Add Product</a></p>
<table>
<tr>
<th>Product ID</th>
<th>Product Name</th>
<th>Product Description</th>
<th>Price</th>
<th>Edit</th>
<th>Delete</th>
</tr>
<%
Dim conn, rs
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open "Provider=SQLOLEDB; Data Source=Server_Name; Initial Catalog=Database_Name; User Id=Username; Password=Password;"
Dim sql, productID, productName, productDescription, price
sql = "SELECT * FROM tbl_product"
Set rs = conn.Execute(sql)
Do While Not rs.EOF
productID = rs("productID")
productName = rs("productName")
productDescription = rs("productDescription")
price = rs("price")
%>
<tr>
<td><%=productID%></td>
<td><%=productName%></td>
<td><%=productDescription%></td>
<td><%=price%></td>
<td><a href="edit_product.asp?productID=<%=productID%>">Edit</a></td>
<td><a href="delete_product.asp?productID=<%=productID%>">Delete</a></td>
</tr>
<%
rs.MoveNext
Loop
rs.Close: Set rs = Nothing
conn.Close: Set conn = Nothing
%>
</table>
</body>
</html>
在该页面中,我们显示了产品列表和编辑和删除每个产品的链接。我们使用了与login.asp相同的连接字符串。以下是add_product.asp的代码:
<%
Dim conn, rs
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open "Provider=SQLOLEDB; Data Source=Server_Name; Initial Catalog=Database_Name; User Id=Username; Password=Password;"
If Request.Form("submit") = "Submit" Then
Dim productName, productDescription, price
productName = Request.Form("productName")
productDescription = Request.Form("productDescription")
price = Request.Form("price")
Dim sql
sql = "INSERT INTO tbl_product (productName, productDescription, price) VALUES ('" & productName & "', '" & productDescription & "', " & price & ")"
conn.Execute(sql)
Response.Redirect "product.asp"
End If
%>
<html>
<head>
<title>Add Product</title>
</head>
<body>
<h2>Add Product</h2>
<form action="add_product.asp" method="post">
<label>Product Name:</label>
<input type="text" name="productName"><br/><br/>
<label>Product Description:</label>
<textarea name="productDescription"></textarea><br/><br/>
<label>Price:</label>
<input type="text" name="price"><br/><br/>
<input type="submit" name="submit" value="Submit">
</form>
</body>
</html>
在add_product.asp中,我们获取表单上的产品详细信息并将其插入到产品表中。以上为编辑和删除产品的代码稍微不同,所以我们不放在这里。
总结
我们已经看到了如何使用ASP和MSSQL实现一个简单的管理系统。该系统展示了如何登录和管理产品,但是还可以通过添加额外的功能来使其更加完善。