domino数据同步到sql server

      最近有个需求,要同步domino数据到selservlet数据库,查看几年前ls使用odbc写的同步功能,还能正常使用,并且添加读者域进去功能(之前没有这个需求)、改进成网页配置版本(以前是CS配置)。发现desiger9.0的帮助已经没有了odbc的帮助,还得在老版本desiger查找更改内容,如果你有需要,可以做个交流QQ 873968102。最新的Domino mybatis 集成 、Domino hibernate 集成文章,建议看看,结合这篇的配置配置文件,可以达到意想不到的效果。

1)这是以前在某企业时,要求使用繁体字,还是CS开发的,当时这个工作前后大概一个月时间,每次要求新增加小功能(如果异常上传中断,要知道大概位置。只在中心库配置就可以,不用到对应的数据库添加视图。不修改原来文档的内容等),天天研究,虽然乏味,最后出成果了,还是很愉悦的。

2)这是近段时间,花几天转成bs配置,以方便配置。

**操作须知:

1 所有填写内容区分大小写。

2 本同步仅支持window系统,win2008有简单中文64系统下,上传nvarchar类型有时有问题,请使用varchar类型,win2003系统下没有问题,其它系统没有测试过

3 同一DB,如有其中一张form为"是否新加/修改" 为U或Y时,更新过滤视界的条件,均按现时该DB所有Form 对应的"DocModifiedDated" 日期及时间, "Deleted" 及"SoftDeleted" 更新相应视界。 如代理在运行中中断,请按DB,Form 在对应的"DocModifiedDate"手动填回"中断ModifiedDate"的时间,再将"是否新加/修改" 改为"U"如非为第一次导入数据),如是第一次导入数据时中断,填写"Y"。

4 先建立mssql数据库和表(名字规则在第5点),ls自动去判断表中有什么字段,再找文档对应的域值。

5 在建立对应SQL表名称时,要取数据库名称+窗体名(去空格),如数据库路径PublicNSF\Honour.nsf,窗体名Job Card,则SQL表名为HonourJobCard。

6 在建立对应SQL表中的字段注意如下:
1) 必须建立字段 id 类型varchar(60),这是保存Domino文檔UniversalID、ii 类型int null,表示最近一次上传记录个数。
2)参考字段 uptime类型datetime null,上传这条记录的时间(不是必须添加)
webdbname类型varchar null,当前文档的数据库web路径
Created,LastModified类型datetime null,当前文档创建时间和最后修改时间
allreder类型varchar(max),当前文档的所有读都域
att为附件内容varchar(max),这个功能只针对这个系统,不建议其它系统使用
3)不能包含字段 与Domino窗体中富域(RichText、Tich TextLite)名称同名,因为富域内容特殊,不能上传SQL
4)特殊列加前缀sql_ 当Domino域名为select、delete,这类名称为sql的保留名称,则要在列名称前加 sql_ 如 sql_select

7 SQL表有数据后,字段类型不能更改。如果要更改字段类型则先要删除SQL表中所有记录

8 目前Domino数据通过ODBC转SQL支持的数据类型, 非char,varchar,int,datetime,bit,float的sql数据类型,自动转成nvarchar。

发布了76 篇原创文章 · 获赞 17 · 访问量 8万+

猜你喜欢

转载自blog.csdn.net/weijia3624/article/details/50891045