linux环境php调用sqlServer2000存储过程遇到的问题
在linux环境中用php查询sql server并不是很常见的需求.一般来说如果一定要用sql server,编程语言我会先c#;如果一定要用php,数据库我就选mysql. 这几天的开发中,需要从一 个非开源的erp系统中获取数据,它使用的数据库是sql server 2000,并使用了很多存储过程.我们要基于这个系统做一些报表类的功能,并把这些功能集成到一个原有的PHP开发的crm系统中.需求来了~ 在linux环境中用php查询sql server可以用php自带的 mssql 扩展或 pdo_dblib 扩展,这两个扩展都需要freetds类库的支持. 在程序调试过程中我绕了很多弯,把里面几个重点记录一下. 1.tds版本设置 参考自: http://cubist.cs.washington.edu/doc/FreeTDS/userguide/x574.htm 我用的是sql server 2000,tds版本应该设置成8.0 ,修改 freetds.conf [global] # TDS protocol version # 前面不要带分号 tds version = 8.0 调试中发现,如果使用 pdo_dblib 扩展,这个版本设置没有什么影响,设置成几都能运行;如果使用 mssql 扩展,这个版本一定要设置成8.0,否则会报错. 2