2012-04-20 67 views

回答

3

主要是因为它会相当复杂,对目标受众没有多大的好处。如果你想要C-ISAM,你知道在哪里可以找到它。如果你想要Informix和SQL,你知道在哪里可以找到。

实际上,有C-ISAM数据库。该工程以两种不同的方式:

  1. 的数据可以存储在Informix数据库之外的C-ISAM文件,但在数据库内的代码可以把表作为数据库的一部分,阅读和写作文件。 C-ISAM应用程序可以继续不变地访问数据; ESQL/C程序(以及ODBC,JDBC,...)也可以通过Informix访问数据。

  2. 数据可以存储在Informix数据库内的基于RSAM的表中,因此普通的SQL程序可以访问数据。同时,与特殊版本的C-ISAM库重新链接的C-ISAM程序可以访问实际在Informix数据库中的数据,就像它们是正常的C-ISAM文件一样。

这并不是一个真正意义上的长期解决方案,但它可以帮助两个系统之间的桥接。所以,谨慎对待; C-ISAM数据库更像是一种理论上的解决方案,而不是一种实际的解决方案,尽管在真正需要时它可以很好地工作。

Informix SE内部使用C-ISAM。它没有被设计成允许C-ISAM作为访问方法;只要您将数据库中的C-ISAM文件的权限设置为相当宽松的权限(公开写入访问—危险!)或者使程序适当地进行SGID,您也可以使用C-ISAM作为访问方法— (setgid)的。这意味着SGID'informix',并导致其自身的许可问题。因此,尽管可以完成— C-ISAM程序可以访问SE数据文件—但它通常不是一个好主意。

相关问题