|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
exit来实现结束后面的PHP语句的执行,缩小调试范围,特别是数据库交互的程序,先输出个SQL语句看看,对了,再分析怎么会插入/删除不成功呢?这样对查错很有帮助。server|sqlserver 提出成绩
头几天做了一个十分奇异的项目,我公司开辟了一套基于中国联通SGIP协定的SP端短动静办事软件,供应联通130短佩服务。这套体系是Windows 2000下的,数据库采取的是微软SQLServer2000,而且已正常运转了一段工夫。而比来因为要在WEB上供应短动静用户的一些信息,就需求从WEB上读写SQLServer数据库,原本SQLServer数据库的最好伙伴应当是微软IIS ASP办事端剧本,但我公司一贯以为IIS+ASP的不乱性和平安性都不尽如意,但愿可以在Linux下用PHP剧本读写SQLServer。
剖析成绩
原本PHP剧本读写SQLServer是没有甚么成绩的,在Apache for windows和Windows IIS下可以任务的很好,普通可以经由过程ODBC或SQLServer Client毗连,这都是Windows上面现成的。然而在Linux上面没有现成的ODBC和SQLServer Client,需求咱们本人装置。
处理成绩
1、相干软件
freetds 来历:ftp://ftp.ibiblio.org/pub/Linux/ALPHA/freetds/freetds-0.53.tgz
这个软件可以用Linux和Unix毗连MS SQLServer和Sybase数据库。
2、装置设置装备摆设步调
第一步:编译装置freetds:
失掉freetds-0.53.tgz后
cp freetds-0.53.tgz /tmp/. (拷贝freetds包到/tmp目次)
cd /tmp (进入目次)
tar zxvf freetds-0.53.tgz (解压)
cd freetds-0.53 (进入解压后目次)
./configure Cprefix=/usr/local/freetds --with-tdsver=7.0
gmake (生成Makefile,我实验过,make也能够)
gmake install (装置)
关于下面configure我想说一下,--prefix=/usr/local/freetds是指装置到/usr/local/freetds这个目次中,--with-tdsver=7.0是指装置tds 7.0版本(最开是我没有加这个编译参数,了局依照默许编译为5.0。5.0毗连数据库的端口是4000,不是SQLServer的1433)
第二步:从头编译PHP4
./configure [--with-apxs --with-mysql...] --with-sybase=/usr/local/freetds(请注重是sybase)
make
make install
第三步:设置装备摆设freetds
vi /usr/local/freetds/etc/freetds.conf
详细设置装备摆设见该文件中的申明
例: (典范设置装备摆设)
[sqlserver]
host = sql_server_name_or_host_ip (你的SQLServer机械名字或IP地址)
port = 1433
tds version = 7.0
在这个设置装备摆设文件中可以设置装备摆设Windows域上岸或SQLServer账号上岸两种体例
第四步:设置装备摆设php.ini文件
找到 ;extension=mssql70.so
将正文;去失落成
extension=mssql70.so
第五步:在php中创立数据库毗连
$link=mssql_connect("sqlserver",$your_username,$your_password) or die (“can’t Connect to Database”);
echo $link;
在阅读器中运转下面剧本, 假如你失掉一个link号那末祝贺,你已设置装备摆设好了,假如呈现Call to undefined function: mssql_connect() 那申明细心看下面的装置设置装备摆设进程看你哪一步没有对。
注重:sqlserver称号是在/usr/local/freetds/etc/freetds.conf中界说的host参数,假如你写的IP地址,就是IP地址。
其他数据库操作参考相干mssql函数
注重,在sql语句中不撑持中文!!!
第六步:调试
假如呈现不克不及毗连,请在freetds设置装备摆设文件中找到;dump file = /tmp/freetds.log这一行,正文失落后面的分号,再履行一下测试剧本,观察/tmp/freetds.log文件,它可以告知你良多失足的信息匡助你扫除成绩。 学校并没有那么多的时间可以让我们在实际开发上面。 |
|