使用JScript构造ASP_NET《ACCESS》操作程序
2008-05-09 15:38
567 查看
DbHelper.js:
以下为程序代码:
[align=left]import System;
import System.Web;
import System.Data;
import System.Data.OleDb;
import System.Configuration;
package Biyuan {
class JSDbHelper {
static var dataCount : int = null;
private static var connStr : String = ConfigurationSettings.AppSettings["connStr"] + System.Web.HttpContext.Current.Server.MapPath(ConfigurationSettings.AppSettings["mdbPath"]);
//创建SQL命令对象
private static function newCommand(sql : String) : OleDbCommand {
return new OleDbCommand(sql, new OleDbConnection(connStr));
}
//返回单个查询
static function getDataCount(sql : String) : int {
var command = newCommand(sql);
command.Connection.Open();
try {
return command.ExecuteScalar();
}
finally {
command.Connection.Close();
}
}
//返回数据列表
static function getData(sql : String, pageSend : Object) : Object {
var pageCode : int = pageSend.pageCode;
var pageSize : int = pageSend.pageSize;
var ds : DataSet = new DataSet();
var DataAdapter : OleDbDataAdapter = new OleDbDataAdapter(newCommand(sql));
DataAdapter.Fill(ds, (pageCode - 1) * pageSize, pageSize, "data");
return ds.Tables[0].Rows;
}
//返回分页数据信息
static function getPageSend(sql : String, pageSize : int, pageCode) : Object {
if(!dataCount){
dataCount = getDataCount(sql);
}
var pageCount : int = Math.ceil(dataCount / pageSize);
pageCode = pageCode * 1 || 1;
pageCode = pageCode > pageCount ? pageCount : pageCode;
return {"dataCount" : dataCount, "pageCount" : pageCount, "pageSize" : pageSize, "pageCode" : pageCode};
}
//执行SQL命令
static function ExeSql(sql : String) : System.Int32 {
var command = newCommand(sql);
command.Connection.Open();
try {
return command.ExecuteNonQuery();
}
finally {
command.Connection.Close();
}
}
}
}
[/align]
select.aspx.js:
以下为程序代码:
[align=left]import System;
import System.Configuration;
package Biyuan {
class select_aspx extends System.Web.UI.Page {
function load() {
var pageSend : Object = JSDbHelper.getPageSend("select count(id) from test", Convert.ToInt32(ConfigurationSettings.AppSettings["pageSize"]), Request.QueryString["page"]);
var rs : Object = JSDbHelper.getData("select * from test", pageSend);
return [rs, pageSend];
}
}
}
[/align]
select.aspx:
以下为程序代码:
<%@ Page Language="JScript" Inherits="Biyuan.select_aspx" %>
<%@ Import Namespace="Biyuan" %>
<%var startTime = new Date;%><html>
<head>
<title>数据查询</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<style type="text/css">
body {
margin:0px;
text-align:center;
font-size:12px;
}
td {
font-size:12px;
padding:3px;
}
a:link,a:visited {
color:#3366cc;
text-decoration: none;
}
a:hover {
color:#ff0000;
text-decoration:underline;
}
.td_title {
background:#f3f3f3;
}
.tid {
background:#f9f9f9;
text-align:center;
}
</style>
</head>
<body>
<h2>数据查询</h2>
<table border='1' bordercolor='#cccccc' width='60%'>
<tr align='center'>
<td class='td_title'>ID</td>
<td class='td_title'>标题</td>
<td class='td_title'>作者</td>
<td class='td_title'>时间</td>
</tr><%
//JSDbHelper.dataCount = null;
//Response.Write(JSDbHelper.ExeSql("update [test] set [user]=replace([user],'biyuan','Rimifon')"));
var arr : Array = load();
for(var rs in arr[0]){
%><tr>
<td class='tid'><%=rs["id"]%></td>
<td><a href='view.php?id=<%=rs["id"]%>'><%=rs["title"]%></a></td>
<td align='center'><%=rs["user"]%></td>
<td align='center'><%=rs["time"]%></td>
</tr><%}%><tr align='right'>
<td colspan='7'>[<%=arr[1].dataCount%>][<%=arr[1].pageCode%>/<%=arr[1].pageCount%>] <a href='?page=1'>首页</a> <a href='?page=<%=arr[1].pageCode - 1%>'>上一页</a> <a href='?page=<%=arr[1].pageCode - 0 + 1%>'>下一页</a> <a href='?page=<%=arr[1].pageCount%>'>尾页</a></td>
</tr></table>
耗时:<%= (new Date - startTime)/1000 %> 秒</body>
</html>
web.config:
以下为程序代码:
[align=left]<?xml version="1.0" encoding="gb2312" ?>
<configuration>
<system.web>
<compilation defaultLanguage="JScript" debug="true" />
<globalization requestEncoding="gb2312" responseEncoding="gb2312" />
</system.web>
<appSettings>
<add key="connStr" value="Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" />
<add key="mdbPath" value="temp.mdb" />
<add key="pageSize" value="20" />
</appSettings>
</configuration>
[/align]
编译.bat:
以下为程序代码:
%windir%/Microsoft.Net/Framework/v1.1.4322/jsc /t:library /out:Bin/biyuan.dll dbHelper.js select.aspx.js
pause
以下为程序代码:
[align=left]import System;
import System.Web;
import System.Data;
import System.Data.OleDb;
import System.Configuration;
package Biyuan {
class JSDbHelper {
static var dataCount : int = null;
private static var connStr : String = ConfigurationSettings.AppSettings["connStr"] + System.Web.HttpContext.Current.Server.MapPath(ConfigurationSettings.AppSettings["mdbPath"]);
//创建SQL命令对象
private static function newCommand(sql : String) : OleDbCommand {
return new OleDbCommand(sql, new OleDbConnection(connStr));
}
//返回单个查询
static function getDataCount(sql : String) : int {
var command = newCommand(sql);
command.Connection.Open();
try {
return command.ExecuteScalar();
}
finally {
command.Connection.Close();
}
}
//返回数据列表
static function getData(sql : String, pageSend : Object) : Object {
var pageCode : int = pageSend.pageCode;
var pageSize : int = pageSend.pageSize;
var ds : DataSet = new DataSet();
var DataAdapter : OleDbDataAdapter = new OleDbDataAdapter(newCommand(sql));
DataAdapter.Fill(ds, (pageCode - 1) * pageSize, pageSize, "data");
return ds.Tables[0].Rows;
}
//返回分页数据信息
static function getPageSend(sql : String, pageSize : int, pageCode) : Object {
if(!dataCount){
dataCount = getDataCount(sql);
}
var pageCount : int = Math.ceil(dataCount / pageSize);
pageCode = pageCode * 1 || 1;
pageCode = pageCode > pageCount ? pageCount : pageCode;
return {"dataCount" : dataCount, "pageCount" : pageCount, "pageSize" : pageSize, "pageCode" : pageCode};
}
//执行SQL命令
static function ExeSql(sql : String) : System.Int32 {
var command = newCommand(sql);
command.Connection.Open();
try {
return command.ExecuteNonQuery();
}
finally {
command.Connection.Close();
}
}
}
}
[/align]
select.aspx.js:
以下为程序代码:
[align=left]import System;
import System.Configuration;
package Biyuan {
class select_aspx extends System.Web.UI.Page {
function load() {
var pageSend : Object = JSDbHelper.getPageSend("select count(id) from test", Convert.ToInt32(ConfigurationSettings.AppSettings["pageSize"]), Request.QueryString["page"]);
var rs : Object = JSDbHelper.getData("select * from test", pageSend);
return [rs, pageSend];
}
}
}
[/align]
select.aspx:
以下为程序代码:
<%@ Page Language="JScript" Inherits="Biyuan.select_aspx" %>
<%@ Import Namespace="Biyuan" %>
<%var startTime = new Date;%><html>
<head>
<title>数据查询</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<style type="text/css">
body {
margin:0px;
text-align:center;
font-size:12px;
}
td {
font-size:12px;
padding:3px;
}
a:link,a:visited {
color:#3366cc;
text-decoration: none;
}
a:hover {
color:#ff0000;
text-decoration:underline;
}
.td_title {
background:#f3f3f3;
}
.tid {
background:#f9f9f9;
text-align:center;
}
</style>
</head>
<body>
<h2>数据查询</h2>
<table border='1' bordercolor='#cccccc' width='60%'>
<tr align='center'>
<td class='td_title'>ID</td>
<td class='td_title'>标题</td>
<td class='td_title'>作者</td>
<td class='td_title'>时间</td>
</tr><%
//JSDbHelper.dataCount = null;
//Response.Write(JSDbHelper.ExeSql("update [test] set [user]=replace([user],'biyuan','Rimifon')"));
var arr : Array = load();
for(var rs in arr[0]){
%><tr>
<td class='tid'><%=rs["id"]%></td>
<td><a href='view.php?id=<%=rs["id"]%>'><%=rs["title"]%></a></td>
<td align='center'><%=rs["user"]%></td>
<td align='center'><%=rs["time"]%></td>
</tr><%}%><tr align='right'>
<td colspan='7'>[<%=arr[1].dataCount%>][<%=arr[1].pageCode%>/<%=arr[1].pageCount%>] <a href='?page=1'>首页</a> <a href='?page=<%=arr[1].pageCode - 1%>'>上一页</a> <a href='?page=<%=arr[1].pageCode - 0 + 1%>'>下一页</a> <a href='?page=<%=arr[1].pageCount%>'>尾页</a></td>
</tr></table>
耗时:<%= (new Date - startTime)/1000 %> 秒</body>
</html>
web.config:
以下为程序代码:
[align=left]<?xml version="1.0" encoding="gb2312" ?>
<configuration>
<system.web>
<compilation defaultLanguage="JScript" debug="true" />
<globalization requestEncoding="gb2312" responseEncoding="gb2312" />
</system.web>
<appSettings>
<add key="connStr" value="Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" />
<add key="mdbPath" value="temp.mdb" />
<add key="pageSize" value="20" />
</appSettings>
</configuration>
[/align]
编译.bat:
以下为程序代码:
%windir%/Microsoft.Net/Framework/v1.1.4322/jsc /t:library /out:Bin/biyuan.dll dbHelper.js select.aspx.js
pause
相关文章推荐
- 在 ASP.NET 中使用 SQL Server 2000 Analysis Services 和 Office XP构造 OLAP 报表设计程序
- asp.net access 操作必须使用一个可更新的查询
- asp.net访问access 发生了未处理的异常 "操作必须使用一个可更新的查询"错误
- ASP.NET_ACCESS_操作必须使用一个可更新的查询
- asp.net使用jbox插件,利用ajax(使用一般处理程序方式)执行撤销操作
- Asp.net连Access时:操作必须使用一个可更新的查询
- [翻译] Scott Mitchell 的ASP.NET 2.0数据操作教程之十:使用 GridView 和DetailView实现的主/从报表
- [导入]Silverlight 2 (beta1)数据操作(1)——使用ASP.NET Web Service进行数据CRUD操作(上)
- 使用ASP.NET页面创建可视的UI,在客户机上实例化MSXML分析器的页面从中间层组件取出XML数据、操作并显示 并有问题请高手解决
- 使用JScript.NET创建asp.net页面(三)
- 在asp.net以外程序使用membership的配置
- 使用JScript.NET创建asp.net页面(二)
- 在ASP.NET中使用SQL的IN操作
- 如何使用ASP.NET操作EXCEL
- 在ASP.NET 2.0中操作数据之三十五:使用Repeater和DataList单页面实现主/从报表
- Asp.Net中使用HTTP处理程序连接MySQL数据库
- MVC中使用EF(1):为ASP.NET MVC程序创建Entity Framework数据模型
- The NOTE of learning ASP.NET [7] 使用记事本与CSC开发第一个.NET程序HelloWorld
- 在IIS中访问APS页面时提示:“最可能的原因使用的托管的处理程序,但是未安装或未完整安装asp.net“
- 在ASP.NET 2.0中操作数据之十二:在GridView控件中使用TemplateField