怎么用C++ Builder4来控制Access2000的数据库*.mdb文件(十万火急)

caomg 2000-03-16 04:08:00
各位大虾:

如果您能加上实例小生不胜感激!!!

也可以发妹妹给我。

我的妹妹是:

caoxinmg@cmmail.com

caoxinlr@yeah.net;

谢谢!!!
...全文
357 20 打赏 收藏 转发到动态 举报
写回复
用AI写文章
20 条回复
切换为时间正序
请发表友善的回复…
发表回复
Hank 2000-03-21
  • 打赏
  • 举报
回复
其实,trybird的作法是正确的。
通过ODBC直接控制数据库,建立用户DSN,然后指定数据源,那么用户的DSN名会直接显示在BDE中,然后可以直接进行操作。如果Access数据库没有密码,当出现密码输入框时直接回车即可,如果有密码,则输入相应的密码!
需要注意的是:BDE并不直接支持Access 2000(但可支持Access 97及Access 95),而且需要到微软网站下载最新的ODBC驱动程序以支持Access 2000;而且数据库要在Access 2000中建立,通过Borland公司的数据库工具并不支持Access 2000。
BDE并不支持很多版本的数据库,需用ODBC连接!只是速度有些慢!同样的方法,VFP的数据库,FoxPro的数据库亦可通过类似方法解决!
trybird 2000-03-19
  • 打赏
  • 举报
回复
对不起,昨天确实喝多了,高了
可能你确实照我讲的做过了,不然不会给我分的

我还想说的是最好不要用直接设置属性的方法来打开Database和Table,
而应在程序里写代码来控制它。比如:

在窗体创建时这样写:

void __fastcall TForm1::FormCreate(TObject *Sender)
{
Database1->Connected=true; //OR Database1->Open();
Table1->Active=true; //OR Table1->Open();
}

在窗体关闭时这样写:

void __fastcall TForm1::FormClose(TObject *Sender, TCloseAction &Action)
{
Database1->Connected=false; //OR Database1->Close();
Table1->Active=false; //OR Table1->Close();
}

DBNavigator构件基本上可以满足你的控制需要,它们可以滚动记录到头一条,前一个,后一个,末一条,
还能对记录增加、删除、修改、提交、取消及刷新——
你也可以对DBNavigator的VisibleButtons属性进行修改,使得只有你想要用的按钮才显示出来。
你也可不用DBNavigator,而自己构造按钮来实现对DB表的操作,只要在你的按钮的Click单击事件中加如下的代码即可——

头一条记录
Table1->First();

前一个记录
Table1->Prior();

后一个记录
Table1->Next();

末一条记录
Table1->Last();

增加记录
Table1->Insert();//OR Table1->Append();

删除记录
Table1->Delete();

修改记录
Table1->Modify();

提交记录
Table1->Post();

取消对记录的操作
Table1->Cancel();

刷新记录
Table1->Refresh();
trybird 2000-03-18
  • 打赏
  • 举报
回复
还有——
trybird 2000-03-18
  • 打赏
  • 举报
回复
你一定小心不要真在这样的一直激活状态下,运行你 要运行你的
DB,要手动Open和Close你的DB和Table.

等我缓绶劲儿,再和你详说——
zenz 2000-03-18
  • 打赏
  • 举报
回复
用DiamondAccess的控件库吧!我记得有for BCB的。
trybird 2000-03-18
  • 打赏
  • 举报
回复
当然,您现在运行应该也能对记录增删改及滚动。
用DBNavigator的按钮。
不过还有些要注意的地方我要嘱咐嘱咐你-----

……

不过我可能有点不胜酒力了————

这55度红星牌二锅头---------
真闹得慌!!!!!!!!!!!!!
zenz 2000-03-18
  • 打赏
  • 举报
回复
去http://www.islamov.com下载DiamondAccess的控件。然后Email给我,我告诉你怎样注册。
caomg 2000-03-17
  • 打赏
  • 举报
回复
如果能增删、查询、滚动就请大虾赐教。
如果能够创建更好,也请赐教。
trybird 2000-03-17
  • 打赏
  • 举报
回复
再次,连接数据库。

1.设置DataSource1的数据集DataSet属性为Table1。

