通过ADOConnectionstring从delphi-7应用程序建立ODBC连接

通过ADOConnectionstring从delphi-7应用程序建立ODBC连接,delphi,delphi-7,delphi-6,Delphi,Delphi 7,Delphi 6,背景: 用Delphi-7或-6编写的应用程序(通过.exe文件进行搜索)。叫西格曼内斯特 我已经移动到了新服务器,剩下的就是运行在SQL server下的SigmaNest数据库。经过数小时的故障排除,将该数据库迁移到新服务器。故障已覆盖此SQL server应用程序的所有方面。默认情况下未启动服务、向导不工作、缺少全文内容、许多地方需要右键单击等。。迷路的事还在继续 目前,我在新硬件上有一个SQL server和数据库SNDBase(sigmanest),但无法从客户端连接 不,这不可能是对

背景:

用Delphi-7或-6编写的应用程序(通过.exe文件进行搜索)。叫西格曼内斯特

我已经移动到了新服务器,剩下的就是运行在SQL server下的SigmaNest数据库。经过数小时的故障排除,将该数据库迁移到新服务器。故障已覆盖此SQL server应用程序的所有方面。默认情况下未启动服务、向导不工作、缺少全文内容、许多地方需要右键单击等。。迷路的事还在继续

目前,我在新硬件上有一个SQL server和数据库SNDBase(sigmanest),但无法从客户端连接

不,这不可能是对的,我想了想,并寻找了其他选择。。4-5点击MySQL工作台,我在linux测试盒上运行它。。。好

但现在问题来了

SigmaNest使用
ini
文件进行配置

所以在我找到的一个
ini
文件中

; 1 = Paradox, 2 = MSSQLServer or MSDE
ADOConnectionString=Provider=SQLOLEDB.1;Data Source=ODIN\SIGMANEST;User ID=sigmanest;Password="";Persist Security Info=True;Initial Catalog=SNDBase;
好的。。在客户端上安装了Mysql odbc驱动程序并建立了连接。到目前为止都在工作

转到google并找到mysql的AdoConnectionString

ADOConnectionString=DRIVER={MySQL ODBC 5.2a Driver};SERVER=192.168.100.19;PORT=3306;DATABASE=SNDBase;UID=sigmanest;PASSWORD=;OPTION=4;
但应用程序不会启动。只需返回sigmanest的数据库连接配置工具

我已将此信息发布到SigmaTek,但我给出的唯一回复是通过SQLOLEDB发送的带有MS sql server连接字符串的邮件

我已经搜索了驱动器,但没有找到anny dbex*.dll文件,这意味着它们不使用dbExpress组件(我猜)

因此,是否有一些缺少的dll文件没有随应用程序一起提供。或者这种东西是在程序内部硬编码的

有人知道如何继续吗

或者我应该放弃mysql梦想,去浪费sql server后端的空间

每零

附言。 SigmaNest.exe具有时间戳2006-05-19
DS.

很抱歉,我不知道如何处理这个问题。可以说,stackoverflow似乎把世界上所有的人才都聚集在同一个屋檐下

肯·怀特:是的,你是对的,我不能在这个应用程序上使用MySQL(经过数小时的谷歌搜索和测试)

无论如何,我成功地建立了这样的连接(也许有些东西对其他人有用,有些是与Delphi相关的)

  • 首先,您必须下载mysql连接器

  • 从“用户DSN”选项卡下的控制面板->管理工具->数据源(ODBC)创建ODBC连接

  • 您可以使用记事本创建新的文本文件

  • 重命名扩展名为.udl的文件

  • 双击它并填写对话框

  • 在记事本中打开文件,您就有了连接字符串

但是你的问题还没有结束。。SQL和MySQL的不同将使你的应用程序停止。。例如,MySQL中的布尔值被声明为tinyint(0=false 1=true)

这里提到了一个解决方法

所以我的努力没有任何回报,但上面的一些可能会引起其他人的兴趣


Per Nils.

此问题不属于此处,可能是超级用户?这是针对第三方应用程序的供应商支持问题(针对SigmaTek),不适用于StackOverflow。然而,
1=Paradox、2=MSSQLServer或MSDE
都有标志,这表明它必须是这三个标志之一——MySQL-MSSQLServer/MSDE(MSSQLServer/MSDE是微软的产品,MySQL不是,它们决不是彼此的直接替代品)。这个旧应用程序又开始出现问题,正在寻找替代品。该应用程序可以处理paradox和ms sql。最好的选择是firebird,但在理解它如何工作以及如何移动数据集方面存在问题。我只是想知道,在MySQL中,您是否可以随时更改变量的类型?我的意思是,当应用程序的select语句请求它时,在boolean和tinyint之间转换?