PHP 链接数据库 出现错误 大家进来看下。。。。

yinxiaoqi 2010-10-20 10:17:00

$conn=new COM('ADODB.Connection') or die('连接错误');
$myDSN="Provider=SQLNCLI.1;Persist Security Info=True;Data Source=localhost;User ID=sa;Password=sasa;Initial Catalog=db_php";
$conn->open($myDSN) or die('连接语句无效');

$sql="select * from [username]";
$rs=$conn->execute($sql);
if($rs->eof()){
print('没有任何数据');

}else{
while(!$rs->eof()){
echo $rs->fields[0]->value;
$rs->movenext();

}

}


上面代码出现 “连接语句无效” 什么原因呢。


...全文
64 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
CunningBoy 2010-10-20
  • 打赏
  • 举报
回复
少一个左大括号,修正如下:
$myDSN="PROVIDER=MSDASQL;DRIVER={SQL Server};SERVER={localhost\SQLSERVER};DATABASE=db_php;UID=sa;PWD=sasa;";

你要将SERVER的值改为你自己的数据库服务器的名字和SQLServer2005的实例名
CunningBoy 2010-10-20
  • 打赏
  • 举报
回复
$myDSN="PROVIDER=MSDASQL;DRIVER={SQL Server};SERVER=localhost\SQLSERVER};DATABASE=db_php;UID=sa;PWD=sasa;";
yinxiaoqi 2010-10-20
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 luciferstar 的回复:]
你连接的是什么数据库?
用ADODB连接不同的数据库,会需要不同的接口。如果接口不正确,就会无法连接。
比如,有的是uid,有的是user id。
先确认一下你的数据库吧。
[/Quote]
我的数据库 是 sqlserver2005 具体怎么链接 帮我 写下 谢谢啦。
LuciferStar 2010-10-20
  • 打赏
  • 举报
回复
你连接的是什么数据库?
用ADODB连接不同的数据库,会需要不同的接口。如果接口不正确,就会无法连接。
比如,有的是uid,有的是user id。
先确认一下你的数据库吧。
yinxiaoqi 2010-10-20
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 luciferstar 的回复:]
Provider=SQLNCLI.1;Persist Security Info=True;Data Source=localhost;User ID=sa;Password=sasa;Initial Catalog=db_php

这里不符合当前所连接的数据库。
[/Quote]

不符合当前所连接的数据库 是什么意思呢。是我的数据库有问题吗?
LuciferStar 2010-10-20
  • 打赏
  • 举报
回复
Provider=SQLNCLI.1;Persist Security Info=True;Data Source=localhost;User ID=sa;Password=sasa;Initial Catalog=db_php

这里不符合当前所连接的数据库。
LuciferStar 2010-10-20
  • 打赏
  • 举报
回复
odbc_connect("Driver={SQL Server};Server=$dbserver;Database=$dbname;", $dbuser, $dbpsd);
MSSQL,有的Server名字是“机器名(或IP)\实例名”,有的干脆只有机器名或者IP地址。
我测试的一个是VS自带的EXPRESS版本,所以是机器名\SQLEXPRESS,而另一台企业版的,则只有机器名。
你可以去企业管理器里登陆看看,哪个名字可以正确登陆。
另外,别忘记开启远程访问设置。
yinxiaoqi 2010-10-20
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 cunningboy 的回复:]
少一个左大括号,修正如下:

PHP code
$myDSN="PROVIDER=MSDASQL;DRIVER={SQL Server};SERVER={localhost\SQLSERVER};DATABASE=db_php;UID=sa;PWD=sasa;";

你要将SERVER的值改为你自己的数据库服务器的名字和SQLServer2005的实例名
[/Quote]

$myDSN="PROVIDER=MSDASQL;DRIVER={SQL Server};zc38={localhost\这里是实例名};DATABASE=db_php;UID=sa;PWD=sasa;";

但是我怎么查询 我的数据库的实例名呢,谢谢啦。

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