C#读取带密码的MDB数据库

zhouyao85258 2010-06-12 04:58:54
如何读取带密码的MDB数据库,另外如果写入呢?

比如我要在MDB中的theall这个表里面读取姓名一列,并且在money一列写入数据,怎么写,我要完整的代码,不胜感激!!(如果有注释的话那就更好了)
...全文
599 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhouyao85258 2010-06-12
  • 打赏
  • 举报
回复
有这么麻烦么,我要的是winform的程序代码,只要读取,写入的方法,最好写个函数,谢谢了
捷哥1999 2010-06-12
  • 打赏
  • 举报
回复

//楼上给的就是封装好的方法!
//执行一个sql语句,你可以传入插入和修改的sql语句
public static int ExecuteCommand(string safeSql)
{
OleDbCommand cmd = new OleDbCommand(safeSql, Connection);
int result = cmd.ExecuteNonQuery();
return result;
}

//执行带参数的命令,第一个是sql语句,第二个是参数
public static int ExecuteCommand(string sql, params OleDbParameter[] values)
{
OleDbCommand cmd = new OleDbCommand(sql, Connection);
cmd.Parameters.AddRange(values);
return cmd.ExecuteNonQuery();
}
一克代码 2010-06-12
  • 打赏
  • 举报
回复
简单的一个对数据库操作

using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Data.OleDb;
using dckj.Models;

namespace dckj.DAL
{
public static class BulletinService
{
/// <summary>
/// 根据BOrdID查Bulletin内容
/// </summary>
/// <returns></returns>
public static IList<Bulletin> GetBulletin()
{
List<Bulletin> list = new List<Bulletin>();
string sql = "select * from Bulletin ";
OleDbDataReader dr = DBHelper.GetReader(sql);
while (dr.Read())
{
Bulletin bulletin = new Bulletin();
bulletin.Id = (int)dr["bulletinid"];
bulletin.Name = (string)dr["bulletinname"];
bulletin.Text = (string)dr["bulletintext"];
bulletin.Time = (DateTime)dr["bulletintime"];
list.Add(bulletin);
}
dr.Close();
return list;

}
/// <summary>
/// 查找回复List
/// 根据点击数排序,再以9组为一页
/// @return 查询结果
/// </summary>
/// <param name="Tid"></param>
/// <returns></returns>

public static IList<Bulletin> findList(int page, int productsid)
{
List<Bulletin> list = new List<Bulletin>(); // 用来保存回复对象列表
int rowBegin = 0; // 开始行数,表示每页第一条记录在数据库中的行数
if (page > 1)
{

rowBegin = 9 * (page - 1); // 按页数取得开始行数,设每页可以显示10条回复
String sql = "select top 9 * from [Bulletin] where bulletinid not in (select top " + rowBegin + " bulletinid from [Bulletin] order by bulletintime desc ) order by bulletintime desc";
// String sql = "select top 10 * from Table_Ware where wareCategoryId=" +wareCategoryId + " and wareCategoryId not in(select top "+ rowBegin + " wareCategoryId from Table_Ware where wareCategoryId=" + wareCategoryId + "order by wareClicks )order by wareClicks";
// 得到PreparedStatement对象
// 执行sql取得结果集

/* 循环将回复信息封装成List */
OleDbDataReader dr = DBHelper.GetReader(sql);
while (dr.Read())
{
Bulletin bulletin = new Bulletin();
bulletin.Id = (int)dr["bulletinid"];
bulletin.Name = (string)dr["bulletinname"];
bulletin.Text = (string)dr["bulletintext"];
bulletin.Time = (DateTime)dr["bulletintime"];
list.Add(bulletin);
}
dr.Close();
return list;

}
else
{
String sql = "select top 9 * from [Bulletin]";
OleDbDataReader dr = DBHelper.GetReader(sql);
while (dr.Read())
{
Bulletin bulletin = new Bulletin();
bulletin.Id = (int)dr["bulletinid"];
bulletin.Name = (string)dr["bulletinname"];
bulletin.Text = (string)dr["bulletintext"];
bulletin.Time = (DateTime)dr["bulletintime"];
list.Add(bulletin);
}
dr.Close();
return list;
}
}

/// <summary>
/// 根据ID获得Bulletin对象
/// </summary>
/// <returns></returns>
public static Bulletin GetBulletinbybulletinid(int bulletinid)
{
Bulletin bulletin = null;
string sql = "select * from Bulletin where bulletinid=" + bulletinid;


using (OleDbDataReader dr = DBHelper.GetReader(sql))
{
if (dr.Read())
{
bulletin = new Bulletin();
bulletin.Id = (int)dr["bulletinid"];
bulletin.Name = (string)dr["bulletinname"];
bulletin.Text = (string)dr["bulletintext"];
bulletin.Time = (DateTime)dr["bulletintime"];
}

}
return bulletin;

}
/// <summary>
/// 添加
/// </summary>
/// <param name="teach"></param>
/// <returns></returns>
public static int AddBulletin(Bulletin bulletin)
{

string sql = "INSERT into [Bulletin] ([bulletinname],[bulletintext]) " +
"VALUES (@S, @N)";


try
{
OleDbParameter[] para = new OleDbParameter[]
{
new OleDbParameter("@S",bulletin.Name),
new OleDbParameter("@N",bulletin.Text),
};

return (int)DBHelper.GetScalar(sql, para);
}
catch (Exception e)
{
Console.WriteLine(e.Message);
throw e;
}
}
/// <summary>
/// 根据Tid删除Teach
/// </summary>
/// <param name="Tid"></param>
/// <returns></returns>
public static int DeleteBulletinbybulletinid(int bulletinid)
{
string sql = "DELETE * from Bulletin WHERE bulletinid = @bulletinid";

try
{
OleDbParameter[] para = new OleDbParameter[]
{
new OleDbParameter("@bulletinid", bulletinid)
};


int newId = (int)DBHelper.ExecuteCommand(sql, para);
return newId;
}
catch (Exception e)
{
Console.WriteLine(e.Message);
throw e;
}
}

}
}

