询问:SQL语句查询的问题

isacce 2011-03-10 01:53:20
在access中,对一个表中,存在很多字段,而对于每个其类型不知道。

此时:想利用SQL语句来查询指定的一行,语句如下:
select * from TableName where a=123 and b = '123'
对于此语句,若果a字段本身是数字型,b是字符型,语句是没有问题的;而如果b是数字型,语句出错。

我想问下大家,有没有不用对字段类型判断,而直接用SQL语句来解决的办法?
...全文
107 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
AcHerat 2011-03-10
  • 打赏
  • 举报
回复

declare @i int
set @i = 123

if @i = '123'
print 'a'
else
print 'b'

/*
a

--按楼主说的,看不出来b字段到底是字符型还是数值型!
isacce 2011-03-10
  • 打赏
  • 举报
回复
高手呢,都跑哪去了,正在线等解决方法啊
feixianxxx 2011-03-10
  • 打赏
  • 举报
回复
select * from TableName where a=123 and b = '123'
对于此语句,若果a字段本身是数字型,b是字符型,语句是没有问题的;而如果b是数字型,语句出错。
====》
我没看出来 对这个语句而言 b是数字类型和字符类型的差别
isacce 2011-03-10
  • 打赏
  • 举报
回复
这个语句是在SQL使用的,对于access,要如何转换?
bluesmiler 2011-03-10
  • 打赏
  • 举报
回复

select * from TableName where cast(a as varchar)='123' and cast(b as varchar)= '123'

22,207

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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