C# 连接Paradox DB
Paradox数据库是一个成名于15年前的数据库,那时候Borland公司还存在。最近客户提出需求,要在一套用了12年+的应用程序上作些功能更改。这套应用程序使用Delphi+Paradox数据库。 Delphi和Paradox一样太古老,现在会这玩意的人应该不多了吧。想想一种语言太依赖一家公司,结果往往就是这样(真替C#担忧)。最后客户同意使用C#开发一个外挂程序,但是数据库自然还是要用Paradox。 经过反复尝试,最终成就了下面的攻略。
环境:Win7 64 位 + VS2012
步骤一:安装BDE52,这版本支持安装在Win7 64 位。BDE驱动自身还是32位的。安装完后打开控制面板应能看到BDE Administrator( 如下).配置Paradox的NET DIR属性,默认是C盘的根目录,因为Win7下C盘的根目录写权限是受控的。所以建议更改至其他目录。


步骤二:打开VS2012,创建windows项目(略),一定注意以下配置(调成X86环境):


步骤三:输入以下代码访问数据库(大家都懂得,不多说):
private string connectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\Data\;Extended Properties=Paradox 5.x"; private OleDbConnection conn; public Form1()
{
InitializeComponent();
conn = new OleDbConnection(connectionString);
} private void button1_Click(object sender, EventArgs e)
{
try
{
this.dgvData.DataSource = FillTable("SELECT * FROM tbl_A WHERE No = '000012345'");
}
catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error!"); } } private DataTable FillTable(string sql)
{
DataTable table = new DataTable(); using (OleDbDataAdapter da = new OleDbDataAdapter(sql, conn))
{
da.Fill(table);
} return table;
}
结束。
C# 连接Paradox DB的更多相关文章
- EntityFrameWork连接多Db配置
如题所示,EF作为微软主推的ORM工具,最新版本已经是7,说明有很多人在使用它做项目.在使用过程中,可能会连接不同的数据库,本文介绍的是连接SqlServer,MySql和SQLite三种,并且可以互 ...
- PHP+MySQL:测试连接+基本DB操作
PHP使用MySQL,从连接.创建.到结果显示 <?php //连接MySQL测试 $db = mysql_connect("localhost","root&qu ...
- 在silverlight中通过WCF连接ORACLE DB数据库(转)
转自 http://hi.baidu.com/qianlihanse/item/458aa7c8d93d4e0cac092ff4 这不是我的原创,我也是上网学习的~ How to get data f ...
- 使用PL/SQL Developer连接远程DB(本机不安装Oracle客户端)
本文内容亲测可行环境: 服务端:centos6.7 ,oracle 11g r2 ,动态注册,监听端口号:1521 用户端:win7 ,没有安装ORACLE及其客户端 准备文件:plsql ...
- mongo DB for C#
(1)Download the MongoDB C#驱动. http://www.nuget.org/packages/mongocsharpdriver/. (2) Add Reference to ...
- mongodb系列3 mongo mongoskin 连接以及连接数的问题进阶
1)使用mongodb连接mongo var mongo = require('mongodb'), //引入mongodb dbHost = '127.0.0.1', dbPort = 27017; ...
- Discuz DB层跨库映射关系表名前缀BUG修复后产生的新bug
新的逻辑引入了新的bug,会导致在跨多库连接时,产生表名前缀映射混乱,需要再做逻辑上的修复. function table_name($tablename) { if(!empty($this-> ...
- 在express中使用Mongoose连接MongoDB
为何要学Mongoose? Mongoose是MongoDB的一个对象模型工具,封装了MongoDB对文档的的一些增删改查等常用方法,让NodeJS操作Mongodb数据库变得更加灵活简单. 0.安装 ...
- 阿里云部署Docker(7)----将容器连接起来
路遥知马力.日久见人心.恩. 该坚持的还是要坚持. 今天看到一个迅雷的师弟去了阿里,祝福他,哎,尽管老是被人家捧着叫大牛.我说不定通过不了人家的面试呢.哎,心有惭愧. 本文为本人原创,转载请表明来源: ...
随机推荐
- 2018.09.25 poj3070 Fibonacci(矩阵快速幂)
传送门 矩阵快速幂板题,写一道来练练手. 这一次在poj做题总算没忘了改万能库. 代码: #include<iostream> #include<cstdio> #define ...
- [GO]kafka的生产者和消费者
生产者: package main import ( "github.com/Shopify/sarama" "fmt" "time" ) ...
- linux安装mysql~~~mysql5.6.12
Linux安装mysql服务器 准备: MySQL-client-5.6.12-1.rhel5.i386.rpm MySQL-server-5.6.12-1.rhel5.i386.rpm 首先检查环境 ...
- CSS 温故而知新
如何让文字垂直居中 需要设置div的height,line-height 为一样的值,如下所示: <div class="ui-bar ui-bar-e" style=&qu ...
- SQL Server 统计信息(Statistics)-概念,原理,应用,维护
前言:统计信息作为sql server优化器生成执行计划的重要参考,需要数据库开发人员,数据库管理员对其有一定的理解,从而合理高效的应用,管理. 第一部分 概念 统计信息(statistics):描述 ...
- Cocos2d-三维拾取Ray-AABB碰撞检测算法【转】
1.三维拾取技术 在3D游戏中通常会有这样的需求,用户可以选取3D世界中的某些物体进行如拖拽等操作,这时便需要程序通过将二维屏幕上的点坐标转换为三维世界中的坐标,并进行比对,这个过程就需要用到三维拾取 ...
- asp.net接收传入的数据流
我们在日常的应用中,都会遇到这样一个问题,就是我们做的asp.NET程序,会收到其它第三方软件传过来的一些信息数据流,当然了一些文本形式的信息,可以采用get或post的方法来接收,可是要是传过来的是 ...
- JVM伪共享
CPU缓存中的cache line缓存行是缓存的最小单位,同一个时刻内只允许一个cpu内核进行操作.一般,缓存行的大小为64字节,这样的大小可以存放多个java对象的对象头.因此,当两个不同的线程同时 ...
- day 60 Django第一天
jinjia2 : Jinja2是基于python的模板引擎,功能比较类似于于PHP的smarty,J2ee的Freemarker和velocity. 它能完全支持unicode,并具有集成的沙箱执行 ...
- STL在数组算法的使用
find(a:起始位置 , b: 终止位置 , c: 要查找的内容) ------>查找寻找内容的位置 count(a:起始位置 , b: 终止位置 , c: 要查找的内容) -- ...