ASP+SQL SERVER 问题,ASP怎么也连不上远程SQL SERVER :(

xiaoquanwen 2004-07-07 03:48:47
我的服务器名称是taiwan ,我的SQL server一个数据库是salary。代码如下:

<%
Set conn = Server.CreateObject("ADODB.Connection")
DSNtemp="DRIVER={SQL Server};SERVER=taiwan;UID=mis2;PWD=xiao;DATABASE=salary"
conn.open DSNtemp
%>


Microsoft VBScript 编译器错误 错误 '800a03f6'

缺少 'End'

/iisHelp/common/500-100.asp,行242

Microsoft OLE DB Provider for ODBC Drivers 错误 '80040e4d'

[Microsoft][ODBC SQL Server Driver][SQL Server]Login failed for user 'NT AUTHORITY\ANONYMOUS LOGON'.

/xiao/1.asp,行4


如果我把程序改成连接我本机的SQL server,就没有问题确 misnew是我本机名称

<%
Set conn = Server.CreateObject("ADODB.Connection")
DSNtemp="DRIVER={SQL Server};SERVER=misnew;UID=mis2;PWD=xiao;DATABASE=salary"
conn.open DSNtemp
%>



谢谢高手指点

...全文
204 22 打赏 收藏 转发到动态 举报
写回复
用AI写文章
22 条回复
切换为时间正序
请发表友善的回复…
发表回复
arbran 2004-07-08
  • 打赏
  • 举报
回复
我想是远程SQL SERVER的缘故!
daxiatt 2004-07-08
  • 打赏
  • 举报
回复
fastson()
应该是taiwan机子的sqlserver的身份验证设置为了 仅Windows

具体操作为

到taiwan这台机子上,打开它的sqlserver企业管理器,选择 (local) 节点 ,属性--安全性,身份验证设置为 sqlserver和windows

net_boy 2004-07-08
  • 打赏
  • 举报
回复
我看你的问题 好像就是验证的问题 改成sql server 和 windows 验证 试试看
再把机器名换成ip试试看
net_boy 2004-07-08
  • 打赏
  • 举报
回复
怎么个远程法 局域网 还是广域网 如果是局域网 机器名就可以
广域网 就得ip了
还有就是确认 远端确实存在 登陆的用户 然后看看 验证方式 如果远端是仅windows验证
而你的用户又是sql server 用户 当然不行了 还有就是 看看权限是否够
wsdzmhongm 2004-07-08
  • 打赏
  • 举报
回复
端口号
xxrl 2004-07-08
  • 打赏
  • 举报
回复
如果是远程要加上端口号
sxsgssgs 2004-07-08
  • 打赏
  • 举报
回复
<%
Set conn = Server.CreateObject("ADODB.Connection")
DSNtemp="DRIVER={SQL Server};SERVER=taiwan;UID=mis2;PWD=xiao;DATABASE=salary"
conn.open DSNtemp
%>


老兄呀,SERVER=202.66.88.77 这个地方应该是远程服务器的IP
evlon 2004-07-08
  • 打赏
  • 举报
回复
你的数据库服务是不是打开了混合验证模式?如果没有打开,就不能从远程用你上述的方法进行连接. 还有如是SQL Server 所在的机子是 win2003 操作系统 ,请确认其打上了 Sql server 的SP3补丁
椅子 2004-07-08
  • 打赏
  • 举报
回复
to anwell(清风)
/*
哈哈,得用IP或域名吧.

在system32\drivers\ets\host文件中加入:
xxx.xxx.xxx.xxx salary

这样只能自己用,不可能让每个浏览者都加吧
*/

你没搞错吧?浏览者需要去建立数据库连接吗????
在web服务器加上就行了
xiaoquanwen 2004-07-08
  • 打赏
  • 举报
回复
我用odbc 是能连上我的sqlserver 的

用pb也能连上的
fastson 2004-07-07
  • 打赏
  • 举报
回复
应该是taiwan机子的sqlserver的身份验证设置为了 仅Windows

具体操作为

到taiwan这台机子上,打开它的sqlserver企业管理器,选择 (local) 节点 ,属性--安全性,身份验证设置为 sqlserver和windows
yeno 2004-07-07
  • 打赏
  • 举报
回复
远程的,如果局域网内的可以直接用别人的机器名连接,如果是局域网外的则要用IP连接
主机名本来就是IP的一个映射,还有,

楼主在连接远程的数据库时,首先要确认用户名和密码是否正确,其次就是对方给你开了登陆的权限没有?
最好你先试着在SQL Server企业管理器里看能否连上对方的SQL Server服务器,如果能连接上的话,那么你的程序应该连接没问题的,如连接不上,那证明不是你程序的问题
anwell 2004-07-07
  • 打赏
  • 举报
回复
哈哈,得用IP或域名吧.

在system32\drivers\ets\host文件中加入:
xxx.xxx.xxx.xxx salary

这样只能自己用,不可能让每个浏览者都加吧
xing0091 2004-07-07
  • 打赏
  • 举报
回复
如果远程数据库服务器没开放个人的端口,你就无法连接,因为大部分服务器值针对web服务器开放端口
椅子 2004-07-07
  • 打赏
  • 举报
回复
在system32\drivers\ets\host文件中加入:
xxx.xxx.xxx.xxx salary
PeterPanF 2004-07-07
  • 打赏
  • 举报
回复
ConnStr = "Provider=Sqloledb; User ID=mis2; Password=xiao; Initial Catalog =salary; Data Source=taiwan;"
dragonlyf 2004-07-07
  • 打赏
  • 举报
回复
<%
Set conn = Server.CreateObject("ADODB.Connection")
DSNtemp=""Provider=Sqloledb;Server=123.22.32.22(ip地址);Database=salary;UID=mis2;PWD=xiao;"
conn.open DSNtemp
%>
alenping 2004-07-07
  • 打赏
  • 举报
回复
用DSN来連,先通过本机建一个数据源ODBC再用下面方法就可以了。
DSN=myDsn;Uid=username;Pwd=pasasword;


comehope 2004-07-07
  • 打赏
  • 举报
回复
SERVER=taiwan;
写成IP地址或完整的域名。
lonaerd 2004-07-07
  • 打赏
  • 举报
回复
权限问题,你的ASP程序是放在你本机吧,数据库又是另外一台机器,那么你访问数据库服务器首先要确认你是否有访问数据库服务器的WINDOWS权限;如果有的话而且数据库服务器拒绝匿名登陆,那你要写在网上邻居登陆验证一下,再运行你的ASP程序就没问题了
加载更多回复(2)

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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