一克代码 2010-06-12
  • 打赏
  • 举报
回复
DBhelper里面

using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Data.OleDb;
using System.Configuration;
namespace dckj.DAL
{
public class DBHelper
{
private static OleDbConnection connection;
public static OleDbConnection Connection
{
get
{
string connectionString = System.Configuration.ConfigurationManager.AppSettings["SQLConnString"].ToString() + System.Web.HttpContext.Current.Server.MapPath(ConfigurationManager.AppSettings["dbPath"]) + ";";
// string connectionString = ConfigurationManager.ConnectionStrings["HotelManageConnectionString"].ConnectionString;
if (connection == null)
{
connection = new OleDbConnection(connectionString);
connection.Open();
}
else if (connection.State == System.Data.ConnectionState.Closed)
{
connection.Open();
}
else if (connection.State == System.Data.ConnectionState.Broken)
{
connection.Close();
connection.Open();
}
return connection;
}
}

public static int ExecuteCommand(params OleDbParameter[] values)
{
OleDbCommand cmd = new OleDbCommand();
cmd.Connection = Connection;
cmd.CommandText = "Pro_UpdateBooksCatagory";
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddRange(values);
int result = cmd.ExecuteNonQuery();
return result;
}

public static int ExecuteCommand(string safeSql)
{
OleDbCommand cmd = new OleDbCommand(safeSql, Connection);
int result = cmd.ExecuteNonQuery();
return result;
}

public static int ExecuteCommand(string sql, params OleDbParameter[] values)
{
OleDbCommand cmd = new OleDbCommand(sql, Connection);
cmd.Parameters.AddRange(values);
return cmd.ExecuteNonQuery();
}

public static int GetScalar(string safeSql)
{
OleDbCommand cmd = new OleDbCommand(safeSql, Connection);
int result = Convert.ToInt32(cmd.ExecuteScalar());
return result;
}

public static int GetScalar(params OleDbParameter[] values)
{
OleDbCommand cmd = new OleDbCommand();
cmd.Connection = Connection;
cmd.CommandText = "Pro_InsertOrder";
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddRange(values);
int result = Convert.ToInt32(cmd.ExecuteScalar());
return result;
}

public static int GetScalar(string sql, params OleDbParameter[] values)
{
OleDbCommand cmd = new OleDbCommand(sql, Connection);
cmd.Parameters.AddRange(values);
int result = Convert.ToInt32(cmd.ExecuteScalar());
return result;
}

public static OleDbDataReader GetReader(string safeSql)
{
OleDbCommand cmd = new OleDbCommand(safeSql, Connection);
OleDbDataReader reader = cmd.ExecuteReader();
return reader;
}

public static OleDbDataReader GetReader(string sql, params OleDbParameter[] values)
{
OleDbCommand cmd = new OleDbCommand(sql, Connection);
cmd.Parameters.AddRange(values);
OleDbDataReader reader = cmd.ExecuteReader();
return reader;
}

public static DataTable GetDataSet(string safeSql)
{
DataSet ds = new DataSet();
OleDbCommand cmd = new OleDbCommand(safeSql, Connection);
OleDbDataAdapter da = new OleDbDataAdapter(cmd);
da.Fill(ds);
return ds.Tables[0];
}

public static DataTable GetDataSet(string sql, params OleDbParameter[] values)
{
DataSet ds = new DataSet();
OleDbCommand cmd = new OleDbCommand(sql, Connection);
cmd.Parameters.AddRange(values);
OleDbDataAdapter da = new OleDbDataAdapter(cmd);
da.Fill(ds);
return ds.Tables[0];
}
}
}

