microsoft / DACExtensions

DACExtensions contains samples that extend Data-Tier Applications using DacFx. These samples include deployment contributors and static code analysis rules that can be used with Visual Studio as well as examples of how to use the DacFx public mode
MIT License
125 stars 41 forks source link

Using DACPAC file to analyze database dependencies #3

Open Dirkster99 opened 9 years ago

Dirkster99 commented 9 years ago

I am looking at using a DacPac approach to reverse engineer a live database. https://social.msdn.microsoft.com/Forums/vstudio/en-US/49e0f0aa-72e5-46c6-91e0-7dbffbf21bd6/sql-dependency-walk-like-javadoc-or-doxygen-but-for-sql-server?forum=ssdt

For this I have setup a demo database using this script: https://github.com/Dirkster99/NextLevel/wiki/Create-INTERFACE-Database ...and followed this workflow to create a DacPac file: https://github.com/Dirkster99/NextLevel/wiki/Create-DacPac-from-Demo-Database

My problem is that the DacPac file is not created because the schema contains references to objects (stored procedures) that are not contained in the database. Now its easy to work around this issue by removing these invalid references but some live databases that came into this world without an engineering process do contain such things :-( ...

So, I am wondering if it is possible to convert the error message into a warning and create the DacPac file anyway? Maybe, there is a command line tool option or something else that gives me a chance to extract the database into a DacPac file even if the database contains errors?

I have downloaded the project at www.github.com/Microsoft/DacExtensions and got it to compile and run since the documentation on the pre-requisites is quit good but I cannot find a sample that lets me connect to a database, download and analyze the schema (from a live database). What am I missing? Could you please refer me to a specific sample/option to get me on my way?

kevcunnane commented 9 years ago

Hi Dirkster, if you look at my most recent checkins on the Dev branch I added samples on doing this. In addition we are looking to relax some of these rules and allow them to be warnings, but this isn't in the current release.

Please take a look at the new samples and let me know if it solves your issue or not.

Regards, Kevin

Sent from Outlookhttp://taps.io/outlookmobile


From: Dirkster99 notifications@github.com<mailto:notifications@github.com> Sent: Wednesday, June 10, 2015 19:19 Subject: [DACExtensions] Using DACPAC file to analyze database dependencies (#3) To: Microsoft/DACExtensions dacextensions@noreply.github.com<mailto:dacextensions@noreply.github.com>

I am looking at using a DacPac approach to reverse engineer a live database. https://social.msdn.microsoft.com/Forums/vstudio/en-US/49e0f0aa-72e5-46c6-91e0-7dbffbf21bd6/sql-dependency-walk-like-javadoc-or-doxygen-but-for-sql-server?forum=ssdt

For this I have setup a demo database using this script: https://github.com/Dirkster99/NextLevel/wiki/Create-INTERFACE-Database ...and followed this workflow to create a DacPac file: https://github.com/Dirkster99/NextLevel/wiki/Create-DacPac-from-Demo-Database

My problem is that the DacPac file is not created because the schema contains references to objects (stored procedures) that are not contained in the database. Now its easy to work around this issue by removing these invalid references but some live databases that came into this world without an engineering process do contain such things :-( ...

So, I am wondering if it is possible to convert the error message into a warning and create the DacPac file anyway? Maybe, there is a command line tool option or something else that gives me a chance to extract the database into a DacPac file even if the database contains errors?

I have downloaded the project at www.github.com/Microsoft/DacExtensionshttp://www.github.com/Microsoft/DacExtensions and got it to compile and run since the documentation on the pre-requisites is quit good but I cannot find a sample that lets me connect to a database, download and analyze the schema (from a live database). What am I missing? Could you please refer me to a specific sample/option to get me on my way?

Reply to this email directly or view it on GitHubhttps://github.com/Microsoft/DACExtensions/issues/3.