昆明光标科技有限公司

关于数据库移植方面的记录

     在使用Castle ActiveRecord 进行软件开发的过程中,为了达到数据库移植,有些地方需要注意,否则,程序可能会嘎然而止,这些问题却不可能预知,因此应在以下几个地方注意:

1、数据长度必须准确定义,如果不能确定,宁可长也不必短。

     现象:在SqlServer下,如果字段长度比实际数据的长度小,数据库会自动截断,但在Postgresql中则抛了异常。

2、Binary(二进制)数据类型的选择。

     现象:如果对一个字段定义了“BinaryBlob” 数据类型,在SqlServer中一切正常,但在Postgresql中数据保存后,再读取到内存中,长度已是原数据的两倍长度。原因现在没有查清。

     解决办法: 将字段定义成"StringClob"数据类型,在使用时进行转换,可屏蔽不同数据库的差异。

posted @ 2012-01-10 14:53  杨义金  阅读(646)  评论(0编辑  收藏  举报
昆明光标科技有限公司