Mar*_*rio 5 vb.net connection-string advantage-database-server
我正在VB.NET中开发一个必须连接到表Advantage(ADT)的应用程序
我使用以下连接字符串:
DSN=kantechX;DataDirectory=C:\DB\Data;SERVER=NotTheServer;
Compression=Never;DefaultType=Advantage;Rows=False;
collation=SPANISH_VFP_CI_AS_1252;AdvantageLocking=ON;Locking=Record;
MemoBlockSize=64;MaxTableCloseCache=5;ServerTypes=1;
TrimTrailingSpaces=False;EncryptionType=RC4;FIPS=False
Run Code Online (Sandbox Code Playgroud)
建立连接后,将产生以下错误:
错误7200:AQE错误:状态= HY000;NativeError = 5175 [iAnywhere解决方案] [SQL优势] [ASA]错误5175:创建的索引文件与当前使用的排序规则不同。表名:卡
我们还使用Advantage Data Architect 1110尝试了连接,并且在打开表时显示此错误:
错误7200:AQE错误:状态= HY000;NativeError = 5209 [iAnywhere解决方案] [SQL优势] [ASA]错误5209:使用了不同的排序规则,这可能导致查询优化不佳。表排序规则:(无),排序规则索引:SPANISH_VFP_CI_AS_1252表名称:Card
架构师要求对表重新编制索引,当我们执行该操作时,它不会显示警报2,但是当我们尝试从vb.net与ODBC连接时,异常会保留第一条错误消息。
我已经检查了adslocal.cfg文件,但没有发现任何有用的东西
我怎么解决这个问题?
感谢 Jens 链接和我在谷歌上找到的其他信息,我终于可以解决问题了。
\n\n步骤如下:
\n\n备份文件(以防万一)
在要连接 ADT 表的计算机中安装 Advantage Architect。
下载并安装 .NET 数据提供程序(保留语言 [当前语言] 和编码 [美国] 的默认设置),我们在其中提供 .NET 解决方案
在我们拥有 .NET 解决方案的计算机上下载并安装 Advantage ODBC 驱动程序(保留语言 [当前语言] 和编码 [美国] 的默认设置)。\n\xc2\xa0\xc2\xa0\xc2\xa0\ xc2\xa0\xc2\xa0\n
4.1 尝试安装32位版本或64位,虽然我的系统是64位我必须安装32位才能使其工作
打开 Architect 并创建与现有表(ADT 文件)的新连接
在 Architect 中,双击打开表\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0
6.1 出现一个警告,表明该表是用不同的语言编码的,如果要更改连接参数(永久,仅这一次或忽略),我们说要永久更改(如果没有永久选择,我们可以不执行以下步骤)\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0
6.2 这里发生以下两种情况之一:\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0
\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0 - 它显示一条警报,指示表的索引处于另一个排序规则中,并建议重新索引(这是正是需要做什么)\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0
\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0 - 表示该表正在使用中,无法打开,这种情况下必须复制分开文件并重复步骤 5 和 6,然后覆盖被阻止的文件。
仅为了安全起见,我们将执行一个允许多个排序规则索引的命令 EXECUTE PROCEDURE sp_AllowMultipleCollations('', true),第一个参数为空,'',表示适用于所有编码而不是特定的“Spanish_vfp_ci_as_1252”,第二个参数, true,表示自由限制。\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0
7.1 要运行此命令,请在 Architect 的菜单中查找使用 SQL 运行或创建手动查询的选项
DSN = [在 Windows 中创建的 ODBC];DataDirectory = [ADT 文件的路径]; 服务器=非服务器;压缩 =;\n默认类型 = Advantage; 行=假;语言 = SPANISH_VFP_CI_AS_1252;\nAdvantageLocking = ON; 锁定=记录;备忘录块大小 = 64; 最大表关闭缓存 = 5; ServerTypes = 1;\nTrimTrailingSpaces = False; 加密类型 = RC4; DDPassword = kantech;\nFIPS = False; TLSCiphers = AES128-SHA: AES256-SHA: RC4-MD5
\n\n 9.1 if when You run the application doesnt allow use odbc for any reason maybe you you must add the advantage DLL in the solution references (Right click in the solution folder > add references > search in the COM for Advantage) .\n
Run Code Online (Sandbox Code Playgroud)\n
归档时间: |
|
查看次数: |
692 次 |
最近记录: |