OLEDB 连接Access数据库,程序异常退出,各位帮帮忙

cocobase 2002-07-03 10:22:51
程序如下
using System;
using System.Data.OleDb;
using System.Data;

namespace door.db
{
/// <summary>
/// DoorDb 的摘要说明。
/// </summary>
public class DoorDb
{
private OleDbConnection myConn = null;
private string connString = @"Provider=Microsoft.Jet.OLEDB.4.0;Password="";User ID=Admin;Data Source=F:\door.mdb;Mode=Read;Extended Properties="";Jet OLEDB:Database Password=howareyoums;Jet OLEDB:Engine Type=4;Jet OLEDB:New Database Password="";Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Don't Copy Locale on Compact=False";
public DoorDb()
{
//
// TODO: 在此处添加构造函数逻辑
//

myConn = new OleDbConnection(connString);
}

public OleDbDataReader QueryEmpDoor()
{
OleDbCommand mycmd = new OleDbCommand("select 姓名,日期,时间1,时间2 from datakq",myConn);
myConn.Open();
OleDbDataReader myreader = mycmd.ExecuteReader();
return myreader;
}

public static void DoTest()
{
DoorDb test = new DoorDb();
OleDbDataReader reader = test.QueryEmpDoor();
while(reader.Read())
{
Console.Write(reader.GetString(0) + "\t" + reader.GetDateTime(1) + "\t" +
reader.GetDateTime(2) + "\t" + reader.GetDateTime(3) + "\r\n");
}
}
}
}

每次执行到OleDbDataReader myreader = mycmd.ExecuteReader就出错,错误如下
初始化字符串的格式不符合OLE规范。

可是这个连接串是我从vs.net的服务器资源管理器中建立连接成功后将该连接字符串拷贝下来的阿。
...全文
73 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
hbxtx 2002-07-04
  • 打赏
  • 举报
回复
你连接服务器的字符串有问题.
@"Provider=Microsoft.Jet.OLEDB.4.0;Password="";User ID=Admin;Data Source=F:\\door.mdb;Mode=Read;Extended Properties="";Jet OLEDB:Database Password=howareyoums;Jet OLEDB:Engine Type=4;Jet OLEDB:New Database Password="";Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Don't Copy Locale on Compact=False";
再试.
pengnick 2002-07-04
  • 打赏
  • 举报
回复
不会是SQL语句写错吧?!
cocobase 2002-07-04
  • 打赏
  • 举报
回复
是连接串的问题,我已经解决

@"Provider=Microsoft.Jet.OLEDB.4.0;Password='';User ID=Admin;Data Source=F:\door.mdb;Mode=Read;Extended Properties='';Jet OLEDB:Database Password=howareyoums;Jet OLEDB:New Database Password=;Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False";
pengnick 2002-07-04
  • 打赏
  • 举报
回复
连接字符串没有问题。加了 @ 后面的 \ 就不用改为 \\ 了。

1,979

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 其他语言讨论
社区管理员
  • 其他语言社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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