一克代码 2010-06-12
  • 打赏
  • 举报
回复
web.config里面写

<?xml version="1.0"?>
<!--
注意: 除了手动编辑此文件以外,您还可以使用
Web 管理工具来配置应用程序的设置。可以使用 Visual Studio 中的
“网站”->“Asp.Net 配置”选项。
设置和注释的完整列表在
machine.config.comments 中,该文件通常位于
\Windows\Microsoft.Net\Framework\v2.x\Config 中
-->
<configuration>
<appSettings>
<add key="SQLConnString" value="provider=microsoft.jet.oledb.4.0;data source="/>
<add key="dbPath" value="~/App_Data/dckj.mdb"/>
</appSettings>
<connectionStrings/>
<system.web>
<!--
设置 compilation debug="true" 将调试符号插入
已编译的页面中。但由于这会
影响性能,因此只在开发过程中将此值
设置为 true。
-->
<compilation debug="true">
<assemblies>
<add assembly="System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
<add assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/></assemblies></compilation>
<!--
通过 <authentication> 节可以配置 ASP.NET 使用的
安全身份验证模式,
以标识传入的用户。
-->
<authentication mode="Windows"/>
<!--
如果在执行请求的过程中出现未处理的错误,
则通过 <customErrors> 节可以配置相应的处理步骤。具体说来,
开发人员通过该节可以配置
要显示的 html 错误页
以代替错误堆栈跟踪。

<customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">
<error statusCode="403" redirect="NoAccess.htm" />
<error statusCode="404" redirect="FileNotFound.htm" />
</customErrors>
-->
</system.web>
</configuration>


wuyq11 2010-06-12
  • 打赏
  • 举报
回复
using(OleDbConection conn=new OleDbConection (""))
{
}
zhouyao85258 2010-06-12
  • 打赏
  • 举报
回复
我要全部。。
重要的是读取和写入方面,密码是次要的
wuyq11 2010-06-12
  • 打赏
  • 举报
回复
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\mydatabase.mdb;User Id=admin;Password=;
hfCoder 2010-06-12
  • 打赏
  • 举报
回复
不懂,帮顶
lantingxiaosheng 2010-06-12
  • 打赏
  • 举报
回复
string connText = "Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:DataBase PassWord=123;User Id=Admin;Data source=" + Application.StartupPath + @"\Northwind.mdb";//User Id不可以为Administrator只能为Admin
这是连接字符串,希望对你有帮助。

111,098

社区成员

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

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

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