使用sql数据库这样的asp语法错误是为什么

来源:百度知道 编辑:UC知道 时间:2024/06/23 00:12:14
数据库连接文件
conn.asp
代码如下:
Set conn = Server.CreateObject("ADODB.Connection")
SqlUsername = "sa" 'SQL数据库用户名
SqlPassword = "" 'SQL数据库用户密码125.46.60.252
SqlDatabaseName = "tt8" 'SQL数据库名
SqlHostIP = "(local)" 'SQL主机IP地址(本地可用“127.0.0.1”或“(local)”,非本机请用真实IP)
connStr = "Provider = Sqloledb; User ID = " & SqlUsername & "; Password = " & SqlPassword & "; Initial Catalog = " & SqlDatabaseName & "; Data Source = " & SqlHostIP & ";"
conn.Open connstr
在conn.asp里有一个这样的函数
'============
'执行一条SQL语句 rs函数
'============
function rsfun(sql,i)
select case i
case "1"
set rsa=server.CreateObject("adodb.recordset")
rsa.open sql,conn,1,1
set rsfun=rsa
set rsa=nothing
case "3"
set rsa=server.CreateObjec

错误很简单
select * from 1dy_admin order by id desc
问题就出在这,1dy_admin 有这样的表名吗?
表的命名规则应该是字母或下划线开头。1开头的,系统不认识

首先,你的connStr可能有问题,用下面的吧:
connStr = "driver={SQL Server};server="&SqlHostIP&";uid="&SqlUsername&";pwd="&SqlPassword&";database="&SqlDatabaseName

再次function rsfun(sql,i)肯定有问题,即使不报错,也不会有结果出来,要有结果,它得有个返回值(RECORDSET).

你访问SQL server数据库用这个数据提供方式(Provider = Sqloledb)肯定是不对的!

访问SQL server数据库,数据提供方式要用SqlClient。
应该把Provider = Sqloledb改为Provider = SqlClient

应该没问题了