sqlserver中一个奇怪的现象

fqqhyn 2006-07-04 10:13:48
sql="select top 1 title from ssgl where id="&rs("sheng")&" and parentid=0"

其中rs("sheng")是一个数字型变量,页面的编码是utf-8
rs("sheng")中该条记录,数据库中明明是数字29,但老是取不到rs("sheng")的值,取到的是"",太奇怪了,谁知道会是什么原因吗?
...全文
244 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
fqqhyn 2006-07-04
  • 打赏
  • 举报
回复
up
fqqhyn 2006-07-04
  • 打赏
  • 举报
回复
我gb2312下和utf-8下,这个页面都试过了,还是一样报错,奇怪了
sy_binbin 2006-07-04
  • 打赏
  • 举报
回复
那你在UTF-8下把sql="select top 1 title from ssgl where id="&rs("sheng")&" and parentid=0"再重新写下,从GB2312改到UTF-8的时候,有的""也会变的!
fqqhyn 2006-07-04
  • 打赏
  • 举报
回复
if not isnull(rs("sheng")) then
response.write "cc"
end if
'这时候会打印出cc

if not isnull(rs("sheng")) and rs("sheng")<>"" then
response.write "cc"
end if
'这时候不会打印出cc,这样说来rs("sheng")的值变成"", 可数据库里明明是数字型的

我怀疑可能和编码,或者数据库的设置有关,这套程序以前我在gb2312中一点没问题,但改成
utf-8就出现这个问题,是不是数据插入的时候有什么编码要注意的问题,还是有其他什么原因。
yongfa365 2006-07-04
  • 打赏
  • 举报
回复
response.write "AAAAAAAAAAAAAAAAA"&rs("sheng")&"BBBBBBBBBBBBBBBBBBB"
sql="select top 1 title from ssgl where id="&rs("sheng")&" and parentid=0"
看下有没有有值,也看一下这个,rs是不是用错了,有没有什么rs2,rs3之类的
sy_binbin 2006-07-04
  • 打赏
  • 举报
回复
看看是29的那条数据里的parentid字段是不是0啊!
fqqhyn 2006-07-04
  • 打赏
  • 举报
回复
哈哈找到原因了,原来数据库联接里也有学问啊
jiayuanliao 2006-07-04
  • 打赏
  • 举报
回复
是ODBC的问题。先把rs("sheng")读到内存变量就可以(比读那个ntext要早)。用OLEDB.1好象没这个问题。
fqqhyn 2006-07-04
  • 打赏
  • 举报
回复
而且以前读取没问题的,是不是和数据库设置什么的也有关系阿
fqqhyn 2006-07-04
  • 打赏
  • 举报
回复
ntext需要二进制读取,什么意思啊?例如,gsjj是ntext字段,读它应该怎么操作
BINGOWILL 2006-07-04
  • 打赏
  • 举报
回复
LZ看看定义的字段数据的长度,似乎有点像取数据的时候溢出啊
itzhiren 2006-07-04
  • 打赏
  • 举报
回复
ntext需要二进制读取的吧
fqqhyn 2006-07-04
  • 打赏
  • 举报
回复
发现把数据库中的一个ntext字段,改成nvachar(500),取任何值就都没问题了,搞不懂了
fqqhyn 2006-07-04
  • 打赏
  • 举报
回复
现在发现两个字段互换一下位置,也会发生问题,例如select tel,fax没问题
select fax,tel就会取不到值
郁闷阿
fqqhyn 2006-07-04
  • 打赏
  • 举报
回复
发现似乎是select * 的时候,没有把数字型的字段列出来,
把前面的sql语句写成sql="select top 1 *,sheng,shi,hangye_id from qyhy where id='"&id&"' and (ispass='0' or ispass is null)"
sheng可以用
sql="select top 1 * from qyhy where id='"&id&"' and (ispass='0' or ispass is null)"
这时候sheng不能用,真奇怪了
tatty_bad 2006-07-04
  • 打赏
  • 举报
回复
和页面编码有什么关系阿?
SQL查询语句阿这是
fqqhyn 2006-07-04
  • 打赏
  • 举报
回复
up

28,390

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