
这样的话,给你一个思路,你先根据这个库,查找里面所有表名,然后再根据表名,查找字段名,然后再查找所有不是数字或者是二进制的字段进行搜索,当然这个需要多次循环,多次调用,肯定是很麻烦的!肯定得使用游标,虽然效率低,但是这个是唯一的一个办法:declare @tabName VARCHAR(40) declare @colName VARCHAR(40)DECLARE @sql nVARCHAR(2000)
set @sql = '';
DECLARE tabCursor CURSOR FOR sELECT name From sysobjects WHERE xtype = 'u' --查找库中所有的表OPEN tabCursorFETCH NEXT FROM tabCursor INTO @tabName
WHILE @@fetch_status = 0
BEGIN
-- SET @sql = 'UPDATE ' + @tabName + ' SET '
DECLARE colCursor CURSOR FOR Select Name FROM SysColumns Where id=Object_Id(@tabName) --查找表中所有的字段
OPEN colCursor
FETCH NEXT FROM colCursor INTO @colName
set @sql = ' select 1 from '+@tabName+ ' where '+ @colName +' like ''%10%'' '
WHILE @@fetch_status = 0
BEGIN
-- SET @sql = @sql + @colName + '=REPLACE(' +@colName+ ',''XX'',''''),'
set @sql += CHAR(10)+CHAR(13)+ ' select 1 from '+@tabName+ ' where '+ @colName +' like ''%10%'' '
FETCH NEXT FROM colCursor INTO @colName
END
-- SET @sql = LEFT(@sql,LEN(@sql)-1)
-- print @sql
EXEC(@sql)
CLOSE colCursor
DEALLOCATE colCursor
FETCH NEXT FROM tabCursor INTO @tabName
ENDCLOSE tabCursorDEALLOCATE tabCursor 此方法经过验证,但是需要你进行简单的修改!
假设根据第一行的ID值和时间值,选择第一行的温度:
select 温度 from sub1 where [id] = '0402010B00' and 时间 = convert(datetime, '2010-12-15 15:18:40', 120)
1、首先需要输入名称和密码登陆服务器。
2、在如下图中是一个Student的数据表,这里需要打开数据表中的StudentName数据表。
3、这里我们首先打开我们的数据库查询语句,输入查询语句先查询一下数据表中的数据内容。
4、输入查询语句,:Select from Student,输入完毕之后选择全部内容,选择执行按钮,执行SQL语句。
5、执行完毕之后即可取出数据。
以上就是关于如何在一个SQL数据库中搜索到特定值的记录全部的内容,包括:如何在一个SQL数据库中搜索到特定值的记录、SQL server2000 将数据库中某一列中的 某个数选取出来、SQL 如何取出数据库中一列的所有值.....等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)