Is there a program that converts a SQL Server database diagram to er model, or create er model of a database from SQL Server server?
Within SQL Server, there's the "Database Diagram" feature in each database, in Management Studio.
You can create a new diagram from that, and include all (or some) of your tables, so showing where the relationships are, and what the tables are.
I've used Erwin for 10 years and it works great! Unfortunately it is a bit pricey. Hopefully someone will come out with a less expensive tool to accomplish this, I've heard Visual Studio 2010 may have some tools in this area.
Try Microsoft Visio. Visio professional has a reasonably good database reverse engineering feature, and it is easy to retrofit relationships logically present in the data but not physically manifested in the database. It is also easy to make multiple diagrams from the same reverse engineered model (on separate pages in the .vsd file).
These two features make Visio a very useful tool to help understand and document third-party databases, and Visio Pro isn't all that expensive.
However, there is a serious caveat in that it has no facility to generate a SQL file from the schema unless you buy the enterprise architect version, which is only available with EA versions of Visual Studio. As far as I know, there's no EA version of Visio past 2002/2003, so this product is obsolescent.
Related
I just installed and imported my database in Visual Studio , All I want to see is schema to get a quick relation of among different tables , I was hoping if I could get a way to do the same in SQL server just like it can be done with my sql reverse engineering
I use Azure data studio (the extension is buggy ), I also have Sql server manangement studio , I also visual studio and selected database management pack where SSDT was included and now I simply imported the database which I want schema for
SSMS has some rudimentary diagram tools to pull in objects and see any relations that exist. Something to watch for is that if you add any relations or modify anything other than the layout on that diagram, you actually change the database itself.
There are some free/cheap ERD apps/sites that you may want to investigate and many will give you a script to run in SQL Server to extract the schema in a format they can use.
I'd recommend searching on ERD apps that can do database diagrams, but for a free option you may want to check out https://dbschema.com/ (there's a free/trial version) or https://dbdiagram.io as they can handle some simple ER diagrams. (note - no affiliation to either, just some examples/options)
You can't easily forward-engineer changes with it, but it can work to just see the relationships visually. If you're going to use ER diagrams regularly, a paid option will be much more helpful. There are a lot of options available, but for that sort of design work you probably want collaboration and the ability to push out changes to a live database from the ERD.
I would like to know if there is any tool able to extract the design from an existing Oracle database.
I have a read access to it and I would like to have the design. Or simply export it to a *.sql and then read it with any tool able to create the design with the links between the tables.
Something like that
(source: fileguru.com)
Thank you very much.
There are a number of tools which do reverse engineering from an Oracle database, but most require a license.
Oracle has its own Data Modeller. Previously Oracle tried to charge an exorbitant licence fee but obviously they had few takers because it is now free. It is not a great product but it does a decent job on reverse engineering.
If you are a site which uses TOAD then you should definitely consider Quest's TOAD Data Modeler. The additional cost is not a great stretch from the basic TOAD fee.
There are not many other free tools left on the market but SQL Power offer a community edition of their SQL Architect tool which does reverse engineering. Check it out.
Oracle SQL Data Modeler answered to all my questions.
It has a reverse engineering tool that creates the logical and physical model from the database.
I have created a Database in DB2 and tables with relationships. I would like to create a ER diagram based on my database design in DB2. MS SQL has a facility to create ER diagrams from DB schema, but DB2 doesn't seem to have one, at least to my knowledge.
Any one know of any open source tools/facility within DB2 itself for this?
You could try TOAD for DB2 (freeware and commercial versions).
Download here
Also IBM Data Studio looks promising.
DbVisualizer can visualize (and much more) just about any database, provided that the relevant foreign keys have been defined. DbVisualizer isn't open source, but there is a free edition of it (which isn't limited regarding visualization).
You can use Visio and do a database reverse engineering. I have done it and found it to be quite neat.
Reverse engineer an existing database into a database model
TOAD for DB2 freeware does not have the ER diagramming feature enabled. It is available only in the commercial version. ER Studio is another (expensive) option. Try Visio 2000 Enterprise edition if you can get one. It is available on ebay for about $35. Microsoft has moved the reverse engineering option in subsequent version of Visio to the expensive enterprise architect bundles.
Aqua Data Studio has an ER Modeling tool which will work with any RDBMS. You can create, explore, detail, and modify database schemas to create fully editable and scriptable diagrams of database relationships and objects. The link to download is www.aquafold.com
In Visio 2003 Architect version I can generate a SQL Server Database on the fly from UML ER diagram. But there is no such a way by using Visio 2007. My question is: Any other good and latest tools can support ER-> DB or DB->ER very well for SQL2005/2008?
I think Enterprise Architect can do that too.
http://www.sparxsystems.com.au/
You can do the ER diagram on Visual Studio creating a dbml file and then export to a Sql Server script using the huagati plugin. http://www.huagati.com/dbmltools/
If you're looking for a free/open source tool to achieve this, you could try:
DBDesigner
From the website:
DBDesigner 4 is a visual database design system that integrates database design, modeling, creation and maintenance into a single, seamless environment.
It combines professional features and a clear and simple user interface to offer the most efficient way to handle your databases.
DBDesigner 4 compares to products like Oracle's Designer©, IBM's Rational Rose©, Computer Associates's ERwin© and theKompany's DataArchitect© but is an Open Source Project available for Microsoft Windows© 2k/XP and Linux KDE/Gnome. It is release on the GPL.
And it supports the following features:
Available on Linux / MS Windows
User Interfaced based on industry standard layouting software
Design Mode / Query Mode
Reverse engineering MySQL, Oracle, MSSQL and any ODBC databases
Userdefined schema-generation
Model-To-Database syncronisation
Index support
Automatic foreign key placement
Weak entity support
Standard Inserts storing and sync
Full documentation capabilities
Advanced model printing
Output as image
All MySQL datatypes with all options
User defined datatypes
Database storage, ability to save model within database
Network-/Multiuser access through database storage
Version control*
SQL Query Builder
SQL Command History
SQL Command storage within model
Plugin interface
I think the bolded ones above (my own emphasis) should give you what you require (i.e. effectively two-way database/model synchronization).
I have used the tool in the past to reverse engineer an existing database to an ER diagram. From what I remember, it wasn't the most stable software I'd ever used (I seem to recall it crashed a couple of times) however, this was a little while ago so it may be more stable now.
I remember that in Visio 2003 that was only possible, I believe in the Enterprise Edition. Could that be your issue with 2007?
Most of the tools don't handle SQL 2005/2008 correctly. But CA ERwin® Process Modeler does the best job (at a cost though).
There is a community edition but it is limited to 25 objects per model.
Give it a try and let us know.
Could the SQL Server IDE ever become an application development platform for enterprise applications? In a similar way to the old xBase applications, but, you know, better?
The main reason is that the Management Studio is one of the best “data centric” application I’ve ever used. It has most of the main ingredients for the proposed solutions:
powerful data manipulation language (SQL :o) )
good security
distributed architecture
The main features that it lacks:
a GUI toolkit: something simple and standard, enterprise applications usually don’t require fancy UIs
some form of automation (.Net, COM, I really don’t care as long as it works)
MS Office integration (especially Excel)
So…?
UPDATE:
The question above is a request for feedback on an idea. I'm not planning to use SSMS to build an interactive application in the near future. I would really like to hear what do you think about it and what other suggestions you might have (maybe there is already a product which does exactly that).
A shorter text for the question would be "If SSMS and MS Access could marry, how would their child look like?"
2nd UPDATE:
"Microsoft announces its new product codename 'Frankenstein'. The new product tries to combine the ease of development of database applications from the old Fox Pro and Access times, with the brand new SQL Server 2012 suite. As 'Frankenstein's Product Manager, Jim Bob, stated "[Frankenstein] will enable the developers to shut the f*#k up, and just build that thing already. Not spend their (highly remunerated) time arguing what's the best ORM, or AJAX toolkit, or should they use SOA etc... (btw, since 2009, SOA is dead)"
Well it depends on what way you look at it.
You can extend and build plugins for management studio but you can also use the visual studio shell as the base for new applications (altho I don't think this is what you want?)
However re-reading your question it looks like you actually want to build applications for SQL server. In that case you might want to check out Visual Studio Team Systems Database Edition
There's two risks involved with building applications on top of SQL Server Management Studio.
First, SQL Server Management Studio has been fairly consistent from 2005 to 2008, but that's only three years of release time. SQL Server 2000's tools were dramatically different, and there's no reason to expect SQL Server management tools to always remain the same.
For example, at the Professional Association for SQL Server (PASS) Summit in Seattle in 2008, Microsoft demoed a new management framework for SQL Server. The databases will be packaged and managed in a way quite different from what we're used to in SSMS. Project Kilimanjaro (think of it as SQL 2008 R2) will be the "down payment" on that management, with the rest of the tools coming in later versions. SSMS will look, feel and work differently in order to accomodate this new way of building database-driven applications.
Second, Microsoft's architecture for SSMS is not pluggable, and they haven't encouraged any third party development inside SSMS that I'm aware of. You can build some level of interactivity by using RDLC reports - standalone SQL Server Reporting Services applications that run inside SSMS - but for the most part, you're not encouraged to build atop SSMS because they do want the right to change it when they need to improve it.
I've got good news, though - you mentioned that you'd want some kind of Office tie-in. Keep your eye out for Project Gemini announcements. Donald Farmer did demos of it at PASS, and there's probably some video circulating around. It uses Excel as a front end for BI analytics, and they used million-row-spreadsheets that were storing data back in SQL. There's not much out out yet for the public, but keep your eyes peeled.
To answer the shorter question - Have you seen the various Frankenstein films?
The longer question - why would you want it to, you already have Visual Studio? SSMS is an excellent environment for developing stored procedures, queries, views and the like, lets leave it that way. And anyhow, the only good XBase environment was FoxPro and look where that ended up.