• 締切済み

vb.net2005でリレーション

SQLServer2005ExpressとVB.net2005を使用しています そこで質問ですがリレーションを張る際に データベースエクスプローラーでデータベースダイヤグラムで作成するのと データソース上でデザイナーにて作成するのとでは どのように違いがあるのでしょうか? 初学者ですみませんがよろしくご教授ください

みんなの回答

  • ape5
  • ベストアンサー率57% (85/148)
回答No.1

データベースダイアグラムは、SQLServer2005のテーブルの構成を操作するものであると思います。 一方データソース上でデザイナーで作成するのは、データソースはクライアント側でサーバーのDBの一部をコピーして保持しているものであると思っています。 ADO.NETでは、クライアント側で簡易的なミニDBという感じでDataSetなどがあるのですが、データソース上でデザイナーとあるのでもしかしたら、サーバー上のスキーマ情報に沿って強く型付けされたTableAdapterのことをさしているのかなとも思っています。 もしこのあたりを詳しく知りたければ、 プログラミングADO.NET 2.0 http://www.amazon.co.jp/%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0Microsoft-ADO-NET2-0-%E3%83%9E%E3%82%A4%E3%82%AF%E3%83%AD%E3%82%BD%E3%83%95%E3%83%88%E5%85%AC%E5%BC%8F%E8%A7%A3%E8%AA%AC%E6%9B%B8-Microsoft-Visual/dp/4891005491/ref=sr_1_6?ie=UTF8&s=books&qid=1210852100&sr=1-6 をお勧めします。読破するには時間がかかると思いますがすごく勉強になります。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • VB2008でデータソース取得時にエラーが出ます。

    OS:WindowsXP、VB2008+SQLSERVER2005の環境でデータベースソフトを作成中ですが、データーソースを取り込む際に、下記のエラーが出ます。 ネットで調べてVB2008、SQLSERVERの再インストールなどを行いましたが、解決しませんでした。 このようなエラーが出た方がいらっしゃれば、解決方法をご教示下さい。 'Microsoft.VisualStudio.DataDesign.SyncDesigner.SyncFacade.SyncTableConfigManager'のタイプ初期化子が例外をスローしました。

  • VB6.0とVB.NETの違い

    学校の実習での復習で分からないところがありまして 文献を調べたのですが、解決しなかったので教えてください。 最近VB.NETを使う機会が多くなりまして、VB6.0との違いについて悩んでおります。 かつて、VB6.0で基礎的な参考書にデータコントロールを使用してのデータベース(エクセルを用いての)を作成したことがあったのですが、VB.NETにしてからは、同じ方法でのアプリケーションの作り方(データコントロールとエクセルを使っての方法)がわからなくなってしまいました。 どなたか、教えてください。おねがいします。

  • VB 2010 Expressでのデータベース利用

    現在Microsoft VisualBasic 2010 Expressにて、データベースを利用してアプリケーションを作成しようとしています。 今まではMS Access にて制作しておりましたので、完全な初心者というわけではありませんが、VB2010Express を使ってのソフト作成は初めてです。 データベースエクスプローラーを使ってデータの接続や、データセットを作成してのデータの編集はできました。 ここからが質問ですが、直接コードを書き込みデータベース操作をする際のデータベースへの接続方法がわかりません。 VBの書籍やヘルプを参考にして以下のようなコードを作成しました。 Dim scn As New OleDb.OleDbConnection scn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=ファイル名" scn.Open() (以下省略)~ このコードを実行すると次のようなエラーがでます。 「OleDb.OleDbException はハンドルされませんでした。 データベースの形式 'ファイル名' を認識できません。」 ファイル名(C:\Users\~\ファイル名.sdf)はデータベースエクスプローラーで作成したSQL Server Compact 3.5 のデータベースファイルです。 単純にデータベースエクスプローラーで作成したデータベースに、上記コードで接続することはできないのでしょうか? また、コードに間違いなどはありますでしょうか? よろしくお願いします。

  • VB.net

     今までACCESSでしか開発をしていなかった、一般企業のシステム部門の下っ端です。  今回、MySQLとVB.NETを利用して、商品管理システムを作成しようと考えています。  まず、ある程度MySQLの基本的な部分を勉強し、テーブルを作成して、旧システムでACCESSが持っていたデータを一旦CSVに保管して、インポート....といった具合にマスターとなるデータを作りました。  そこで、今度はそのデータをVBで操作してみようと思ったのですが、VB.NETからMySQLへ接続できません。  サーバーエクスプローラーで、どのプロバイダをつかってみても、エラーが出てしまいます。  せめて、どのプロバイダをしようしたら良いのか、分かればよいのですが。 また、VB6で行われていたのをちらっと拝見した覚えがあるのですが、プログラムで接続可能なら、そちらもご教授願えると、とても助かります。  長々とした質問で分かり難いかと思いますが、どなたか、教えていただけないでしょうか?

  • VB2005とSQLServer2005の開発

    いつもご参考にさせて頂いております。 今回VB2005ProfessionalとSQLServer 2005Developer Editionでシステムを開発しようと考えております。PCはWin7Pro64bitです。 VB2005は少し経験があるのですが、SQL Serverを使用するのが初めてです。 以前はSQLServerの代わりにAccessをデータベースとして使用していました。 そこでご質問です。 SQLServerもAccessと同様にOracle10gと接続し、 出来たデータベースをサーバー又は端末にセットし、 数人が使用できるシステムを構築することは可能でしょうか? 実際プログラムを使用するPCはVista32bit or Win7 32bitです。 ※システムはデータの取込、出力、新規作成、更新、削除等一通りの動作をします。 又、この様な構築に関して詳しく解説している本など参考(勉強)になるものがございましたら、是非教えてください。 SQLServerに関して素人なので、どなたかご教授宜しくお願い致します。

  • 外部キーのリレーションが設定できない

    VWD2008でSQLサーバーを使用して簡単な検索DBを作成しようとしています。 元々アクセスのデータベースファイルから SQLサーバーの機能を利用してSQLDBをエクスポートしました。 Shopsテーブルには [id]…主キー(自動採番) [Shop_Code]…販売店コード [Shop_Name]…販売店名 [Shop_Add]…住所 [Shop_AreaID]…Shope_Areaテーブルとリレーションを組む というフィールドが存在します。 Shop_Areaテーブルには [Shop_AreaID]…主キー(自動採番) [Shop_Area_Status]…北海道・仙台・東京・名古屋なとの地域情報が入ります。 ●Shope_Areaテーブル Shop_AreaID  | Area_Status |  ------------------------------------ 01      |   北海道  |   02      |   仙台   |    03      |   東京   |    VWD機能のデータベースダイアグラムより Shopsテーブルの[Shop_AreaID]と Shop_Areaテーブルの[Shop_AreaID]でリレーションを作成し ダイアグラムの保存を試みようとするとエラーダイアグラムが表示されてしまいます。エラーメッセージは以下の通りです。 テーブル 'Shop_Area' は正しく保存されました。 テーブル 'shops' - リレーションシップ 'FK_shops_Shop_Area' を作成できません。 ALTER TABLE ステートメントは FOREIGN KEY 制約 "FK_shops_Shop_Area" と競合しています。競合が発生したのは、 データベース "C:\....\091111_DATA.MDF"、テーブル "dbo.Shop_Area", column 'Shop_Area_ID' です。 上記のようなエラーメッセージが出力される場合 どういった理由が考えられるのでしょうか。 色々試してみたのですがリレーションを設定することができません。 どうか教えてください。

  • VB.NET(Webアプリ)のアクセス権について

    VB.NETでプログラム作成中のファイルを、新しいハードにコピーして、続きを作成したいのですが・・・。 データを入力して、データベースに保存するプログラムを実行する際、「データベースが開きません」のエラーが出ます。同じデータベースでデータを読み込むプログラムの部分では実行可能です。 私は初心者だし、少し詳しい人に聞いたところ、セキュリティーの設定のところとか、アクセス権に問題があるのでは?というところまでしか分かりません。 うまく説明できないので、わかりにくいかもしれませんが、なにか参考になることがあれば教えてください。 宜しくお願いします。

  • VB(カンマ編集)

    データベースから取得したデータをカンマ編集して、画面に表示するプログラムを作っているのですが、データ数が多すぎて画面に表示するまでに時間がかかってしまっています。何か処理を早くするいい方法はないでしょうか。 プログラムはVBを使っています。 データベースはSQLServerを使っています。 よろしくお願いします。

  • vb.netでmdfデータベースにアクセスするとき

    こんにちわ。 いまvb.net2005expressでsqlserver2005expressの mdfデータベースにアクセスするコーディングを書いています。 ところが最初のコネクションの確立のところで下記のような コーディングをしているのですが, 後続の"sqlDataAdapter.Fill(sqlDataSet, "MST_User")"の行で, データベースにログインできない,というエラーが出てしまいます。 'DB接続文字列の設定 sqlconn.ConnectionString = "Persist Security Info=False;Integrated Security=SSPI;Initial Catalog=Database1;server=(local)" sqlconn.ConnectionString = "Data Source=(local);Database=Database1;" _ & "Integrated Security=SSPI;" ※なおmdfデータベースのファイル名は"Database1.mdf"です。 なおデータベースエクスプローラで[接続の変更]を開いて接続しようと すると"正しく接続されました"となります。 プログラムでログインできない理由は何でしょうか? 教えてください。よろしくお願いします。

  • VB2013とSQLServer

    VB2013でプログラムを作成し、データベースは Expressに一緒にダウンロードされたSQLServerを 利用しています。 作成したEXEファイルなどはファイルサーバーに入っており 複数のクライアントPCで利用しています。 1台のPCで使用していると他のPCではデータベースをOPENできませんと言われて 2台同時に使用できません。 完全にプログラムを終了させないとメニューに戻っただけではだめでした。 (メニュー画面はフォームを呼ぶだけなのでデータベースは扱ってません) 簡単なプログラムなのでフォームの中のprivate sub 単位でOPEN~CLOSEはしてます。 EXPRESSは複数台で利用することはできないのでしょうか? ほかのPCをすべて終了させればできるのです。 なにか対処の方法をお解りの方がいらっしゃいましたらよろしくお願いいたします。