| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 579 人关注过本帖
标题:SQL数据库链接问题
只看楼主 加入收藏
fujian567
Rank: 2
等 级:论坛游民
帖 子:29
专家分:20
注 册:2010-5-17
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:5 
SQL数据库链接问题
源码如下:
<!-- #include file="Conn/Conn.asp" -->   
<%
Session.Timeout=30
dim name,pass,rst,sql
name=request.form("username")
pass=request.form("PWD")
if request.QueryString("act")="login" then
set rst=server.CreateObject("adodb.recordset")
sql="select u_admin,u_psw,u_upid,u_name,u_id from user where u_admin='"&name&"' and u_psw='"&pass&"'"
rst.open sql,conn,1,1
if not rst.eof   then
    session("login")="yes"
    session("id")=rst("u_id")
    session("name")=rst("u_name")
    session("bumen")=rst("u_upid")
    response.write "<script language=JavaScript>alert('登陆成功!');"&"window.location.href = 'default.asp'  </script>"
     else
  response.write "<script language=JavaScript>alert('用户名或密码错!');"&"window.location.href = 'login.asp'</script>"
  response.end
     rst.close
     set rst=nothing
     set conn=nothing
  end if
  end if
%>
显示错误为:
错误类型:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E21)
ODBC 驱动程序不支持所需的属性。
/shopshow/checklogin.asp, 第 10 行
就是这段 sql="select u_admin,u_psw,u_upid,u_name,u_id from user where u_admin='"&name&"' and u_psw='"&pass&"'"
conn.asp文件:
dim conn
set conn=server.CreateObject("adodb.connection")
conn.open="Driver={SQL Server};Server=(local);uid=sa;pwd=121793;Database=shopshow"
当我用ASSESS数据库时运行起来完全正确
当换成SQL2005 时运行起来就出现了上面的错误
搜索更多相关主题的帖子: 链接 数据库 SQL 
2010-07-14 00:00
gupiao175
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:40
帖 子:1787
专家分:7527
注 册:2007-6-27
收藏
得分:0 
好象连接SQL2005不是你那样的连接方法吧!
请确定一下ACCESS表和SQL2005的表中的数据结构是否相同!

Q:1428196631,百度:开发地 即可找到我,有事请留言!
2010-07-14 01:07
jingjing316
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:1
帖 子:293
专家分:541
注 册:2009-8-11
收藏
得分:5 

今天来说说SQL数据库的连接方式:
①SQL2000数据库本地连接
Set conn=Server.CreateObject("ADODB.Connection")
conn.open "provider=sqloledb;server=(local);database=数据库名;uid=用户名;pwd=密码;"

②SQL2000数据库远程连接
Set conn=Server.CreateObject("ADODB.Connection")
conn.open "provider=sqloledb;server=200.200.200.200,1433;database=数据库名;uid=用户名;pwd=密码;"

③SQL2005数据库本地连接
Set conn=Server.CreateObject("ADODB.Connection")
conn.open "provider=SQLNCLI;server=(local);database=数据库名;uid=用户名;pwd=密码;"

④SQL2005数据库远程连接
Set conn=Server.CreateObject("ADODB.Connection")
conn.open "driver={sql server};server=200.200.200.200,1433;database=数据库名;uid=用户名;pwd=密码;"
2010-07-14 08:27
fujian567
Rank: 2
等 级:论坛游民
帖 子:29
专家分:20
注 册:2010-5-17
收藏
得分:0 
问题已经解决了,
但是有一点我想问下
sql="select u_admin,u_psw,u_upid,u_name,u_id from [user] where u_admin='"&name&"' and u_psw='"&pass&"'"
其中[user]uesr表的表名为什么要加上[ ]这对括号
2010-07-14 13:55
jingjing316
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:1
帖 子:293
专家分:541
注 册:2009-8-11
收藏
得分:15 
当表名或字段名,与SQL server系统的保留字段一样时,就一定样要用中括号括起来。
如,表名为use,其中有字段名为user
use与user都是sqlserver的保留字,非常不推荐这样命名表结构。
在查询时,如果你写
select * from use where user='myname'
百分之一万的会报错。必须
select * from [use] where [user]='myname'
2010-07-14 17:03
fujian567
Rank: 2
等 级:论坛游民
帖 子:29
专家分:20
注 册:2010-5-17
收藏
得分:0 
非常感谢!!
2010-07-14 20:11
快速回复:SQL数据库链接问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.036472 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved