I would search the system catalog first - this is the point of least resistance. e.g.DECLARE @t_name AS SYSNAME , @c_name AS SYSNAMESELECT @t_name = N'%%' , @c_name = N'%email%'SELECT o.name AS t_name , c.name AS c_name , st.name AS data_type , c.max_length , c.scale , c.precisionFROM sys.columns AS cINNER JOIN sys.objects AS oON c.object_id = o.object_idINNER JOIN sys.systypes AS stON st.xtype = c.system_type_idWHERE o.name LIKE @t_name AND c.name LIKE @c_nameORDER BY o.name , c.column_id
There are techniques to do what you want but try that first as the cost is very low comparred to searching every item of data in every table.