<script type="text/javascript"> </script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>

MySQL利用MyODBC程序为ODBC提供支持。

16.1MyODBC支持的

MyODBC是在Windows95和WindowsNT上的一个32位ODBC(2.50)level0驱动程序。我们希望谁能将它移植到Windows3.x。

MyODBC已经用Acess、Admndemo.exe、Builder、CenturaTeamDeveloper(早先是GuptaSQL/Windows)、ColdFusion(在和用ServerPack5的NT上)、CrystalReports、DataJunction、Notes4.5/4.6、SBSS、PerlDBD-ODBC、、Powerbuilder、Powerdesigner32位、VC++和。

如果你听说有任何其他的应用程序用MyODBC一起工作,请把它寄到!

大多数程序应该可用MyODBC工作,但对下面列出的每一个,我们自己测试了它或从它运行的一些用户得到了证实:


程序

说明

为使Access工作:你应该在桌中有主键。你应该在所有你想要能被修改的表中有一个时间戳记。仅使用双精度浮点数的字段。当用单精度浮点数进行比较时,Access失败。当与 MySQL连接时,设置“Returnmatchingrows”(返回匹配的行)选项域。在NT上的Access将报告

列为

。如果你想要有

列,你应该用

把列改成

。Access不能总是正确地处理

列。如果你对此有一个问题,把列改为

。在一些情况下,Access可以产生不合法的SQL查询,而

MySQL不能理解。你可以通过从Access菜单

来修正它。

DataJunction 你必须改变它来输出 而非

,因为它以能引起

MySQL困惑的方式导出后者。

Execl 工作。一些建议:如果你对日期有问题,试着使用 函数作为字符串选择他们。例如:

selectCONCAT(rise_time),CONCAT(set_time)fromsunrise_sunset;

这种方式作为字符串检索出的值应该被97识别为时间值,例子中的目的是欺骗ODBC认为列是“字符串类型”。没有,ODBC知道列是时间类型,而Excel不理解它。注意这是Excel的一个错误,因为它自动将一个字符串转换为一个时间。如果数据源是一个文本文件,这问题将很大,但是当数据源是对每列报告准确类型的一个ODBC连接时,只是有点傻。

ODBCadmin

为 ODBC的测试程序。

你必须使用DBE3.2或更新。当与 MySQL连接时,设置“Don'toptimizecolumnwidth”(不优化列宽度)选项域。另外,有一些潜在有用的delphi代码安装一个

ODBC入口和针对My

ODBC的一个BDE的入口(BDE入口需要一个BDEAliasEditor,可以到DelphiSuperPage上免费拥有):(感谢BryanBrunton)

fReg:=TRegistry.Create;fReg.OpenKey('/Software/ODBC/ODBC.INI/DocumentsFab',True);fReg.WriteString('Database','Documents');fReg.WriteString('Description','');fReg.WriteString('Driver','C:/WINNT/System32/myODBC.dll');fReg.WriteString('Flag','1');fReg.WriteString('Password','');fReg.WriteString('Port','');fReg.WriteString('Server','xmark');fReg.WriteString('User','winuser');fReg.OpenKey('/Software/ODBC/ODBC.INI/ODBCDataSources',True);fReg.WriteString('DocumentsFab','MySQL');fReg.CloseKey;fReg.Free;Memo1.Lines.Add('DATABASENAME=');Memo1.Lines.Add('USERNAME=');Memo1.Lines.Add('ODBCDSN=DocumentsFab');Memo1.Lines.Add('OPENMODE=READ/WRITE');Memo1.Lines.Add('BATCHCOUNT=200');Memo1.Lines.Add('LANGDRIVER=');Memo1.Lines.Add('MAXROWS=-1');Memo1.Lines.Add('SCHEMACACHEDIR=');Memo1.Lines.Add('SCHEMACACHESIZE=8');Memo1.Lines.Add('SCHEMACACHETIME=-1');Memo1.Lines.Add('SQLPASSTHRUMODE=SHAREDAUTOCOMMIT');Memo1.Lines.Add('SQLQRYMODE=');Memo1.Lines.Add('ENABLESCHEMACACHE=FALSE');Memo1.Lines.Add('ENABLEBCD=FALSE');Memo1.Lines.Add('ROWSETSIZE=20');Memo1.Lines.Add('BLOBSTOCACHE=64');Memo1.Lines.Add('BLOBSIZE=32');AliasEditor.Add('DocumentsFab','MySQL',Memo1.Lines);1 <script type="text/javascript"> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>

<script type="text/javascript"> </script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>