2.设置Table1的数据集DatabaseName属性为MyAcDB。TableName属性为你要在你的
MyAccess.MDB数据库中操作的数据库表名,从下拉列表中选一个吧。比如假设咱们
的是MyTable。

3.将Database1的Connected属性设置为true,激活数据库连接。

4.将Table1的Active属性设置为true,激活表连接。

5.这时虽然还在设计时,但你应该已能看到你的数据网格中的数据了。说明数据库
已连上了。
trybird 2000-03-17
  • 打赏
  • 举报
回复
其次,设置数据访问和数据控制构件。

1.在BCB的IDE中,点击Data Access构件页,分别点选TDatabase,TTable及TDataSource
构件放在窗体上,它们的默认名分别是Database1,Table1和DataSource1。

2.双击Database1,打开Form1->Database1 Database对话框。单击Driver name组合框
的下拉按钮,在下拉菜单中选“Microsoft Access Driver (*.mdb)”。
再单击"Default"按钮,在“Parameter overrides:”的框中配置DB装载参数:
ODBC DSN=MyAccessDSN
DATABASE NAME=MyAccess.MDB
将Login prompt复选框前的勾号取消,这样登录DB时就不会询问你用户名和口令了。
最后在Database的Name文本框中输入你命名的DB名,比如咱给它命名为MyAcDB。
然后单击OK按钮。

3.点击BCB的Data Access构件页,分别点选TDBGrid和TDBNavigator
构件放在窗体上,它们的默认名分别是DBGrid1和DBNavigator1。
将它们的DataSource属性都设为DataSource1。
trybird 2000-03-17
  • 打赏
  • 举报
回复
首先,建立指向你的Access数据库的ODBC数据源名称(Data Source Name,简称DSN)

1.Windows开始菜单 -> 设置 -> 控制面板

在控制面板中双击“ODBC Data Source(32bit)”(32位ODBC数据源)

2.单击 “User DSN” 舌页,再单击“Add" 按钮,进入选择数据库驱动程序界面,
点选“Microsoft Access Driver(*.mdb)”, 再单击“Finish”(完成)按钮。

3.确保System Database的选取是“None”(默认)。
在Data Source Name文本框中输入你自己命名的DSN,比如我起了“MyAccessDSN”的
名字,Description是对DSN的说明注释,你可以不输;再请单击Database框架中的
Select按钮——

4.在打开的Select Database对话框中选择你的Access数据库文件,这里假设它是
MyAccess.MDB,选上后单击OK,再OK,你已经能够看到自己设定的User DSN了,
单击“确定”,完成对DSN的设定。记住咱们的DSN是“MyAccessDSN”。
trybird 2000-03-17
  • 打赏
  • 举报
回复
对不起呵,周末,朋友叫去喝酒了——
迟到了!!!
风子 2000-03-17
  • 打赏
  • 举报
回复
我也有问题:怎么将VF库转为Acesss库?能用BCB创建.MDB库吗?
csdn2000 2000-03-17
  • 打赏
  • 举报
回复
用ODBC搞定
Wingsun 2000-03-17
  • 打赏
  • 举报
回复
使用Access的数据导入功能可以将VF数据库的内容导入
yuanyingtanxi 2000-03-17
  • 打赏
  • 举报
回复
关注
trybird 2000-03-17
  • 打赏
  • 举报
回复
可能你还没连上DB吧?
我马上要下班了,不能耽误同事时间。我打字还慢----
等我回家,也就是过两个小时左右(大约8点半)详细回你---
这其间要有其他大侠回你-----
你就试试,基本没问题,我一定会来的-----
菜鸟(Trybird)非轻言寡诺者也!
Wingsun 2000-03-16
  • 打赏
  • 举报
回复
控制是何意思。如何控制,读去修改数据吗?
trybird 2000-03-16
  • 打赏
  • 举报
回复
是呵,如果仅仅对已有的.MDB文件中的记录增删改及滚动,那就太简单了。
立马就能做------
是不是一定要用BCB创建.mdb库?
david_sh 2000-03-16
  • 打赏
  • 举报
回复
要如何控制?需要创建.mdb库吗?还是仅仅修改库中的数据?

1,178

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder 数据库及相关技术
社区管理员
  • 数据库及相关技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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