C#access数据库操作

比较凌乱,有时间在整理吧。

 1 Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data source=c:/D.mdb;Jet OLEDB:DataBase Password=123456!"
 2
 3
 4  private void GetCon()
 5        {
 6        string strConnection="PRovider=Microsoft.Jet.OleDb.4.0;";
 7                strConnection+=@"Data Source=C:\BegaspNET\Northwind.mdb";
 8
 9         OleDbConnection objConnection=new OleDbConnection(strConnection);
10
11
12       objConnection.Open();
13       objConnection.Close();
14
15        }

以独占的方式打开

文件--信息--加密/解密

PRovider=Microsoft.Jet.OleDb.4.0;Jet OLEDB:DataBase Password=123456789;Data Source=D:\ToWife.mdb;
1.
set dbconnection=Server.CREATEOBJECT("ADODB.CONNECTION")
DBPath = Server.MapPath("customer.mdb")
dbconnection.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & DBPath
SQL="select * from auth where id="" & user_id &"""
SET uplist=dbconnection.EXECUTE(SQL)

2.
set dbconnection=Server.CreateObject("ADODB.Connection")
DBPath = Server.MapPath("customer.mdb")
dbconnection.Open "provider=microsoft.jet.oledb.4.0;data source="&dbpath
SQL="select * from auth where id="" & user_id &"""
SET uplist=dbconnection.EXECUTE(SQL)

3.
DBPath = Server.MapPath("customer.mdb")
set session("rs")=Server.CreateObject("ADODB.Recordset")
" rs=Server.CreateObject("ADODB.Recordset")
connstr="provider=microsoft.jet.oledb.4.0;data source="&dbpath
SQL="select * from auth where id="" & user_id &"""
session("rs").Open sql,connstr,1,3

连接access2007

1 OleDbConnection con = new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;User ID=Admin;Data Source=D:/数据库.accdb;Jet OLEDB:Database Password=123456;

连接access2003

OleDbConnection con = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin";Data Source=D:/数据库.mdb;Jet OLEDB:Database password=123456;")

建odbc源

set conn=server.createobject("Adodb.connection")
conn.open "DSN=xxx;UID=;PWD=123456;Database=XXX" 

破解密码

 1  public static string GetMDBPassword(string file)
 2         {
 3             // 未加密的MDB文件,0x42到0x61之间的每间隔一字节的数值
 4             byte[] baseByte = { 0xbe, 0xec, 0x65, 0x9c, 0xfe, 0x28, 0x2b, 0x8a, 0x6c, 0x7b, 0xcd, 0xdf, 0x4f, 0x13, 0xf7, 0xb1, };
 5             byte flagByte = 0x0c; // 标志 0x62 处的数值
 6             string password = "";
 7             try
 8             {
 9                 FileStream fs = File.OpenRead(file);
10                 fs.Seek(0x14, SeekOrigin.Begin);
11                 byte ver = (byte)fs.ReadByte();     // 取得access版本, 1为Access2000/2003, 0为Access97
12                 fs.Seek(0x42, SeekOrigin.Begin);
13                 byte[] bs = new byte[33];
14                 if (fs.Read(bs, 0, 33) != 33) return "";
15                 byte flag = (byte)(bs[32] ^ flagByte);
16                 for (int i = 0; i < 16; i++)
17                 {
18                     byte b = (byte)(baseByte[i] ^ bs[i * 2]);
19                     if (i % 2 == 0 && ver == 1) b ^= flag; //Access 2000/2003
20                     if (b > 0) password += (char)b;
21                 }
22             }
23             catch { }
24
25             return ( password.Equals( "" ) ? "没有密码!" : password );
26         }

up

 1 private int up(string sql)
 2         {
 3             int index = 0;
 4             OleDbConnection con = GetCon();
 5             try
 6             {
 7                 if (con!=null)
 8                 {
 9                     con.Open();
10                     OleDbCommand oc = new OleDbCommand(sql, con);
11                     return oc.ExecuteNonQuery();
12                 }
13                 return 0;
14             }
15             catch (Exception)
16             {
17                 return 0;
18             }
19         }

