SQLE_NOT_PUBLIC_ID Sybase mobilink 错误

Posted

技术标签:

【中文标题】SQLE_NOT_PUBLIC_ID Sybase mobilink 错误【英文标题】:SQLE_NOT_PUBLIC_ID Sybase mobilink error 【发布时间】:2016-05-02 11:03:00 【问题描述】:

我正在开发一个 ios 项目,该项目有一个使用 mobilink 与 Sybase Sql Anywhere 12 数据库同步的 Sybase(ultralite)数据库。

一切正常,直到今天我决定向主数据库添加一些字段,以便它们同步到主数据库。

我已经从主引擎更新了统一数据库的模式,然后我从统一引擎更新了远程数据库的模式,然后我将添加的字段映射在一起,并部署了一个新的 ultralite 数据库。 请注意,这不是我第一次做类似的任务,我总是添加字段和同步数据库..

更新后,当我使用空白的 ultralite 数据库进行同步时,mobilink 将失败,仅给出以下错误:同步失败:-1305 (MOBILINK_COMMUNICATIONS_ERROR) %1:201 %2: %3:0

我研究了 sybase 中的错误号 201,它指向:SQLE_NOT_PUBLIC_ID 在 sybase 文档中,错误的可能原因是:

“SET OPTION 语句中指定的选项仅为 PUBLIC。您不能为任何其他用户定义此选项。”

我试图重新部署,我试图将引擎移动到 Windows pc,都给出相同的错误..我不知道这个 SET OPTION 语句来自哪里以及我该如何解决它..

感谢任何提示!

【问题讨论】:

【参考方案1】:

问题只是在设置 mobilink 参数时网络超时值过小造成的。

info.stream_parms = (char*) @"host=192.168.0.100;port=3309;timeout=1"

我刚刚将值从 timeout=1 更改为 timeout=300 并且它起作用了!

【讨论】:

以上是关于SQLE_NOT_PUBLIC_ID Sybase mobilink 错误的主要内容,如果未能解决你的问题,请参考以下文章

sybase如何查看自定义函数

sybase中如何查询前一天的数据

sybase如何建库? 如何先建立服务?万分感谢!!!!!!!!!

在sybase中怎样用output命令把表中的数据导出来?

linux下安装完sybase数据库后,怎么连接呀,刚学sybase,还不会用

nodejs sails sybase连接错误