C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[6]: テーブルダイアグラムを表示したいのですが


(過去ログ 52 を表示中)

[トピック内 7 記事 (1 - 7 表示)]  << 0 >>

■29122 / inTopicNo.1)  テーブルダイアグラムを表示したいのですが
  
□投稿者/ がぼん (1回)-(2008/12/04(Thu) 16:28:38)

分類:[データベース全般] 

こんにちは

VS2005のサーバーエクスプローラーで、接続しているデータベース
のテーブルダイアグラムを表示したいのですが

そもそも、 VS2005に付属の SQL Server Expressと MSのサイトから
入手可能な SQL Management Studio Express の組み合わせでは実現
不可能でしょうか?

SQL Management Studio Express ではない SQL Management Studio
と言う製品が存在しそちらが必要なのでしょうか?

ちなみにテーブルファイルは コンパクト版で拡張子は SDFです。

もし、ご存知の方おられましたら教えてください。
よろしくお願いします。

引用返信 編集キー/
■29126 / inTopicNo.2)  Re[1]: テーブルダイアグラムを表示したいのですが
□投稿者/ まさる (36回)-(2008/12/04(Thu) 16:52:38)
まさる さんの Web サイト
No29122 (がぼん さん) に返信
> こんにちは
>
> VS2005のサーバーエクスプローラーで、接続しているデータベース
> のテーブルダイアグラムを表示したいのですが
>
> そもそも、 VS2005に付属の SQL Server Expressと MSのサイトから
> 入手可能な SQL Management Studio Express の組み合わせでは実現
> 不可能でしょうか?
>
> SQL Management Studio Express ではない SQL Management Studio
> と言う製品が存在しそちらが必要なのでしょうか?
>
> ちなみにテーブルファイルは コンパクト版で拡張子は SDFです。
>
> もし、ご存知の方おられましたら教えてください。
> よろしくお願いします。
>

Visioがあれば出来そうですね。
http://www.atmarkit.co.jp/fdotnet/visiouml/visiouml03/visiouml03_04.html
引用返信 編集キー/
■29133 / inTopicNo.3)  Re[2]: テーブルダイアグラムを表示したいのですが
□投稿者/ がぼん (2回)-(2008/12/04(Thu) 17:36:40)
No29126 (まさる さん) に返信

>>SQL Management Studio Express ではない SQL Management Studio
>>と言う製品が存在しそちらが必要なのでしょうか?
>>
>>ちなみにテーブルファイルは コンパクト版で拡張子は SDFです。
>>
>>もし、ご存知の方おられましたら教えてください。
>>よろしくお願いします。
>>
>
> Visioがあれば出来そうですね。
> http://www.atmarkit.co.jp/fdotnet/visiouml/visiouml03/visiouml03_04.html

ありがとうございます。
Visioでできるんですね、残念ながら Visio持ってません・・高い(ToT)

いろんなサイトで調べたのですが SQL Management Studioで
できると書いてあるサイトはいくつかあったのですが
SQL Management Studio Express でできるとはどこにも書いて
ないのでやっぱり Express は Expressなのかなぁ、VC++だと
MFCができないみたいに・・

MSにもそのあたりを明記しているサイトがないのでもし表示されている方が
おられたらと思って質問させていただきました。

引用返信 編集キー/
■29144 / inTopicNo.4)  Re[3]: テーブルダイアグラムを表示したいのですが
□投稿者/ やじゅ (829回)-(2008/12/04(Thu) 18:21:50)
やじゅ さんの Web サイト
No29133 (がぼん さん) に返信

どの程度のものを望んでいるのかな、簡易的でいいならフリーのもので
http://www.wind.sannet.ne.jp/m_matsu/developer/a5m2/

その他
http://yoppa.blog.shinobi.jp/Entry/66/
引用返信 編集キー/
■29153 / inTopicNo.5)  Re[4]: テーブルダイアグラムを表示したいのですが
□投稿者/ がぼん (3回)-(2008/12/04(Thu) 19:38:08)
No29144 (やじゅ さん) に返信

> どの程度のものを望んでいるのかな、簡易的でいいならフリーのもので
> http://www.wind.sannet.ne.jp/m_matsu/developer/a5m2/
>
> その他
> http://yoppa.blog.shinobi.jp/Entry/66/

やじゅ さん ありがとうございます。

