我一共两个文件
一个conn。asp
-----------------------------------
<%Set conn=Server.CreateObject("Adodb.Connection")
Conn.Open("Provider=Sqloledb;Server=localhost;DataBase=datasourse/data1.mdf;Uid=sa;Pwd=zz123")
If Err Then
Err.Clear
Response.Write "对不起,数据连接错误!"
Response.End
End If
set rs=server.CreateObject("adodb.recordset")
%>
------------------------------
一个是index。asp
--------------------------------------------
<[email protected]="VBSCRIPT" CODEPAGE="936"%>
<!--#include file="conn.asp"-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>列表 </title>
</head>
<body>
</body>
</html>
------------------------------------------
运行index.asp时候出错:
Microsoft OLE DB Provider for SQL Server (0x80004005)
[DBNETLIB][ConnectionOpen (Connect()).]SQL Server 不存在或拒绝访问。
/sqlweb/conn.asp, 第 2 行
.........请教:
1 DataBase=datasourse/data1.mdf ,这种写法对吗?我的数据库在conn.asp文件同目录下的datasourse文件夹下,主文件为data1.mdf
2 我是本地测试,系统xp,数据库sql2005
3 在网络服务器上的sql数据文件是和网站文件是分开的吗?然后database='IP地址'来访问的吗?
4 请帮忙解决一下这个问题。
我分不是很多,但是分就是用来解决问题的。花100分学习解决一个问题,值!希望拷贝别人帖子内容的不要顶贴了,因为一个帖子顶贴太多,别人再看到的时候很可能认为该问题已经解决,再进来没有什么意思。谢谢各位啦,我在线等候,如果我的问题不清楚,请直接发问,我一分钟刷新一次,看到问题就答,问题解决就结贴。不解决不睡觉!谢谢,再次谢谢!
------解决方案--------------------
使用ASP连接SQL2000数据库,常用的多的是下面这种连接字符串:
Provider=SQLOLEDB.1 数据库提供者,后面的1 表示版本信息,如果无就会使用当前最新版功能
User ID=SQL帐号 数据库的用户帐号
Password=SQL帐号密码 数据库的帐号密码
Initial Catalog=数据库名字 要连接的数据库名,
Data Source=数据源 SQL服务器主机名HostName 或其IP或本地 (local)
上五个参数缺一不可
以下可选:
Connect Timeout=连接超时,是整数,缺省是30秒
Persist Security Info= true or false
所以常用的连接就是这个样的:
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open"Provider=sqloledb;user id=sa;password=sa;initial catalog=fish;data source=127.0.0."&SQLServerName&";"
再完整些:
<%
'================填写数据库具体参数============
SQLServerName = "127.0.0.1" 'IP地址
SQLDBUserName = "sa" '帐号
SQLDBPassword = "sa" '密码
SQLDBName = "fish" '数据库
'===================数据库连接==================
On Error Resume Next '容错声明
response.buffer=true
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open"Provider=sqloledb;user id="&SQLDBUserName&";password="&SQLDBPassword&";initial catalog="&SQLDBName&";data source="&SQLServerName&";"
If Err Then
err.Clear
Set Conn = Nothing
Response.Write "数据库连接出错,请检查连接字串。"
Response.End
End If
'============结束程序=========================
%>
------解决方案--------------------
另外如果你是远程连接的话,要把1433端口打开.
SQL Server 2005 远程连接
配置TCP/IP属性.
Surface Area Configuration --> Database Engine --> Remote Connections --->Using TCP/IT