“LinkDB”的类型初始值设定项引发异常。

喜欢特别冷的冬天下着雪
博客专家认证
2012-06-30 03:28:47
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.OleDb;

namespace AccessApplication
{
class Program
{
static void Main(string[] args)
{
LinkDB linkdb = new LinkDB();
linkdb.DisplayData();

}
}
}
class LinkDB
{
static OleDbConnection connection = new OleDbConnection("@Provider=Microsoft.Jet.OLEDB.4.0;Data Source=db1.mdb ");
OleDbCommand cmd = new OleDbCommand("select * from room", connection);
OleDbDataReader Rd;

public void DisplayData()
{
connection.Open();
Rd = cmd.ExecuteReader();
while (Rd.Read())
{
Console.WriteLine("F:{0}, S:{1} ", Rd.GetString(0), Rd.GetString(0));
}
connection.Close();
}


}

这是我修改别人的代码,没有错误,可运行时却出现了如题错误,求教。。。
...全文
90 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 的回复:]
Provider=Microsoft.Jet.OLEDB.4.0;Extended Properties='Excel 8.0;IMEX=1';Data Source=db1.mdb
class LinkDB
{
static OleDbConnection connection = new OleDbConnection("@Provider=Microsoft.Jet.OLEDB.……
[/Quote]

兄台,何解?
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]
引用 2 楼 的回复:

还是不行

连接字符串对不对?
普通方式(最常用)连接ACCESS数据库:

string ConnString="Provider=Microsoft.Jet.OLEDB.4.0; Data Source=C:\App1\你的数据库名.mdb; User Id=admin; Password=";l
static OleDbConnection conn……
[/Quote]


我懂你意思,可我已经把db1.mdb托到DEGUG文件里了啊,应该不用在写具体的路径了吧.
事理 2012-07-01
  • 打赏
  • 举报
回复
Provider=Microsoft.Jet.OLEDB.4.0;Extended Properties='Excel 8.0;IMEX=1';Data Source=db1.mdb
class LinkDB
{
static OleDbConnection connection = new OleDbConnection("@Provider=Microsoft.Jet.OLEDB.4.0;Data Source=db1.mdb ");

OleDbDataReader Rd;

public void DisplayData()
{
connection.Open();
OleDbCommand cmd = new OleDbCommand("select * from room", connection);
Rd = cmd.ExecuteReader();
while (Rd.Read())
{
Console.WriteLine("F:{0}, S:{1} ", Rd.GetString(0), Rd.GetString(0));
}
connection.Close();
}
EnForGrass 2012-07-01
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]

还是不行
[/Quote]
连接字符串对不对?
普通方式(最常用)连接ACCESS数据库:

string ConnString="Provider=Microsoft.Jet.OLEDB.4.0; Data Source=C:\App1\你的数据库名.mdb; User Id=admin; Password=";l
static OleDbConnection connection = new OleDbConnection(ConnString);
红色部分路径对不对?
  • 打赏
  • 举报
回复
还是不行
__天涯寻梦 2012-06-30
  • 打赏
  • 举报
回复
static OleDbConnection connection = new OleDbConnection("@Provider=Microsoft.Jet.OLEDB.4.0;Data Source=db1.mdb ");
把红字处的 @ 删掉
public class Pagi { ResultSet CountTopicrs=null; //初始化总记录数Rs变量 ResultSet Pagirs=null; //初始化分页时Rs变量 public int intCountTopic=0; //主题总数 public int intPageSize;//每页显示主题数 public int intPageCount;//总页数 public int intPage=1; //当前页数 public String nowPage; // int i; public String HttpFile;//初始化当前页intPage变量,以准确便获取当前页。 //当前的地址栏的文件 DB db; //定义Linkdb类的一个对象。 public Pagi()//定义构造器,初始化每页显示的主题数和数据库的连接。 { intPageSize=4; //每页显示的记录数目 db = new DB(); } //Countsql:总记录的Query字符串。[形式为select count(*) from tablename] //Pagisql :要分页的Query字符串。[形式为select * from tablename where ...] //request :参数传递过程中的变量。[用来控制翻页时的pages变量] public ResultSet querySql(String Countsql,String Pagisql,HttpServletRequest request)throws Exception { HttpFile=request.getRequestURI(); //获取当前文件名。 nowPage=request.getParameter("pages"); //获取当前页,将数值赋予intPage变量。[分页栏中必须要有pages参数] if (nowPage==null) { intPage=1; } else { intPage=Integer.parseInt(nowPage); if (intPage<1) intPage=1; } CountTopicrs=db.executeQuery(Countsql); //@@@@@@@@@@@@获取总记录数的结果集。 if (CountTopicrs.next()) { intCountTopic=CountTopicrs.getInt(1); } intPageCount = (intCountTopic+intPageSize-1)/intPageSize; //获取总页数。 if (intPage>intPageCount)//如果当前页大于总页数,则当前页等于总页数。 { intPage=intPageCount; } CountTopicrs.close(); //关闭总主题数的数据集。 db.close_all(); Pagirs=db.executeQuery(Pagisql); //@@@@@@@@@@@@@@@获取执行分页的结果集。 return Pagirs; }//end querySql function. public int getCountTopic()//获取记录总数。 { return intCountTopic; } public int getPageCount() //获取总页数。 { return intPageCount; } public int getIntPage() //获取当前页数。 { return intPage; } public String PageFooter() { String str = ""; int next, prev; prev=intPage-1; next=intPage+1; str += "查询到"+getCountTopic()+"条记录"+ " 共"+getPageCount()+"页"; str +=" 第"+getIntPage()+"页 "; if(intPage>1) str += " 首页 "; else str += " 首页 "; if(intPage>1) str += " 上一页 "; else str += " 上一页 "; if(intPage下一页 "; else str += " 下一页 "; if(intPageCount>1&&intPage!=intPageCount) str += " 尾页"; else str += " 尾页 "; return str; } public void close_all() { db.close_all(); } }
本系统旨在为在学校信息部门工作的同仁提供一个管理方便、实用、免费的管理系统。本系统在使用上不做任何功能限制,使用者可放心使用。 本系统包含了丰富的管理模块,比如仓库管理,人事管理,学生管理,财务管理,学生学费管理,学生生活费管理,课程管理,校车及乘座管理等。使用中如有问题可与作者联系。 大家可到百度网盘下载,陆续更新版本都可在此找到:https://pan.baidu.com/s/1dEPsLGX 做为新的管理系统使用时,请先把文件复制到需要的目录,然后进行下面的操作。 1、修改访问地址: 打开根目录中的common.inc.php,把$td_config['webPath']的值改为你的访问地址,例如:http://192.168.15.56:82 2、删除JS目录中的message.js文件。 3、删除“/cache/sql/”文件夹中的所有SQL缓存文件。 4、文件夹“数据库”是本系统需要使用的MYSQL数据库表文件,有可用2种方式导入,第1种方法:文件夹“erp”复制到你的MYSQL数据库管理系统的“data”文件夹中,然后按下Windows+R键,在命令窗口中输入“net stop mysql”停止MYSQL服务,等待执行完成后,再输入“net start mysql”,此时你就可以使用名称为“erp”的数据库了,第2种方法:在PHPMYADMIN中使用导入(import)导入“erp.sql”,导入成功后你就可以使用名称为“erp”的数据库了。至此数据库建立完成。 5、配置PHP程序连接我们新建的erp数据库。打开“webinc/linkdb/linksqldb.inc.php”文件,第3行的localhost替换成你的数据库连接地址,如果与你的PHP程序在同一台服务器上,不用执行此操作。第4行的root替换成你的访问ERP数据库所需要的用户名,如果你使用的是root,就不用执行此操作。第5行是你的MYSQL用户连接密码,把bjgas替换成你的连接密码。第6行是你在MYSQL中建立的管理系统数据库名称,如果你使用的是erp,那么你就输入erp。保存并关闭此文件。 6、至此配置完成

110,499

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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