初学asp.net,写不好连接数据库语句,哪位给指点一下

my3b 2003-09-13 06:12:33
在asp中大家经常写一个conn.asp文件来连接数据库,在asp.net中我却写来写去的不对,哪位给写一个比较通用的连接数据库语句示范一下好吗?也同asp中那样存为conn.aspx,再用include插入此文件,这样以后方便修改。希望能分为连接Access和SQL Server两种的,见笑了,我初学,连这也写不好,大家多多指点了。
...全文
187 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
xu0923 2003-09-13
  • 打赏
  • 举报
回复
写一个类,在前面直接调用就可以了啊
my3b 2003-09-13
  • 打赏
  • 举报
回复
怎么老说给的分总和不对,无法结帖呀,正确的做法应该怎么做啊!
my3b 2003-09-13
  • 打赏
  • 举报
回复
谢谢各位的指点,现在结帖。
ltf1980 2003-09-13
  • 打赏
  • 举报
回复

第一种 - 这种方法用在ACCESS中最多
strconn = "DRIVER=Microsoft Access Driver (*.mdb);DBQ=" _
& Server.MapPath("aspfree.mdb")
set conn = server.createobject("adodb.connection")
conn.open strconn

第二种-这种方法用在SQL SERVER中多
strconn = "Driver={SQL Server};Description=sqldemo;SERVER=127.0.0.1;" _
&"UID=LoginID;Password=;DATABASE=Database_Name"
set conn = server.createobject("adodb.connection")
conn.open strconn

第三种
strconn="Driver={Microsoft Access Driver(*.mdb)};" _
&"DBQ=F:\Inetpub\wwwroot\somedir\db1.mdb;DefaultDir=" _
&"f:\Inetpub\wwwroot\somedir;uid=LoginID;" _
&"pwd=Password;DriverId=25;FIL=MSAccess;"
set conn = server.createobject("adodb.connection")
conn.open strconn



第四种运用系统数据源
The following uses a Data Source Name: Example
set conn = server.createobject("adodb.connection")
conn.open "Example"



第五种运用ODBC数据源,前提是你必须在控制面板的ODBC中设置数据源
set rs = server.createobject("adodb.recordset")
rs.open "tblname", "DSNName", 3, 3 第一种 - 这种方法用在ACCESS中最多
strconn = "DRIVER=Microsoft Access Driver (*.mdb);DBQ=" _
& Server.MapPath("aspfree.mdb")
set conn = server.createobject("adodb.connection")
conn.open strconn


限制显示记录条数是用sql语句实现的,是与数据库相关的,与asp或asp.net无关
zhougongzi 2003-09-13
  • 打赏
  • 举报
回复
如果用datagrid控件的话,
Datagrid1.PageSize=10;
显示10条数据!
数据库操作类我是写在一个专门的类文件中!
比如
CDBAccess.CS文件中
以后调用这个类实例化一个对象就可以了!下面是用SQl SERVEr的例子:Access 其实类似
public class CDBAccess
{
private System.Data.SqlClient.SqlDataAdapter DataAdapter; //用于连接数据库填充DataSet、并根据DataSet更新数据库
private System.Data.SqlClient.SqlConnection DbConnection; //用于打开数据连接
private System.Data.SqlClient.SqlCommand ExcuseCommand; //用于执行SQL命令语句或存储过程
private System.Data.SqlClient.SqlCommandBuilder UpDateBuilder; //关联数据更改
private System.Data.DataSet Datasets; //用于保存各种数据库操作和数据操作的数据

public string ConnectString = ""; //数据库连接字符串
public string error_msg = ""; //出错信息

public CDBAccess()
{
//
// TODO: 在此处添加构造函数逻辑
//
//从配置文件中读取
this.ConnectString = ConfigurationSettings.AppSettings["SqlDbdataSource"];
this.Init();
}

/// <summary>
/// 功 能:对该类中的相关变量进行初始化
/// 输入参数:无
/// 输出参数:无
/// 说 明:
/// </summary>
private bool Init()
{
try
{
this.DataAdapter = new SqlDataAdapter();
this.Datasets = new DataSet();
this.DbConnection = new SqlConnection(this.ConnectString);
this.ExcuseCommand = new SqlCommand();
this.ExcuseCommand.Connection = this.DbConnection;
this.UpDateBuilder = new SqlCommandBuilder(this.DataAdapter);
if(this.DbConnection.State == ConnectionState.Closed)
this.DbConnection.Open();
return true;
}
catch(OleDbException err)
{
this.error_msg = err.Message;
this.DbConnection.Close();
return false;
}
}
/// <summary>
/// 功 能:执行指定的插入语句
/// 输入参数:sqlInsertCommand:要执行的插入命令语句
/// 输出参数:
/// 说 明:
/// </summary>
/// <param name="sqlInsertCommand"></param>
public bool Insert(string sqlInsertCommand)
{
try
{
if(this.DbConnection.State == System.Data.ConnectionState.Closed)
this.DbConnection.Open();
//初始化数据
this.ExcuseCommand.CommandText = sqlInsertCommand;

//打开连接并执行语句
//this.DbConnection.Open();
this.ExcuseCommand.ExecuteNonQuery();

//关闭连接
//this.DbConnection.Close();
return true;
}
catch(OleDbException err)
{
this.error_msg = err.Message;
this.DbConnection.Close();
return false;
}
}
steadywl 2003-09-13
  • 打赏
  • 举报
回复
Asp.Net应该也可以的啊,SQL语句是通用的啊。
my3b 2003-09-13
  • 打赏
  • 举报
回复
另外,还请一并指点一下这个问题,在asp中是用top 10这样的语法来限制只显示10条数据的,在asp.net中应该怎样写呢?

62,041

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