仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 562|回复: 7
打印 上一主题 下一主题

[学习教程] ASP.NET网页设计Access数据库操纵类

[复制链接]
灵魂腐蚀 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:29:23 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
呵呵,那你就关注微软的招聘信息以及别人的招聘经验啊,还有也不一定去做技术的,你如果真的想去就多了解了解。(其实我的意思是说想到微软做技术是很不容易的。Access数据库操纵类AccessHelper
usingSystem;
usingSystem.Data;
usingSystem.Configuration;
usingSystem.Web;
usingSystem.Web.Security;
usingSystem.Web.UI;
usingSystem.Web.UI.WebControls;
usingSystem.Web.UI.WebControls.WebParts;
usingSystem.Web.UI.HtmlControls;
usingSystem.Data.OleDb;
usingSystem.Collections;
///<summary>
///AcceHelper的择要申明
///</summary>
publicstaticclassAccessHelper
{
//数据库毗连字符串
publicstaticreadonlystringconn="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="+HttpContext.Current.Request.PhysicalApplicationPath+System.Configuration.ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
//用于缓存参数的HASH表
privatestaticHashtableparmCache=Hashtable.Synchronized(newHashtable());
///<summary>
///给定毗连的数据库用假定参数实行一个sql命令(不前往数据集)
///</summary>
///<paramname="connectionString">一个无效的毗连字符串</param>
///<paramname="commandText">存储历程称号大概sql命令语句</param>
///<paramname="commandParameters">实行命令所用参数的汇合</param>
///<returns>实行命令所影响的行数</returns>
publicstaticintExecuteNonQuery(stringconnectionString,stringcmdText,paramsOleDbParameter[]commandParameters)
{
OleDbCommandcmd=newOleDbCommand();
using(OleDbConnectionconn=newOleDbConnection(connectionString))
{
PrepareCommand(cmd,conn,null,cmdText,commandParameters);
intval=cmd.ExecuteNonQuery();
cmd.Parameters.Clear();
returnval;
}
}
///<summary>
///用现有的数据库毗连实行一个sql命令(不前往数据集)
///</summary>
///<remarks>
///举例:
///intresult=ExecuteNonQuery(connString,"PublishOrders",newOleDbParameter("@prodid",24));
///</remarks>
///<paramname="conn">一个现有的数据库毗连</param>
///<paramname="commandText">存储历程称号大概sql命令语句</param>
///<paramname="commandParameters">实行命令所用参数的汇合</param>
///<returns>实行命令所影响的行数</returns>
publicstaticintExecuteNonQuery(OleDbConnectionconnection,stringcmdText,paramsOleDbParameter[]commandParameters)
{
OleDbCommandcmd=newOleDbCommand();
PrepareCommand(cmd,connection,null,cmdText,commandParameters);
intval=cmd.ExecuteNonQuery();
cmd.Parameters.Clear();
returnval;
}
///<summary>
///利用现有的SQL事件实行一个sql命令(不前往数据集)
///</summary>
///<remarks>
///举例:
///intresult=ExecuteNonQuery(trans,"PublishOrders",newOleDbParameter("@prodid",24));
///</remarks>
///<paramname="trans">一个现有的事件</param>
///<paramname="commandText">存储历程称号大概sql命令语句</param>
///<paramname="commandParameters">实行命令所用参数的汇合</param>
///<returns>实行命令所影响的行数</returns>
publicstaticintExecuteNonQuery(OleDbTransactiontrans,stringcmdText,paramsOleDbParameter[]commandParameters)
{
OleDbCommandcmd=newOleDbCommand();
PrepareCommand(cmd,trans.Connection,trans,cmdText,commandParameters);
intval=cmd.ExecuteNonQuery();
cmd.Parameters.Clear();
returnval;
}
///<summary>
///用实行的数据库毗连实行一个前往数据集的sql命令
///</summary>
///<remarks>
///举例:
///OleDbDataReaderr=ExecuteReader(connString,"PublishOrders",newOleDbParameter("@prodid",24));
///</remarks>
///<paramname="connectionString">一个无效的毗连字符串</param>
///<paramname="commandText">存储历程称号大概sql命令语句</param>
///<paramname="commandParameters">实行命令所用参数的汇合</param>
///<returns>包括了局的读取器</returns>
publicstaticOleDbDataReaderExecuteReader(stringconnectionString,stringcmdText,paramsOleDbParameter[]commandParameters)
{
//创立一个SqlCommand工具
OleDbCommandcmd=newOleDbCommand();
//创立一个SqlConnection工具
OleDbConnectionconn=newOleDbConnection(connectionString);
//在这里我们用一个try/catch布局实行sql文本命令/存储历程,由于假如这个办法发生一个非常我们要封闭毗连,由于没有读取器存在,
//因而commandBehaviour.CloseConnection就不会实行
try
{
//挪用PrepareCommand办法,对SqlCommand工具设置参数
PrepareCommand(cmd,conn,null,cmdText,commandParameters);
//挪用SqlCommand的ExecuteReader办法
OleDbDataReaderreader=cmd.ExecuteReader(CommandBehavior.CloseConnection);
//扫除参数
cmd.Parameters.Clear();
returnreader;
}
catch
{
//封闭毗连,抛出非常
conn.Close();
throw;
}
}
///<summary>
///前往一个DataSet数据集
///</summary>
///<paramname="connectionString">一个无效的毗连字符串</param>
///<paramname="cmdText">存储历程称号大概sql命令语句</param>
///<paramname="commandParameters">实行命令所用参数的汇合</param>
///<returns>包括了局的数据集</returns>
publicstaticDataSetExecuteDataSet(stringconnectionString,stringcmdText,paramsOleDbParameter[]commandParameters)
{
//创立一个SqlCommand工具,并对其举行初始化
OleDbCommandcmd=newOleDbCommand();
using(OleDbConnectionconn=newOleDbConnection(connectionString))
{
PrepareCommand(cmd,conn,null,cmdText,commandParameters);
//创立SqlDataAdapter工具和DataSet
OleDbDataAdapterda=newOleDbDataAdapter(cmd);
DataSetds=newDataSet();
try
{
//添补ds
da.Fill(ds);
//扫除cmd的参数汇合
cmd.Parameters.Clear();
//前往ds
returnds;
}
catch
{
//封闭毗连,抛出非常
conn.Close();
throw;
}
}
}
///<summary>
///用指定的数据库毗连字符串实行一个命令并前往一个数据集的第一列
///</summary>
///<remarks>
///比方:
///Objectobj=ExecuteScalar(connString,"PublishOrders",newOleDbParameter("@prodid",24));
///</remarks>
///<paramname="connectionString">一个无效的毗连字符串</param>
///<paramname="commandText">存储历程称号大概sql命令语句</param>
///<paramname="commandParameters">实行命令所用参数的汇合</param>
///<returns>用Convert.To{Type}把范例转换为想要的</returns>
publicstaticobjectExecuteScalar(stringconnectionString,stringcmdText,paramsOleDbParameter[]commandParameters)
{
OleDbCommandcmd=newOleDbCommand();
using(OleDbConnectionconnection=newOleDbConnection(connectionString))
{
PrepareCommand(cmd,connection,null,cmdText,commandParameters);
objectval=cmd.ExecuteScalar();
cmd.Parameters.Clear();
returnval;
}
}
///<summary>
///用指定的数据库毗连实行一个命令并前往一个数据集的第一列
///</summary>
///<remarks>
///比方:
///Objectobj=ExecuteScalar(connString,"PublishOrders",newOleDbParameter("@prodid",24));
///</remarks>
///<paramname="conn">一个存在的数据库毗连</param>
///<paramname="commandText">存储历程称号大概sql命令语句</param>
///<paramname="commandParameters">实行命令所用参数的汇合</param>
///<returns>用Convert.To{Type}把范例转换为想要的</returns>
publicstaticobjectExecuteScalar(OleDbConnectionconnection,stringcmdText,paramsOleDbParameter[]commandParameters)
{
OleDbCommandcmd=newOleDbCommand();
PrepareCommand(cmd,connection,null,cmdText,commandParameters);
objectval=cmd.ExecuteScalar();
cmd.Parameters.Clear();
returnval;
}
///<summary>
///将参数汇合增加到缓存
///</summary>
///<paramname="cacheKey">增加到缓存的变量</param>
///<paramname="cmdParms">一个将要增加到缓存的sql参数汇合</param>
publicstaticvoidCacheParameters(stringcacheKey,paramsOleDbParameter[]commandParameters)
{
parmCache[cacheKey]=commandParameters;
}
///<summary>
///找回缓存参数汇合
///</summary>
///<paramname="cacheKey">用于找回参数的关头字</param>
///<returns>缓存的参数汇合</returns>
publicstaticOleDbParameter[]GetCachedParameters(stringcacheKey)
{
OleDbParameter[]cachedParms=(OleDbParameter[])parmCache[cacheKey];
if(cachedParms==null)
returnnull;
OleDbParameter[]clonedParms=newOleDbParameter[cachedParms.Length];
for(inti=0,j=cachedParms.Length;i<j;i++)
clonedParms=(OleDbParameter[])((ICloneable)cachedParms).Clone();
returnclonedParms;
}
///<summary>
///筹办实行一个命令
///</summary>
///<paramname="cmd">sql命令</param>
///<paramname="conn">Sql毗连</param>
///<paramname="trans">Sql事件</param>
///<paramname="cmdText">命令文本,比方:Select*fromProducts</param>
///<paramname="cmdParms">实行命令的参数</param>
privatestaticvoidPrepareCommand(OleDbCommandcmd,OleDbConnectionconn,OleDbTransactiontrans,stringcmdText,OleDbParameter[]cmdParms)
{
//判别毗连的形态。假如是封闭形态,则翻开
if(conn.State!=ConnectionState.Open)
conn.Open();
//cmd属性赋值
cmd.Connection=conn;
cmd.CommandText=cmdText;
//是不是必要用到事件处置
if(trans!=null)
cmd.Transaction=trans;
cmd.CommandType=CommandType.Text;
//增加cmd必要的存储历程参数
if(cmdParms!=null)
{
foreach(OleDbParameterparmincmdParms)
cmd.Parameters.Add(parm);
}
}
}
J2EE比较成熟一点,一些比较出名的企业应用软件都是基于J2EE的。以后的发展就不好说了。不过java比较烦,学.net的话,微软把很多工具都封装好了,学起来可能容易一点。
莫相离 该用户已被删除
沙发
发表于 2015-1-19 07:50:52 | 只看该作者
ASP在执行的时候,是由IIS调用程序引擎,解释执行嵌在HTML中的ASP代码,最终将结果和原来的HTML一同送往客户端。
山那边是海 该用户已被删除
板凳
发表于 2015-1-24 11:25:15 | 只看该作者
现在的ASP.net分为两个版本:1.1和2.0Asp.net1.1用VS2003(visualstudio2003)编程。Asp.net2.0用VS2005(visualstudio2005)编程。现在一般开发用的是VS2003。
愤怒的大鸟 该用户已被删除
地板
发表于 2015-2-1 08:35:01 | 只看该作者
众所周知,Windows以易用而出名,也因此占据不少的服务器市场。
小妖女 该用户已被删除
5#
发表于 2015-2-7 01:57:38 | 只看该作者
Asp.net:首先来说,Asp.net和Asp没什么关系,看着像是升级版本什么的,其实没什么联系。Asp是脚本编程,用的是ASP语言,而ASP.net用的是C#语言,完全不同的东西。
再现理想 该用户已被删除
6#
发表于 2015-2-19 15:33:34 | 只看该作者
目前在微软的.net战略中新推出的ASP.net借鉴了Java技术的优点,使用CSharp(C#)语言作为ASP.net的推荐语言,同时改进了以前ASP的安全性差等缺点。但是,使用ASP/ASP.net仍有一定的局限性,因为从某种角度来说它们只能在微软的WindowsNT/2000/XP+IIS的服务器平台上良好运行(虽然像ChilliSoft提供了在UNIX/Linux上运行ASP的解决方案.
蒙在股里 该用户已被删除
7#
发表于 2015-3-13 03:09:43 | 只看该作者
同时也感谢博客园给我们这个平台,也感谢博客园的编辑们做成专题引来这么多高人指点。
灵魂腐蚀 该用户已被删除
8#
 楼主| 发表于 2015-3-20 11:10:40 | 只看该作者
主流网站开发语言之CGI:CGI就是公共网关接口(CommonGatewayInterface)的缩写。它是最早被用来建立动态网站的后台技术。这种技术可以使用各种语言来编写后台程序,例如C,C++,Java,Pascal等。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-23 13:34

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表