[討論] 兼分享如何從僅有的表格欄位快速找到表格

作者: meteor007 (meteor007)   2017-08-23 11:18:09
標題打不下這麼多字@@
完整的應該是
"如何從只有少數一兩個欄位名稱快速從所有表格中找到此欄位所在的表格"
之前看到 #1PWb0ICx 就在想如果是SQL Server該怎處理
結果今天工作上就遇到類似的了
ASP.NET搭配ADO.NET和SQL Server溝通的時候,
前人把SQL Server的表格名稱用特有的命名規則改過表格名了,
但是TMD沒有文件..
要Debug的時候真的是TMD有夠煩
因為有幾十個表格跟View,每個Schema又都是一長串= =
就寫了這個專門Debug找資料用
後來想到,假設資料庫中有幾十幾百的表格也非常方便,就想說分享出來
步驟如下
1.列出資料庫中所有的表格名
2.利用Dynamic SQL + While Loop 瀏覽所有表格
3.用Cursor並把所有表格的Schema存成暫存表格
4.對暫存表格做一般的Select並在where clause輸入已知的column name
個別小功能都是網路上找到的範例,只是沒找到全部串起來的
可能有這種需求的人不多XD
P.S.
a.若已知兩個以上的column name,where中用or連接(連結最下方)
b.我是拿自己的做測試,變數名稱要記得改(Database名稱、兩個暫存表格)
c.只能一次針對一個DB,若是SSMS中有很多個DB...那就交給神人吧XD
d.View也找得到
http://codepad.org/P8WeuGII
雖然有可能是因為很基本所以網路上查不到XDD
不過拿來Debug算是滿方便的
如果改寫成SP應該也不錯
寫法上有建議也歡迎提出來~~
作者: smlboby (波比)   2017-08-23 21:31:00
information_schema.columns
作者: meteor007 (meteor007)   2017-08-23 22:05:00
INFORMATION_SCHEMA.COLUMNS 好像只能列出一張表可以一次列出一整個DA嗎? 可以的話我就白做了XDD

Links booklink

Contact Us: admin [ a t ] ucptt.com