VS2005の窓内で表示したいと思っています。
いろいろ調べてゆくと .xsd という拡張子がついたファイルとして
プロジェクトに取り込まれるようなのです。
SQL Management Studio Expressってやっぱり使えなさそうですね

引用返信 編集キー/
■29196 / inTopicNo.6)  Re[5]: テーブルダイアグラムを表示したいのですが
□投稿者/ たくボン (93回)-(2008/12/05(Fri) 12:20:54)
No29153 (がぼん さん) に返信
> ■No29144 (やじゅ さん) に返信
> SQL Management Studio Expressってやっぱり使えなさそうですね

うーん、Management Studio Expressが使えないかどうかはわからないけど、俺は自分でツールを作ってますね(市販やフリーだと、自動コード生成とかちょっとしたことに応用できないので。IDEには組み込んでないけどそれなりに使えます)

列名なら↓こんな感じで取得できますし、リレーションはsysobjectsから辿れば取得できます。

SELECT c.[name] AS [name],
p.[name] AS [type],
c.max_length AS length, c.scale,
c.is_nullable AS isnullable,
ep.[value] AS [description]
FROM sys.extended_properties AS ep
INNER JOIN sys.tables AS t ON ep.major_id = t.[object_id]
INNER JOIN sys.columns AS c ON ep.major_id = c.[object_id] AND ep.minor_id = c.column_id
INNER JOIN sys.types AS p ON c.system_type_id = p.system_type_id
WHERE class = 1 AND t.name = 'hoge'
ORDER BY c.column_id;

あとはダイアグラムにするなり、TreeView使うなり自由に作っておけばちょっとした時に対応できると思います:-)
(ちなみに、MSSQL2000の頃から作成しているので、ストアド使わずにsys系を参照してるので将来不安ですけど、鯖のVerや別DBMSによってエンティティクラスを動的に生成してViewとは疎結合してるのでView側では問題ないかなとw)

こういうのを作成しておくと、MSSQL2005の怪しい部分とか見えてきたりするので結構便利です。
Management Studioは信用できない部分もありますしね(sysindexes周りとかw)
引用返信 編集キー/
■29201 / inTopicNo.7)  Re[6]: テーブルダイアグラムを表示したいのですが
□投稿者/ がぼん (4回)-(2008/12/05(Fri) 13:44:39)
がぼん さんの Web サイト
No29196 (たくボン さん) に返信

> うーん、Management Studio Expressが使えないかどうかはわからないけど、俺は自分でツールを作ってますね(市販やフリーだと、自動コード生成とかちょっとしたことに応用できないので。IDEには組み込んでないけどそれなりに使えます)
>
> 列名なら↓こんな感じで取得できますし、リレーションはsysobjectsから辿れば取得できます。
>
> SELECT c.[name] AS [name],
> p.[name] AS [type],
> c.max_length AS length, c.scale,
> c.is_nullable AS isnullable,
> ep.[value] AS [description]
> FROM sys.extended_properties AS ep
> INNER JOIN sys.tables AS t ON ep.major_id = t.[object_id]
> INNER JOIN sys.columns AS c ON ep.major_id = c.[object_id] AND ep.minor_id = c.column_id
> INNER JOIN sys.types AS p ON c.system_type_id = p.system_type_id
> WHERE class = 1 AND t.name = 'hoge'
> ORDER BY c.column_id;
>
> あとはダイアグラムにするなり、TreeView使うなり自由に作っておけばちょっとした時に対応できると思います:-)
> (ちなみに、MSSQL2000の頃から作成しているので、ストアド使わずにsys系を参照してるので将来不安ですけど、鯖のVerや別DBMSによってエンティティクラスを動的に生成してViewとは疎結合してるのでView側では問題ないかなとw)
>
> こういうのを作成しておくと、MSSQL2005の怪しい部分とか見えてきたりするので結構便利です。
> Management Studioは信用できない部分もありますしね(sysindexes周りとかw)


自作ですか、すごいですね

引き続き時間をぬって調査は続けていたのですが↓のページに
http://www.microsoft.com/downloads/details.aspx?familyid=6053C6F8-82C8-479C-B25B-9ACA13141C9E&displaylang=ja

注 : SSMSE で ...... SQL Server 2005 Mobile Edition は管理できません。

と言う一文を発見し脱力してたところです。
Management Studio Express がダメじゃなくても
Mobile Edition 自体が管理対象外と言う事であきらめました。

回答をくださったみなさまありがとうございました。


解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -