• I read your article with great interest, hoping beyond hope to find a search and replace tool.

    I've been using Black Moshannon Systems program called Speed Ferret 4 for many years. They haven't updated it since 2002, so it can only search SQL Server 2000 and earlier. It's a real shame because it's one of a kind, as far as I know. It could search Access MDB's and ADP's, VB projects, and most importantly, multiple SQL Server databases simultaneously. It's a great tool for finding all instances of an object's usage across multiple DB's. Want to find every VIEW that has a TOP n PERCENT statement in 20 DB's, just do a wild card search for TOP*PERCENT.

    The greatest part about it, though, is the replace feature. Say you inherit a DB or set of DB's developed by someone else who can't spell. Customer_ID is spelled Cutsomer_ID throughout the project. Just search for Cutsomer_ID and replace it with Customer_ID. Review the list of "hits", and exclude whichever ones you want, then save replacements. The changes are made on the server objects and your done.

    I frequently use this tool in conjunction with RedGate's SQL Compare. I find and replace, and then do compare between the dev copy and a staging copy of the database to generate a script to run on the production server.

    I believe SQL 2005 may have some built in object renaming capabilities, where if you rename a field in a table, for instance, the dependencies that use it will also change (I'm pretty new to SQL 2005 so if that's a 2008 feature oops). But I'm not sure that works across multiple databases. But searching for all object instances across multiple DB's is very powerful, especially if you don't want to change stuff just yet. Maybe you need to put together an impact analysis for changing the data type of a field, etc. Also, RedGate's Dependency Tracker falls far short. It's difficult to search for a single string and print out the first "level" of hits, or copy/paste "used by" list into OneNote or some other program. It creates a nice "graphical galaxy" of large complex db systems with multiple db's and cross db object usage, but beyond that it's difficult to use for those purposes. SQL Doc also will provide Used By hyperlink lists allowing for multiple db searching, but still kludgy to use and you can't do a find and replace. I have the entire toolbelt and don't see a tool like Speed Ferret.

    So anyway, great article and if you, or anybody else on this board knows of a similar type of program that will work with SQL 2005 (I'm not using 2008 yet and my corporate clients will not adopt it for a few years - they're just starting to migrate to SQL 2005). I don't care if it's free. Speed Ferret cost several hundred dollars and was worth every cent. I still use it today for SQL 2000 databases.

    Jerry Boutot, MCAD MCP, MTA
    Jerry Boutot Official