posts - 41,  comments - 40,  trackbacks - 0

          -- 我知道一個值“White”,想知道它在哪個表里的哪個字段


          -- 使用Northwind測試
          USE Northwind
          GO

          DECLARE @what varchar(800)
          SET @what='White'? --要搜索的字符串

          DECLARE @sql varchar(8000)

          DECLARE TableCursor CURSOR LOCAL FOR
          SELECT sql='IF EXISTS ( SELECT 1 FROM ['+o.name+'] WHERE ['+c.name+'] LIKE
          ''%'+@what+'%'' ) PRINT ''所在的表及字段:['+o.name+'].['+c.name+']'''
          FROM syscolumns c JOIN sysobjects o ON c.id=o.id
          WHERE o.xtype='U' AND c.status>=0 AND c.xusertype IN (175, 239, 231, 167 )

          OPEN TableCursor

          FETCH NEXT FROM TableCursor INTO @sql
          WHILE @@FETCH_STATUS=0
          ? BEGIN
          ??? EXEC( @sql )
          ??? FETCH NEXT FROM TableCursor INTO @sql
          ? END

          CLOSE TableCursor

          -- 刪除游標引用
          DEALLOCATE TableCursor

          ?

          -- 測試結果
          所在的表及字段:[Orders].[ShipName]
          所在的表及字段:[Customers].[CompanyName]

          ?

          posted on 2007-08-24 05:21 NeedJava 閱讀(1250) 評論(1)  編輯  收藏 所屬分類: SQL
          主站蜘蛛池模板: 措美县| 通化市| 毕节市| 浦江县| 西乌| 富川| 阿巴嘎旗| 临汾市| 巴林左旗| 佛教| 湾仔区| 平远县| 靖江市| 文昌市| 石阡县| 鄂尔多斯市| 东台市| 甘德县| 固安县| 张家界市| 清河县| 开平市| 堆龙德庆县| 海阳市| 屏边| 太原市| 来安县| 浠水县| 茂名市| 施秉县| 井研县| 平安县| 洛浦县| 乌苏市| 延安市| 增城市| 新干县| 原平市| 洱源县| 莲花县| 罗城|