09/10/2018, 22:49

Erro connection file.ASP

mình có đoạn code khai báo kết nối CSDL, ở trên trường(Win2000) thì chạy tốt rồi, nhưng khi đưa về nhà(WinXP-SP2, SQLSever Personal Edition) thì máy báo lỗi.
Mình chạy file default.asp có include file library.asp(library.asp khai báo kết nối database)

Error Type:
Microsoft OLE DB Provider for SQL Server (0x80004005)
[DBNETLIB][ConnectionOpen (Connect()).]SQL Server does not exist or access denied.
/laptrinhweb/library.asp, line 25


mặc dù mình đã thay Datasource & uid & pwd cho phù hợp với CSDL ở nhà, nhưng vẫn báo lỗi trên.
line 25 như sau: call cnn.Open(cnnstr)

Mình không biết lý do tại sao, có bác nào biết xin chỉ giúp , cảm ơn các bác nhiều ?
real_time viết 00:51 ngày 10/10/2018
Bạn cho mọi người xem file lib đi xem thế nào? ko cho xem connect đó thì làm sao biết được?
Nhân Tâm viết 00:52 ngày 10/10/2018
<%
'----------------------Dem so lan truy cap---------------
public function counter()
application.Lock()
if(application("dem")="") then
application("dem")=1
else
application("dem")=application("dem")+1
end if
counter=application("dem")
application.unLock()
end function

'---------------------Khai bao ket noi database----------
public sub ketnoi(cnnstr,cnn)
cnnstr="Provider=SQLOLEDB.1;Data Source=LAB2WK11;uid=sa;pwd=;Initial catalog=bookdb"
set cnn=Server.CreateObject("ADODB.connection")
'cnn.Open cnnstr
call cnn.Open(cnnstr)

end sub
%>


file library với CSDL trên trường thực hành chạy OK, mình đã sửa DataSource , uid & pwd cho phù hợp với CSDL ở nhà, mà vẫn báo thế.
real_time viết 00:49 ngày 10/10/2018
mình thấy hình như bạn viết sai về database thì phải bạn đã tạo database ở nhà chưa? và xem lại tên database xem nào?
Nhân Tâm viết 00:53 ngày 10/10/2018
Cảm ơn Bác realtime , mình đã thử , bây giờ nó lại báo user không thể truy cập được, mình nghĩ chắc lỗi không phải do code mà do SQL Server,
real_time viết 00:58 ngày 10/10/2018
đã có một lần mình gặp trường hợp tương tự như của bạn có 2 vần đề cần xem xét:
1: Tên database trong chuỗi kết nối với tên database trong sql server có chính xác ko điều này phải kiểm tra thật kỹ là được.
2: Rất có khả năng user & pass của bạn ko đúng bạn nên đặt lại pass cho user sa.
hmcpp viết 01:03 ngày 10/10/2018
thử thay đoạn kết nối lại như vậy xem sao (trên localhost):
<%

strConn="driver={Sql Server};Server=localhost;uid=sa;pwd=;Database=Nort hwind;"
set conn=server.createobject("adodb.connection")
set rs=server.createobject("adodb.recordset")
conn.open strConn

%>
híc chưa test lại nữa:d

thử thay đoạn kết nối lại như vậy xem sao (trên localhost):
<%
strConn="driver={Sql Server};Server=localhost;uid=sa;pwd=;Database=Nort hwind;"
set conn=server.createobject("adodb.connection")
set rs=server.createobject("adodb.recordset")
conn.open strConn

%>
híc chưa test lại nữa:d
Trừ phi user không cho phép truy cập database.
Xem lại nhé.
Good luck
xacuop viết 01:02 ngày 10/10/2018
Bạn vào Enterprise Manager. Config lại cho SQLServer có thể login bằng SQL và WIndows Account là được.
Nhân Tâm viết 00:51 ngày 10/10/2018
Mình cũng thử connect với Windows Account, nhưng nó vận cứ báo tên truy cập không phù hợp!
Bài liên quan
0