如何搜索SQL Server数据库的所有表内的所有列中的特定字符串?
问题描述:
我们想在我们的所有数据库中搜索一个字符串(即“Hello World”),该数据库有大约120个表格。我们考虑过像mysql dump这样的转储,但它出现在一个奇怪的bak格式中。如何搜索SQL Server数据库的所有表内的所有列中的特定字符串?
搜索应该为每个表中每列来完成。这是可能的任何类型的脚本,或者这比我听起来更难?
答
不能够很容易写一个脚本来做到这一点。
建议: 我认为你必须使用一些光标和使用其中的某些对象来写脚本
- sys.databases中
- INFORMATION_SCHEMA.TABLES或SYS.TABLES
- INFORMATION_SCHEMA.COLUMNS或sys.columns
一旦你有了这些东西,在所有列下搜索Hello World会更加简单
答
这仅仅是一次性的,还是你想要经常做的事情?
如果这是一个一次性的,如何使用数据导出向导,将表导出到CSV文件(假设你使用SQL Server中,虽然我敢肯定,大多数数据库当量)。
一旦你做到了这一点,你可以做在资源管理器“查找文件”找到所有出现?
这有点脏 - 但它会工作!的[搜索中的所有表,行和DB的列的字符串]
可能重复(http://stackoverflow.com/questions/591853/search-for-a-string-in-全表,行和柱对的一-DB) – 2015-04-22 06:45:55