四姓家奴孙重庆:asp编程中,连接数据库使用odbc和文件连接有什么不同.

来源:百度文库 编辑:高考问答 时间:2024/04/16 17:51:37
asp编程中,连接数据库使用odbc和文件连接有什么不同.我在我的电脑上用的odbc连接数据库,但是把文件拷到别的计算机上就不能打开网页.请那位帮帮忙?

用odbc的话是为了更安全,起到一个隐藏路径的作用,这中情况下一些意图不轨的人即使看到你的源码也只能看到一个dns无法看到数据库的实际地址和密码,实际的地址和密码被保存在windows的odbc源中
而用文件地址的方式话直接暴露了你的数据库,我可以直接下载你的ACCESS文件或者远程连接SQL SERVER

你拿到其他机器上去,他没有设置过odbc,当然打不开

<%
set conn=server.createobject("adodb.connection")
'创建数据库连接对象
connstr="driver={sql Server};database=asptest;server=.;uid=sa;pwd="
'在连接的字符串中,输入连接信息
'每台电脑的连接信息都不一样所以要自己更正连接字符串!
'database 自己的数据库名称
'server 自己的电脑服务器名称
'uid 默认用户SA
'pwd 默认密码为空
conn.open connstr
'用OPEN的方法 建立连接

'!此部分被单独的处理成CONN.ASP文件。目的是为了以后的使用提供方便!
%>

这个就是连接文件。你看到那个"server=."了吗? 我想你可能是把计算机的名称写死了吧。改“server=.” 试试?

祝你解决问题 ^_^

== 如果你用的是access数据库连接字符串应该改一下

Dim Myconn, strconn
set Myconn=server.CreateObject("ADODB.Connection")
strconn="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & server.MapPath("物理路径")
Myconn.Open strconn

<%
Dim Conn,ConnectionString,Data
Data = "../BgDate/currency.asp"
' ConnectionString = "Driver = {MicroShft Access Driver (*.mdb)};DBQ=" & Server.MapPath(Data) 'ODBC - Access 连接字符串
' Oledb 连接字符串
' OLEDB-SQL 连接字符串
' Provider=SQLOLEDB;data source=(local);initial catalog=currency;userid=sa;password=" & Pwd & ";
' OLEDB-ACCESS连接字符串
' Provider=microsoft.jet.oledb.4.0;Jet OLEDB:Database password=sycdbase;data source=" & Server.MapPath(DataCount)
' ConnectionString = "Provider=microsoft.jet.oledb.4.0;Jet OLEDB:Database password=sycdbase;data source=" & Server.MapPath(Data)
ConnectionString = "Driver={SQL SERVER};Server=(local);Database=currency;uid=sa;pwd=;"
Set Conn = Server.CreateObject("ADODB.CONNECTION")
If Conn.State = 1 Then Conn.Close
Conn.Open ConnectionString
%>