select

 1  private DataTable select(string sql)
 2         {
 3             DataTable dt = new DataTable();
 4             OleDbConnection con = GetCon();
 5             try
 6             {
 7                 if (con!=null)
 8                 {
 9                     con.Open();
10                     //用   OleDbDataAdapter   得到一个数据集
11                     OleDbDataAdapter myCommand = new OleDbDataAdapter(sql,con);
12                     DataSet myDataSet = new DataSet();
13                     //把Dataset绑定books数据表
14                     myCommand.Fill(myDataSet);
15                     con.Close();
16                     return myDataSet.Tables[0];
17                 }
18                 con.Close();
19                 return null;
20             }
21             catch (Exception)
22             {
23                 con.Close();
24                 return null;
25             }
26         }
主键的操作
Function AddPrimaryKey()
‘添加主键到[编号]字段
Dim strSQL As String
strSQL = "ALTER TABLE 表1 ADD CONSTRAINT PRIMARY_KEY " _
& "PRIMARY KEY (编号)"
CurrentProject.Connection.Execute strSQL
End Function

Function DropPrimaryKey()
‘删除主键
Dim strSQL As String
strSQL = "ALTER TABLE 表1 Drop CONSTRAINT PRIMARY_KEY "
CurrentProject.Connection.Execute strSQL
End Function
时间: 2025-01-07 03:51:59

C#access数据库操作的相关文章

C# ACCESS数据库操作类

这个是针对ACCESS数据库操作的类,同样也是从SQLHELPER提取而来,分页程序的调用可以参考MSSQL那个类的调用,差不多的,只是提取所有记录的数量的时候有多一个参数,这个需要注意一下! using System; using System.Text; using System.Collections; using System.Collections.Specialized; using System.Data; using System.Data.OleDb; using System

Microsoft Access数据库操作类(C#)

博文介绍的Microsoft Access数据库操作类是C#语言的,可实现对Microsoft Access数据库的增删改查询等操作.并且该操作类可实现对图片的存储,博文的最后附上如何将Image图片转换为byte[]数组类型,以及如何将byte[]数组类型转换为Image图片. 博文中会贴出该类的下载地址,可以直接下载使用. 注:操作Microsoft Access数据库需要安装Microsoft Office Access DataBase Engine,可以直接去微软的官网下载. 1. A

C#---数据库访问通用类、Access数据库操作类、mysql类 .[转]

原文链接 //C# 数据库访问通用类 (ADO.NET)using System;using System.Collections.Generic;using System.Text;using System.Data;using System.Data.SqlClient;using System.Configuration; namespace XXX{    /// <summary>    /// 针对SQL Server数据库操作的通用类           /// </sum

C#---数据库访问通用类、Access数据库操作类、mysql类 .

//C# 数据库访问通用类 (ADO.NET)using System;using System.Collections.Generic;using System.Text;using System.Data;using System.Data.SqlClient;using System.Configuration; namespace XXX{    /// <summary>    /// 针对SQL Server数据库操作的通用类           /// </summary&

C#的Access数据库操作 AccessHelper类

由于学校的安全级别提高了,我们以前做的网站使用拼接sql方法查询数据会被拦截,所以说网站就必须重构,在重构之余,复习了下AccessHelper类,随便复习了下C#数据库操作.下面我们就开始吧. 先说个工具类,就是池类Pool,很简单的一个类,直接上代码 using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Data; using System.Data.

ACCESS数据库操作教程

网易学院视频教程: 上:http://tech.163.com/06/0621/17/2K5K0C2200091U6J.html中:http://tech.163.com/06/0621/17/2K5K496Q00091U6J.html下:http://tech.163.com/06/0622/10/2K7CLDD300091U6J.html

ACCESS数据库C#操作类(包含事务)

转自http://blog.csdn.net/allen3010/article/details/6336717 这个是针对ACCESS数据库操作的类,同样也是从SQLHELPER提取而来,分页程序的调用可以参考MSSQL那个类的调用,差不多的,只是提取所有记录的数量的时候有多一个参数,这个需要注意一下! c# 代码 using System;? ? using System.Text;? ? using System.Collections;? ? using System.Collectio

一个数据库操作类,适用于Oracle,ACCESS,SQLSERVER

最近做了一个数据诊断的项目,里面自己写了一个数据库的操作类,包含:连接数据库.读数据表.执行SQL操作,释放数据库等组成,希望对大家有用,由于水平有限,若有错误或者代码不足地方欢迎指正,谢谢. ADOOperate.H [cpp] view plaincopy ////////////////////////////////////////////////////////////////////// // 类功能:用于数据库的操作 主要实现 连接数据库 读数据表 检查数据表 执行SQL语句 //

C++ 操作Office的Access数据库

与我的另外一篇文章相呼应,在那片文章里面,使用的是C++ 操作xml的方法.下面的代码是操作一个access数据库的范例:      CoInitialize(NULL);     //定义两个对象指针.     _ConnectionPtr m_pConnection_circle;     _RecordsetPtr m_pRecordset_circle;     _ConnectionPtr m_pConnection_rectangle;     _RecordsetPtr m_pRe