C#连接Acess数据库
我自己添加了一个类 数据库连接语句如下
string connstr = "Provider = Microsoft.Jet.OLEDB.4.0;Data Source = " ← 这个后面好象只能写绝对路径,如果要用相对路径应该怎么写呢??? 自己添加的类里面好象既不能用Server.MapPath() 也不能用Application.StartupPath
请各位看下...
我自己添加了一个类 数据库连接语句如下
string connstr = "Provider = Microsoft.Jet.OLEDB.4.0;Data Source = " ← 这个后面好象只能写绝对路径,如果要用相对路径应该怎么写呢??? 自己添加的类里面好象既不能用Server.MapPath() 也不能用Application.StartupPath
请各位看下...
看看这个吧 对你应该有帮助吧
我的数据库是放在项目 的DB文件夹下的 没有向网上说的一样放在Bin下面而且系统为什么默认会到
'C:\WINDOWS\system32\'这个文件夹下面去找...以前开发都是用VS2003+SQL 现在第一次用ACESS 真的是很费解...
using System.IO;在类里写:
//exePath取到你执行文件(exe文件)的根目录
string exePath = Path.GetDirectoryName(Application.ExecutablePath).ToString();
string connstr = "Provider=Microsoft.Jet.OLEDB.4.0"
//+ ";User ID=Admin "
//+ ";password="
+ ";Data Source=" + exePath + @"\XXXX.mdb";
string exePath = Path.GetDirectoryName(Application.ExecutablePath).ToString();
string connstr = "Provider=Microsoft.Jet.OLEDB.4.0"
+ ";Data Source=" + exePath + @"\XXXX.mdb";
Application 需要引用什么命名空间???
目前引用的命名空间有 System;
System.IO;
System.Data;
System.Data.OleDb;
好象是HttpServerUtility,你需要在
using System.Web.HttpServerUtility;
好象是这个,现在在单位,没有机器用,回家的时候给你查一下,楼主在VS中试试看,
采用代码后置技术
前台页面conn.aspx
<%@ Page language="c#" src="/conn.cs" AutoEventWireup="false" Inherits="lyg.db" Debug="true"%>
<%=con()%>
cs.conn源码
using System;
using System.Data;
using System.Data.OleDb;
namespace lyg
{
public class db:System.Web.UI.Page
{ public String con()
{
string strCon =@"Provider=Microsoft.Jet.OLEDB.4.0; Data source=" + Server.MapPath("这里是数据库文件路径");
OleDbConnection myConn = new OleDbConnection ( strCon ) ;
try
{
// 打开数据库连接
myConn.Open(); // 显示连接成功信息
return ("Access数据库连接状态:" + myConn.State);
}
catch (Exception ex)
{
// 如果出现异常,显示异常信息
return ("Access数据库连接状态:" + ex.ToString());
}
finally
{
// 关闭数据库连接
myConn.Close();
}
}
}
============================================
这是别人的语句, Server.MapPath() 不用另外引用吧, System.Web 下就有
十分感谢PingLan的源码
分不多 只能送上这么多了
同样十分感谢 bjgzxx(食人一族) 和 wslinfeng(林风)