首先是mssql_connect方式,这种方式比较方便,但是可能会遇到服务器没有安装mssql模块的情况。 $ms_host = "192.168.0.xx"; //主机 $ms_user = "sa"; //用户名 $ms_pass = "aa"; //密码 $ms_data = "test"; $ms_connect = mssql_connect($ms_host, $ms_user, $ms_pass) or die("Couldn't connect to SQL Server on $$ms_host"); $ms_select = mssql_select_db($ms_data, $ms_connect) or die("Couldn't open database $ms_select"); $update $result = mssql_query($update); return $result; 报错可能是: (1) Call to undefined function mssql_connect() :这是因为没有开启mssql模块。 ①在php.ini中找到: extension=php_mssql.dll,和extension=php_pdo_mssql.dll,确定他们的前面没有“;”。 ②在php.ini中找到: extension_dir = "C:\php\ext\"。这里是extension目录,确认这个目录下有php_mssql.dll、php_pdo_mssql.dll。 ③php.ini的位置,extension_dir的位置可以使用phpinfo()查看。 (2)mssql_connect() : Unable to connect to server: 192.168.0.xx:连接失败,最可能是的是没有开启mssql的远程连接。这里有具体的开启方法。 http://tech./art/1106/20090225/1689795_1.html 当然,我的情况是这样设置了以后还是不能连接,后来我注意到我的服务器上有一个运行的图标,而那台虽然开启了远程连接,而且用SQL Server Management Studio也可以正常连接的服务器则没有这个图标,也许是这个原因。具体是什么情况改天问一下mssql的专家们。 因为另一台服务器是iis的,没有安装php的mssql模块,所以我采用odbc的连接方式,代码如下: $ms_host = "test"; //这里是ODBC的连接名称 $ms_user = "test"; //用户名 $ms_pass = "test123"; //密码 $ms_connect =odbc_connect($ms_host, $ms_user, $ms_pass) or die("Couldn't connect to SQL Server on MSSQL"); 在那台服务器上建立一个odbc连接,具体操作是: ①打开控制面板-管理工具-数据源 (ODBC)-“系统DSN”的选项卡,点击“添加”,在“创建新数据源”中选择“SQL Native Client”。 ②填入数据库基本资料,因为是本地数据库,所以填写(local) ③创建数据源。建议选择“使用用户输入登录ID和密码的SQL server验证”,这样可以限制用户的操作权限。 ④选择“默认数据库”,链接完成。 因为php手册上写的OBDC链接代码加载了ODBC |
|
来自: Dead n Gone > 《数据库》