TableAdapterクラス

Size: px
Start display at page:

Download "TableAdapterクラス"

Transcription

1 テーブルアダプタ TableAdapter の概要 TableAdapter を使用すると アプリケーションとデータベース間で通信する事が出来る様に成る 具体的には TableAdapter は データベースに接続し クエリやストアドプロシージャを実行し 返されたデータが格納された新しいデータテーブルを返すか 返されたデータを既存の DataTable に格納する TableAdapter は 更新されたデータをアプリケーションからデータベースに送り返す場合にも使用する Visual Studio の以前のバージョンのユーザーは TableAdapter を 組み込みの接続オブジェクトを持ち 複数のクエリを含める事の出来る DataAdapter で有ると看做す事も可能で有る TableAdapter に追加された各クエリは パブリックメソッドと仕て公開され オブジェクトに対する他のメソッドや関数と同様に呼び出す事が出来る TableAdapter では DataAdapter の標準の機能に加え 共通のスキーマを共有するクエリを 関連する型指定された DataTable でカプセル化する 新しい型指定されたメソッドを使用出来る 詰まり 同じスキーマに準拠するデータを返すクエリで有る限り 1 つの TableAdapter に幾つでもクエリを追加出来る 以前のバージョンの Visual Studio では アプリケーションとデータベースの通信に ADO.NET データアダプタが使用されて居た データアダプタは現在も.NET Framework データプロバイダの主要なコンポーネントだが TableAdapter は DataAdapter の機能を向上させる為にデザイナで生成されるコンポーネントで有る TableAdapter には 通常 データを取得してデータベースを更新する為の Fill メソッドと Update メソッドが含まれて居る TableAdapter は データセットデザイナに依って 厳密に型指定されたデータセット内に作成される TableAdapter は データソース構成ウィザードを使用して新しいデータセットを作成する間に 作成出来る 亦 TableAdapter は TableAdapter 構成ウィザードを使用して既存のデータセット内に作成する事も サーバーエクスプローラからデータセットデザイナにデータベースオブジェクトをドラッグして作成する事も出来る 詳細に付いては TableAdapter を作成する方法 を参照され度い TableAdapter は データセットデザイナでデザインされるが 生成される TableAdapter のクラスは DataSet の入れ子にされたクラスと仕て生成される訳では無い 此等のクラスは 各データセットに固有の 個別の名前空間に格納される 例えば NorthwindDataSet と謂う名前のデータセットが有る場合 NorthwindDataSet 内の DataTable に関連付けられた TableAdapter は NorthwindDataSetTableAdapters 名前空間に格納される プログラムで特定の TableAdapter にアクセスするには TableAdapter の新しいインスタンスを宣言する必要が有る 例えば 次の様に宣言する Visual Basic Dim northwinddataset As New NorthwindDataSet( ) Dim customerstableadapter As _ New NorthwindDataSetTableAdapters.CustomersTableAdapter( ) customerstableadapter.fill(northwinddataset.customers) NorthwindDataSet northwinddataset = new NorthwindDataSet( ); NorthwindDataSetTableAdapters.CustomersTableAdapter customerstableadapter = new NorthwindDataSetTableAdapters.CustomersTableAdapter( ); customerstableadapter.fill(northwinddataset.customers); -1-

2 関連付けられた DataTable スキーマ TableAdapter を作成する場合 最初のクエリやストアドプロシージャは TableAdapter の関連 DataTable のスキーマを定義する為に使用される 最初のクエリやストアドプロシージャを実行するには TableAdapter のメインの Fill メソッド (TableAdapter の関連 DataTable に値を格納するメソッド ) を呼び出す TableAdapter のメインのクエリに対する変更は 関連付けられたデータテーブルのスキーマに反映される 例えば メインのクエリから列を削除すると 関連付けられたデータテーブルから列が削除される TableAdapter に関する他のクエリで メインのクエリに無い列の値を返す SQL ステートメントを使用する場合 デザイナに依って メインのクエリと其他のクエリの間で 列の変更の同期が試みられる 詳細に付いては TableAdapter を編集する方法 を参照され度い TableAdapter 更新コマンド TableAdapter の更新機能は TableAdapter ウィザードで提供されるメインのクエリに基づく情報が何の程度存在するかに依って異なる 例えば 複数のテーブル (JOIN) スカラ値 ビュー 又は 集約関数の結果から値を取得する様に設定された TableAdapter の場合 最初の作成時には 基に成るデータベースに更新を戻す機能が無い 但し [ プロパティ ] ウィンドウで手動で INSERT UPDATE 及び DELETE の各コマンドを設定する事が出来る TableAdapter クエリ 標準のデータアダプタと異なり TableAdapter には関連する各データテーブルにデータを格納する為に複数のクエリを設定出来る 夫々れのクエリが 関連するデータテーブルと同じスキーマに従ったデータを返す限り アプリケーションに必要なクエリを幾つでも TableAdapter に定義出来る 此れに依り 多様な基準を満たすデータの読み込みが可能に成る 例えば アプリケーションに顧客のテーブル -2-

3 が含まれて居る場合 名前が特定の英字で始まる総ての顧客を此のテーブルに格納するクエリ 同じ州内の総ての顧客を此のテーブルに格納するクエリ等を作成出来る 特定の州内の顧客を Customers テーブルに格納するには 州の値を示すパラメータを受け取る FillByState クエリを SELECT * FROM Customers WHERE State の様に作成する 此のクエリは FillByState メソッドを呼び出し CustomerTableAdapter.FillByState("WA") の様にパラメータ値を渡して 実行する 詳細に付いては TableAdapter クエリを作成する方法 を参照され度い TableAdapter のデータテーブルと同じスキーマのデータを返すクエリの他に スカラ (Single 型 ) 値を返すクエリを追加出来る 例えば 顧客数を返すクエリ (SELECT Count(*) From Customers) は 返されるデータがテーブルのスキーマに準拠して居なくても CustomersTableAdapter に対しては有効で有る ClearBeforeFill プロパティ TableAdapter では DataAdapter の基本クラスで使用出来ないプロパティを追加出来る 既定では TableAdapter のデータテーブルに値を格納するクエリを実行する度に データが消去され クエリ結果丈がテーブルに読み込まれる クエリから返されたデータをデータテーブル内の既存のデータに追加やマージする場合は TableAdapter の ClearBeforeFill プロパティを false に設定する データを消去するか何うかに関係無く 更新をデータベースに返す事が必要な場合は 明示的に送信する必要が有る 其のテーブルに値を格納する別のクエリを実行する前に テーブル内のデータに加えた変更を保存して置く 詳細に付いては TableAdapter を使用してデータを更新する方法 を参照され度い TableAdapter の継承 TableAdapter では 設定された DataAdapter をカプセル化する事に依り 標準データアダプタの機能が拡張される 既定では TableAdapter は Component から継承され DataAdapter クラスにキャスト出来ない TableAdapter を DataAdapter にキャストすると InvalidCastException が発生する TableAdapter の基本クラスを変更するには データセットデザイナで TableAdapter の Base Class プロパティに Component から派生したクラスを入力する TableAdapter のメソッドとプロパティ TableAdapter クラスは.NET Framework に属さないので ドキュメントやオブジェクトブラウザで検索出来ない 此のクラスは デザイン時に 前述の孰れかのウィザードを使用する事に依り作成される TableAdapter の作成時に TableAdapter に割り当てられる名前は 処理して居るテーブルの名前に基づく 例えば Orders と謂う名前のデータベース内に有るテーブルに基づいて TableAdapter を作成する場合 其の TableAdapter の名前は OrdersTableAdapter に成る TableAdapter のクラス名は データセットデザイナの Name プロパティを使用して変更出来る TableAdapter で共通に使用されるメソッドとプロパティを次に示す メンバ TableAdapter.Fill TableAdapter.Update TableAdapter.GetData TableAdapter.Insert TableAdapter.ClearBeforeFill 説明 TableAdapter の関連付けられたデータテーブルに TableAdapter の SELECT コマンドの実行結果が格納される 詳細に付いては データセットにデータを読み込む方法 を参照され度い 変更をデータベースに送り返す 詳細に付いては TableAdapter を使用してデータを更新する方法 を参照され度い データが格納された新しい DataTable を返す データテーブル内に新しい行を作成する 詳細に付いては DataTable に行を追加する方法 を参照され度い 孰れかの Fill メソッドを呼び出す前に データテーブルが空に成って居るか何うかを確認する -3-

4 TableAdapter 更新メソッド TableAdapter では データコマンドを使用して データベースからの読み取りと書き込みを実行する TableAdapter の最初の Fill( メイン ) クエリは 関連データテーブルのスキーマや TableAdapter.Update に関連付けられた InsertCommand UpdateCommand 及び DeleteCommand の各コマンドを作成する基に成る 其の為 TableAdapter の Update メソッドを呼び出すと TableAdapter クエリの構成ウィザードで追加したクエリではなく TableAdapter の元の設定時に作成されたステートメントが実行される TableAdapter を使用すると 通常実行するコマンド操作を効果的に実行出来る 例えば アダプタの Fill メソッドを呼び出すと 其の SelectCommand プロパティに設定されて居るデータコマンドがアダプタに依って実行され データリーダー (SqlDataReader 等 ) に依って結果セットがデータテーブルに読み込まれる 同様に アダプタの Update メソッドを呼び出すと データテーブル内で変更された各レコードに対して UpdateCommand InsertCommand 及び DeleteCommand の各プロパティに設定されて居る適切なコマンドが実行される メモ : メインのクエリに充分な情報が有る場合 TableAdapter の生成時に既定で InsertCommand UpdateCommand 及び DeleteCommand の各コマンドが作成される TableAdapter のメインのクエリが単一のテーブル SELECT ステートメントより複雑な場合 デザイナで InsertCommand UpdateCommand 及び DeleteCommand を生成出来ない事が有る 此等のコマンドが生成されて居ない場合 TableAdapter.Update メソッドの実行時にエラーが発生する TableAdapter の GenerateDbDirectMethods InsertCommand UpdateCommand 及び DeleteCommand 以外に データベースに対して直接実行出来るメソッドも TableAdapter に設定出来る 此等のメソッド ( TableAdapter.Insert TableAdapter.Update 及び TableAdapter.Delete) は データベース内でデータを直接操作する為に呼び出す事が出来る 此等の直接メソッドを作成しない場合は TableAdapter の GenerateDbDirectMethods プロパティを false に設定する ([ プロパティ ] ウィンドウ内 ) TableAdapter に追加される其他のクエリはスタンドアロンクエリであり 此等のメソッドを生成しない TableAdapter での Null 許容型のサポート TableAdapter は Null 許容型の Nullable(Of T) 及び T? をサポートして居る Visual Basic の null 許容型の詳細に付いては 定義された値を持たない可能性の有る値型 を参照され度い の null 許容型の詳細に付いては Null 許容型の使用 ( プログラミングガイド ) を参照され度い -4-

5 TableAdapter を作成する方法 TableAdapter を使用すると アプリケーションとデータベース間で通信出来る 具体的には TableAdapter は データベースに接続し データベースに対してクエリやストアドプロシージャを実行し 返されたデータを新しいデータテーブルに設定して返すか 既存の DataTable に設定する TableAdapters は 更新したデータをアプリケーションからデータベースに送り返す時にも使用する 次の孰れかの操作を実行して TableAdapter を作成出来る データセットデザイナから TableAdapter 構成ウィザードを実行する データソース構成ウィザードを実行し データソースの種類と仕て [ データベース ] 又は [Web サービス ] の孰れかを選択する サーバーエクスプローラからデータセットデザイナにデータベースオブジェクトをドラッグする TableAdapter に付いては TableAdapter の概要 を参照され度い TableAdapter 構成ウィザードを使用した TableAdapter の作成 TableAdapter 構成ウィザードは ウィザードに指定した情報に基づいて 1 つの TableAdapter を作成する TableAdapter 構成ウィザードで TableAdapter を作成するには 1. データセットデザイナでデータセットを開く 詳細に付いては データセットデザイナでデータセットを開く方法 を参照され度い 2.[ ツールボックス ] の [ データセット ] タブから [TableAdapter] をデザインサーフェイスにドラッグする 3.TableAdapter 構成ウィザードが起動する ウィザードが完了すると データテーブルと TableAdapter がデータセットに追加される 詳細に付いては TableAdapter 構成ウィザード を参照され度い -5-

6 TableAdapter 構成ウィザード TableAdapter 構成ウィザードを使用して 厳密に型指定されたデータセットの TableAdapter を作成と編集する 此のウィザードでは ウィザードに入力した SQL ステートメントやデータベース内の既存のストアドプロシージャに基づいて TableAdapter が作成される 此のウィザードを使用すると ウィザードに入力した SQL ステートメントに基づいて データベース内に新しいストアドプロシージャを作成する事も出来る TableAdapter は データベースに接続し データベースに対してクエリやストアドプロシージャを実行し クエリやストアドプロシージャに依って返されたデータを DataTable に格納する TableAdapter は 既存のデータテーブルにデータを格納するのに加え データが格納された新しいデータテーブルを返す事も出来る 詳細に付いては TableAdapter の概要 を参照され度い ウィザードの実行 ウィザードを実行し TableAdapter と此れに関連する DataTable の作成や編集を行う 詳細に付いては TableAdapter 構成ウィザードを開始する方法 を参照され度い TableAdapter 構成ウィザードを起動して新しい TableAdapter を作成するには 1. データセットデザイナでデータセットを開く データセットデザイナでデータセットを開くには ソリューションエクスプローラで データセット (.xsd ファイル ) をダブルクリックするか 又は [ データソース ] ウィンドウで 開くデータセットを選択して右クリックし [ デザイナで DataSet を編集 ] を選択する メモ : データセットがプロジェクトに無い場合は 方法 : 型指定されたデータセットを作成する を参照され度い 2. 新しい TableAdapter を作成する場合は ツールボックスの [ データセット ] タブからデータセットデザイナに TableAdapter オブジェクトをドラッグする 3.[ データ接続の選択 ] ページで 現在利用出来る接続の一覧からデータ接続を選択するか [ 新しい接続 ] を選択して新しい接続を作成する メモ :[ 新しい接続 ] を選択すると [ 接続の追加 ] ダイアログボックスと [ 接続の変更 ] ダイアログボックス ( 一般 ) が開く TableAdapter 構成ウィザードを起動して既存の TableAdapter を編集するには 1. データセットデザイナでデータセットを開く 2. データセットデザイナで TableAdapter を右クリックし [ 構成 ] をクリックする ウィザードに [SQL ステートメントの生成 ] ページ 又は [ コマンドを既存のストアドプロシージャにバインドする ] ページが表示される 孰れが表示されるかは TableAdapter の初期構成に依り異なる 3. ウィザードの指示に従う データ接続の選択 接続の一覧から既存の接続を選択するか [ 新しい接続 ] をクリックして [ 接続の追加 ] ダイアログボックスと [ 接続の変更 ] ダイアログボックス ( 一般 ) を開き データベースへの接続を作成する -6-

7 [ 接続のプロパティ ] ダイアログボックスへの入力を完了すると [ 接続の詳細情報 ] 領域に 選択したプロバイダと接続文字列に関する読み取り専用の情報が表示される アプリケーション構成ファイルへの接続文字列の保存 接続文字列をアプリケーション構成ファイルに格納するには [ 次の名前で接続を保存する ] をオンにする 接続の名前を入力するか 予め入力されて居る既定の名前を使用する 接続文字列をアプリケーション構成ファイルに保存すると データベース接続の変更時のアプリケーションの保守プロセスが簡単に成る データベース接続に変更が加えられた場合は アプリケーション構成ファイル内の接続文字列を編集出来る 此の方法を使うと ソースコードを編集してアプリケーションを再コンパイルする必要は無い アプリケーション構成ファイル内の接続文字列を編集する方法に付いては 接続文字列を編集する方法 を参照され度い セキュリティに関するメモ : 情報は アプリケーション構成ファイル内にプレーンテキストと仕て格納される 機密情報への未承認アクセスの可能性を減らす為に データを暗号化出来る 詳細に付いては データの暗号化と復号化 を参照され度い [ コマンドの種類を選択する ] データベースに対して実行するコマンドの種類を選択する [ コマンドの種類を選択する ] ページで データベースからデータをフェッチするメソッドを次から選択する [SQL ステートメントを使用する ]: 此のオプションを選択すると データベースからデータを選択する SQL ステートメントを入力出来る [ 新しいストアドプロシージャの作成 ]: 此のオプションを選択し 指定した SELECT ステートメントに基づいてウィザードで新しいストアドプロシージャをデータベースに作成する [ 既存のストアドプロシージャを使用 ]: 此のオプションを選択し データベースに既に存在するストアドプロシージャを TableAdapter の SELECT INSERT UPDATE 及び DELETE の各コマンドに割り当てる [SQL ステートメントを使用する ] 此処では [SQL ステートメントを使用する ] オプションを選択した場合に TableAdapter 構成ウィザードを完了する方法に付いて説明する [SQL ステートメントの生成 ] ページでは 実行するとデータテーブルにデータが格納される SQL ステートメントを入力する メモ : 此のウィザードを使用すると SQL クエリを作成する為のビジュアルツールで有るクエリビルダにアクセス出来る 此れを開くには [ クエリビルダ ] をクリックする クエリビルダの使い方 クエリ ビュー インライン関数 又は 単一ステートメントストアドプロシージャをデザインする時に使用するデザイナは ダイアグラムペイン 抽出条件ペイン SQL ペイン 及び 結果ペインで構成されて居る -7-

8 ダイアグラムペイン ダイアグラムペインには データ接続で選択したテーブルやテーブル値オブジェクトが グラフィカルに表示される 亦 テーブル間の結合リレーションシップも示される ダイアグラムペインでは 次の作業を行う事が出来る テーブルやテーブル値オブジェクトを追加 削除し 出力するデータ列を指定する テーブル間やテーブル値オブジェクト間の結合を作成 変更する ダイアグラムペインで内容を変更すると 抽出条件ペインと SQL ペインは 其の変更に合わせて更新される 例えば ダイアグラムペインのテーブルやテーブル値オブジェクトのウィンドウで出力する列を選択した場合 クエリ ビューデザイナは 抽出条件ペインと SQL ペインの SQL ステートメントに 其のデータ列を追加する ダイアグラムペインでは 各テーブルやテーブル値オブジェクトは 独立したウィンドウと仕て表示される 各ウィンドウのタイトルバーに表示されるアイコンは ウィンドウに表示されて居るオブジェクトの種類を示して居る 各アイコンの意味は次の通りで有る [ テーブル ]: ダイアグラムペインに追加出来るテーブルが一覧表示される テーブルを追加するには テーブルを選択して [ 追加 ] をクリックする 複数のテーブルを一度に追加するには 其等のテーブルを選択して [ 追加 ] をクリックする [ ビュー ]: ダイアグラムペインに追加出来るビューが一覧表示される ビューを追加するには ビューを選択して [ 追加 ] をクリックする 複数のビューを一度に追加するには 其等のビューを選択して [ 追加 ] をクリックする -8-

9 [ 関数 ]: ダイアグラムペインに追加出来るユーザー定義関数が一覧表示される 関数を追加するには 関数を選択して [ 追加 ] をクリックする 複数の関数を一度に追加するには 其等の関数を選択して [ 追加 ] をクリックする [ ローカルテーブル ]: データベースに属するクエリ以外のクエリで作成されたテーブルが一覧表示される [ シノニム ]: ダイアグラムペインに追加出来るシノニムが一覧表示される シノニムを追加するには シノニムを選択して [ 追加 ] をクリックする 複数のシノニムを一度に追加するには 其等のシノニムを選択して [ 追加 ] をクリックする アイコン テーブルクエリ 又は ビューリンクテーブルユーザー定義関数リンクビュー オブジェクト型 各四角形には テーブルやテーブル値オブジェクトのデータ列が表示される 列の名前の横に表示されるチェックボックスと記号は 其の列がクエリで何の様に使われるかを示して居る ツールヒントには 列のデータ型やサイズ等の情報が表示される テーブルやテーブル値オブジェクトの四角形で使われるチェックボックスと記号は 次の表の通りで有る 記号 説明データ列をクエリの結果セットに表示するか何うか (SELECT クエリ ) 又は UPDATE INSERT FROM MAKE TABLE INSERT INTO の各クエリで使用するか何うかを指定する 結果に列を追加するには 其の列のチェックボックスをオンにする [* ( 総ての列 )] を選択すると 総てのデータ列が出力に表示される チェックボックスに表示されるアイコンは 作成するクエリの種類に依り変わる DELETE クエリを作成する時は 列を個別に選択する事は出来ない メモ :Oracle では * 演算子と個別の列名を組み合わせる事は出来ない クエリ結果の並替に使用される (ORDER BY 句の一部で有る ) データ列を示す 並替順序が昇順の場合はアイコンに A-Z と表示され 降順の場合は Z-A と表示される 集計クエリで結果セットをグループ化する為に使用される (GROUP BY 句の一部で有る ) データ列を示す クエリの検索条件に含まれる (WHERE 句や HAVING 句の一部で有る ) データ列を示す データ列の内容が出力の時に集約される (SUM AVG 又は 他の集計関数に含まれる ) 事を示す クエリに結合が含まれる場合は 結合に関係するデータ列の間に結合の線が表示される 結合されるデータ列が表示されて居ない場合 ( テーブルやテーブル値オブジェクトのウィンドウが最小化されて居る場合や 結合に式が含まれる場合等 ) クエリ ビューデザイナは テーブルやテーブル値オブジェクトを表す四角形のタイトルバーに結合線を表示する 猶 結合条件毎に 1 本の結合線が表示される 結合線の中央に表示されるアイコンの形は テーブルやテーブル構造オブジェクトの結合方法を示して居る 等号 ( = ) 以外の演算子が結合句で使われて居る場合は 其の演算子が結合線のアイコンに表示される 結合線に表示されるアイコンは 次の表の通りで有る -9-

10 結合線のアイコン 説明内部結合 ( 等号を使って作成 ) 大なり演算子 ( > ) に依る内部結合 ( 結合線アイコンの内部には 結合で使われる演算子が表示される ) 外部結合 ( 右側のテーブルに一致する行が有るか何うかに拘らず 左側のテーブルの総ての行が含まれる ) 外部結合 ( 左側のテーブルに一致する行が有るか何うかに拘らず 右側のテーブルの総ての行が含まれる ) 完全外部結合 ( 関連テーブルに一致する行が有るか何うかに拘らず 両方のテーブルの総ての行が含まれる ) Oracle データベースは 完全外部結合をサポートして居ない 結合線の端に表示されるアイコンは 結合の種類を示して居る 結合の種類と結合線の端に表示されるアイコンは 次の表の通りで有る 結合線の端のアイコン 説明 一対一結合 一対多結合 クエリ ビューデザイナは 結合の種類を特定出来ない 抽出条件ペイン 抽出条件ペインでは 表示するデータ列 結果の順序 選択する行等のクエリオプションを選択してスプレッドシート形式のグリッドに入力する事に依り クエリオプションを指定出来る 抽出条件ペインでは次の内容を指定する事が出来る 表示する列と列名のエイリアス 列が属して居るテーブル 計算が必要な列に対する式 クエリの並替順序 検索条件 グループ化の条件 ( サマリレポートで使用する集計関数等 ) UPDATE クエリ 又は INSERT INTO クエリに対する新しい値 INSERT FROM クエリの挿入先の列名 抽出条件ペインで行った変更は ダイアグラムペインと SQL ペインに自動的に反映される 同様に 他のペインが変更されると 其の変更を反映して抽出条件ペインも自動的に更新される 抽出条件ペインの行には クエリで使われるデータ列が表示される 抽出条件ペインの列には クエリオプションが表示される 抽出条件ペインに表示される具体的な情報は 作成して居るクエリの種類に依り異なる SELECT クエリを作成して居る場合は UPDATE クエリを作成して居る場合と異なる列が抽出条件ペインに表示される 抽出条件ペインのグリッドに表示される列は 次の表の通りで有る -10-

11 列 クエリの種類 説明 [ 列 ] 総て クエリに使われるデータ列の名前 又は 計算が必要な列の式が表示される 水平にスクロールしても常に表示される様 此の列はロックされて居る [ エイリアス ] SELECT INSERT FROM UPDATE MAKE TABLE 列に対する別名 又は 計算式の列で使用出来る名前を指定する [ テーブル ] SELECT INSERT FROM UPDATE MAKE TABLE 出力 SELECT INSERT FROM MAKE TABLE [ 並べ替えの種類 ] SELECT INSERT FROM [ 並べ替え順序 ] SELECT INSERT FROM [ グループ化 ] SELECT INSERT FROM MAKE TABLE 対応するデータ列のテーブルやテーブル構造オブジェクトの名前を指定する 計算式の列の場合は空白で有る データ列をクエリの出力に表示するか何うかを指定する メモ : データベースが対応して居る場合は データ列を結果セットに表示せずに 並替や検索の句と仕て使用出来る クエリ結果を並べ替える為に対応するデータ列を使用する事 及び 並替が昇順で有るか降順で有るかを指定する 結果セットの並替に使用するデータ列の並替優先順位を指定する データ列の並替順序を変更すると 他の総ての列の並替順序も其の変更に従って更新される 対応するデータ列を集計クエリの作成に使用する事を指定する 此のグリッド列が表示されるのは [ クエリ ] メニューの [ グループ化 ] をクリックした場合 又は [SQL] ペインに GROUP BY 句を追加した場合丈で有る 既定では 此の列の値は [ グループ化 ] に設定されて居て 列は GROUP BY 句の中で使われる 此の列のセルに移動し 対応するデータ列に適用する集計関数を選択すると 既定では 結果と仕て作成される式が 結果セットの出力列と仕て追加される [ 抽出条件 ] 総て 対応するデータ列に対する検索条件 ( フィルタ ) を指定する 演算子 ( 既定では =) と検索する値を入力する テキスト値は 単一引用符で囲む 対応するデータ列が GROUP BY 句の一部で有る場合 入力した式は HAVING 句で使用される [ 抽出条件 ] グリッド列の複数のセルに値を入力した場合は 結果と仕て生成される検索条件が自動的に論理 AND で連結される 1 つのデータベース列に複数の検索条件式 ( 例えば (fname > 'A') AND (fname < 'M')) を指定するには 其のデータ列を抽出条件ペインに 2 回入力し データ列の各インスタンスの [ 抽出条件 ] グリッド列に異なる値を入力する [ 又は...] 総て データ列に追加する検索条件式を指定する 指定した式は 前の式と論理 OR で連結される 右端の [ 又は...] 列で Tab キーを押すと [ 又は...] グリッド列を追加出来る [ 追加 ] INSERT FROM 対応するデータ列の挿入先データ列の名前を指定する INSERT FROM クエリを作成すると クエリ ビューデザイナは 挿入元データ列を適切な挿入先データ列に一致させ様とする 一致するデータ列をクエリ ビューデザイナが選択出来ない場合は 列の名前を指定する必要が有る [ 新しい値 ] UPDATE INSERT INTO 対応する列に格納する値を指定する リテラル値か式を入力する SQL ペイン SQL ペインでは 任意の SQL ステートメントを作成出来る 抽出条件ペインやダイアグラムペインでも SQL ステートメントを作成出来るが 孰れの場合も SQL ステートメントは SQL ペインに作成される クエリを作成すると SQL ペインは自動的に更新され 読み易い様に書式が変更される SQL ペインを開くには 先ずクエリ ビューデザイナを開く 此れには サーバーエクスプローラでデータベースオブジェクトを選択し [ データ ] メニューの [ 新しいクエリ ] をクリックする 次に [ クエリデザイナ ] メニューの [ ペイン ] をポイントし [SQL] をクリックする -11-

12 SQL ペインでは 次の作業を行う事が出来る SQL ステートメントを入力し 新しいクエリを作成する ダイアグラムペインや抽出条件ペインで行った設定に基づいてクエリ ビューデザイナが作成した SQL ステートメントを変更する 使用しているデータベース固有の機能を利用するステートメントを入力する SQL ペインでは 現在のクエリを直接編集出来る 他のペインに移動すると クエリ ビューデザイナは ステートメントの書式を自動的に設定し ステートメントに合わせてダイアグラムペインと抽出条件ペインを変更する ダイアグラムペインや抽出条件ペインが表示されて居て 此等のペインでステートメントを表示出来ない場合 クエリ ビューデザイナはエラーを表示する 此の場合 次の孰れかを選択出来る ダイアグラムペインや抽出条件ペインでステートメントを表示出来なくても無視して作業を続ける 表示出来ない変更を元に戻して 其の前に変更を加えた後の SQL ステートメントに戻す ダイアグラムペインや抽出条件ペインでステートメントを表示出来なくても無視して作業を続ける事を選択した場合 此等のペインは SQL ペインの内容を反映出来ない事を示す為 淡色表示される ステートメントの編集と実行は 他の SQL ステートメントと同じ様に実行出来る メモ :SQL ステートメントを入力した後に ダイアグラムペインと抽出条件ペインでクエリを変更した場合 クエリ ビューデザイナは SQL ステートメントをリビルド 及び 再表示する 此の処理の結果 最初に入力した SQL ステートメントとは異なるステートメントが作成される事が有る 但し ステートメントの実行結果は常に同じに成る 此の現象は AND 又は OR で連結された複数の句を含む検索条件が有る場合に良く発生する 結果ペイン 結果ペインには 最後に実行された選択クエリの結果が表示される 他の種類のクエリ結果は メッセージボックスに表示される 結果ペインを表示するには クエリやビューを表示 作成するか テーブルのデータを返す 結果ペインが既定で表示されない場合は [ クエリデザイナ ] メニューの [ ペイン ] をポイントし [ 結果 ] をクリックする 結果ペインでは 次の作業を行う事が出来る 最後に実行された選択クエリの結果セットを表形式で参照 単一のテーブルやビューからのデータを表示するクエリやビューに付いて 結果セットに含まれる各列の値の編集 新しい行の追加 既存の行の削除 結果ペインには 次の制限が有る テーブル値関数から返された結果は 一部の場合に限り更新出来る 複数のテーブルやビューの列を含むクエリやビューは更新出来ない ストアドプロシージャから返された結果は更新出来ない GROUP BY 句や DISTINCT 句を使用したクエリやビューは更新出来ない 結果ペインの下端に有るナビゲーションバーを使用すると レコード間を素早く移動出来る 最初のレコードと最後のレコードに移動するボタンや 次のレコードと前のレコードに移動するボタン 特定のレコードに移動するボタンが有る -12-

13 特定のレコードに移動するには ナビゲーションバー内のテキストボックスに行番号を入力し Enter キーを押す クエリやビューの結果を操作して居ると 結果ペイン内のレコードがクエリ定義の同期化対象から外れて仕舞う場合が有る 例えば テーブル内の 5 列の内 4 列に付いてクエリを実行し ダイアグラムペインを使用して 5 番目の列をクエリの定義に追加した場合 其の 5 番目の列のデータは 結果ペインに自動的に追加されない 結果ペインに新たなクエリ定義を反映するには 再度クエリを実行する 此の現象が発生すると 結果ペインの右下隅に警告アイコンと クエリが変更されました と謂うテキストが表示され ペインの左上隅にも警告アイコンが表示される為 ユーザーに解る様に成って居る 何のペインでも クエリやビューを作成出来る 例えば 表示する列を指定するには ダイアグラムペインの場合は 其の列を選択する 抽出条件ペインの場合は 其の列を入力する SQL ペインの場合は 其の列を SQL ステートメント内に記述する [ 生成するメソッドの選択 ] 此のページには データをフェッチして更新する為にウィザードで生成する TableAdapter のメソッドを選択するオプションが用意されて居る [DataTable にデータを格納する ] データテーブルにデータを格納する TableAdapter の既定のメソッドを作成する 此のメソッドを呼び出す際には データテーブルの名前をパラメータと仕て渡す [ メソッド名 ] ボックスの既定の名前を変更する事も出来る [DataTable を返す ] データが読み込まれたデータテーブルを返す TableAdapter のメソッドを作成する アプリケーションに依っては 既存のデータテーブルにデータを読み込む方法に比べ データが読み込まれたデータテーブルを返す方法がより適して居る場合が有る [ メソッド名 ] ボックスの既定の名前を変更する事も出来る [ 更新を直接データベースに送信する為のメソッドを作成する ] 基に成るデータベースに変更内容を書き込む為に必要な INSERT UPDATE 及び DELETE の各コマンドを作成する 此のボックスをオンにする事は GenerateDBDirectMethods プロパティを true に設定する事に相当する メモ : 元の SQL ステートメントに充分な情報が含まれて居ないか クエリが更新可能なクエリではない場合 此のオプションは使用出来ない 例えば JOIN クエリや単一の値 ( スカラ ) を返すクエリで 此の様な状況が起こる [ 新しいストアドプロシージャの作成 ] 此処では [ 新しいストアドプロシージャの作成 ] オプションを選択する場合に TableAdapter 構成ウィザードを完了する方法に付いて説明する 1.[ ストアドプロシージャの生成 ] ページで データテーブルにデータを格納する SQL ステートメントを入力する 此れが TableAdapter の SELECT ステートメントに成り データの選択 更新 -13-

14 挿入 及び 削除を行うストアドプロシージャを作成する際の基礎にも成る メモ : 此のウィザードを使用すると SQL クエリを作成する為のビジュアルツールで有るクエリビルダにアクセス出来る 此れを開くには [ クエリビルダ ] をクリックする クエリビルダの使い方の詳細に付いては クエリ 及び ビューデザイナツール を参照するか 此のダイアログボックスで F1 キーを押す 2.[ ストアドプロシージャの作成 ] ページで 次の操作を行う a. 新しいストアドプロシージャの名前を入力する b. 基に成るデータベースにストアドプロシージャを作成するか何うかを指定する メモ : データベースにストアドプロシージャを作成出来るか何うかは 夫々れのデータベースのセキュリティ設定とアクセス許可に応じて決まる 例えば データベースに新しいストアドプロシージャを作成するアクセス許可を持って居ない場合は 作成するオプションを実行出来ない [ ウィザードの結果 ] ページに TableAdapter 作成の結果が表示される ウィザードで問題が発生すると 此のページにエラー情報が表示される [ 既存のストアドプロシージャを使用 ] 此処では [ 既存のストアドプロシージャを使用 ] オプションを選択する場合に TableAdapter 構成ウィザードを完了する方法に付いて説明する [ コマンドを既存のストアドプロシージャにバインドする ] TableAdapter の SELECT INSERT UPDATE 及び DELETE の各コマンドで実行するストアドプロシージャを選択する 此等のストアドプロシージャは 関連付けられたメソッドが TableAdapter で呼び出されると実行される 例えば UPDATE コマンドに割り当てられたストアドプロシージャは TableAdapter.Update( ) メソッドが呼び出されると実行される 選択したストアドプロシージャのパラメータを データテーブルの対応する列に割り当てる 例えば テーブルの CompanyName パラメータの [ ソース列 ] を CompanyName に設定する メモ : SELECT コマンドに割り当てられたストアドプロシージャは ウィザードの次の手順で指定する TableAdapter のメソッドを呼び出すと実行される 既定では Fill に成って居る為 SELECT プロシージャを実行する一般的なコードは TableAdapter.Fill(tableName) で有る 既定の Fill から変更する場合は Fill を割り当てる名前に置き換え "TableAdapter" を TableAdapter の実際の名前 ( 例えば CustomersTableAdapter) に置き換える [ 詳細オプション ] アダプタに対して SQL ステートメントやストアドプロシージャを作成する方法を制御出来る データウィザードの孰れかで [SQL ステートメントの生成 ] ページの [ 詳細オプション ] ボタンをクリックすると 此のダイアログボックスが表示される 此のダイアログボックスのオプションは総て -14-

15 CustomersTableAdapter.Update(DataTable) 等の更新プロシージャの一部と仕て呼び出されるステートメントやプロシージャに関係する [INSERT UPDATE 及び DELETE ステートメントの生成 ] 此のオプションを選択すると [SQL ステートメントの生成 ] ページで定義した SELECT ステートメントに基づいて ウィザードが INSERT UPDATE 及び DELETE の各ステートメントの生成を試みる 此れをオンにすると ウィザードでは アダプタの UpdateCommand InsertCommand 及び DeleteCommand の各オブジェクトに対する SQL ステートメントやストアドプロシージャが作成される 生成されるステートメントやプロシージャの詳細に付いては ウィザードのクエリの種類の選択ペインで制御される 此のチェックボックスをオフにすると ダイアログボックスの残りのオプションは使用出来なく成り 適用されない 此のチェックボックスをオフにするのは 普通 次の様な場合で有る データソースからデータを読み取る為丈にアダプタを使い 書き込みには使用しない場合 此のチェックボックスをオフにすると フォームやコンポーネントのコードが少なく成る ウィザードが終了した後 自分でコマンドを記述する場合 チェックボックスをオフにし UpdateCommand InsertCommand 又は DeleteCommand の各オブジェクトに対するステートメントやストアドプロシージャを生成しない場合は データアダプタの Update メソッドを呼び出しても何も行われない [ オプティミスティック同時実行制御 ] 此のオプションを選択すると データテーブルに元の各レコードを読み込んだ後に此等のレコードが変更された場合は検出する様に UPDATE ステートメントと DELETE ステートメントが変更される 同時実行違反を検出すると 例外がスローされる オンにすると ウィザードは 更新されて居るレコードの総ての列の値をデータベース内の対応するレコードと一致させる WHERE 句を含む SQL コマンドを生成する メモ : 此のオプションは [INSERT UPDATE 及び DELETE ステートメントの生成 ] チェックボックスがオンに成って居る場合に丈使用出来る 例えば 此のオプションを使って生成される UPDATE ステートメントの構文は次の様に成る UPDATE Customers SET CustomerID =?, CompanyName =?, Phone =? WHERE (CustomerID =?) AND (CompanyName =?) AND (Phone =? OR? IS NULL AND Phone IS NULL); 此のチェックボックスをオフにすると 構文は次の様に成る UPDATE Customers SET CustomerID =?, CompanyName =?, Phone =? WHERE (CustomerID =?) 各列の値をチェックする事に依る影響と仕て データセットを読み取った後で他のユーザーがレコードを変更した事に依り列が変更された場合 コマンドはエラーに成る 此のオプションを設定せず -15-

16 WHERE 句が単純にレコードを特定する丈の場合は 其のレコードを更新すると 他のユーザーが行った変更が警告無しにオーバーライドされる場合が有る データセット更新時の同時実行チェックの詳細に付いては ADO.NET に於けるデータ同時実行制御の概要 を参照され度い [ データテーブルの更新 ] 此のオプションを選択すると INSERT ステートメントと UPDATE ステートメントを実行した後で テーブルのデータが最新の内容に更新される オンにすると ウィザードは 夫々れの Update コマンドと Insert コマンドに対して Select ステートメントを生成する メモ : 此のオプションは [INSERT UPDATE 及び DELETE ステートメントの生成 ] チェックボックスがオンに成って居る場合に丈使用出来る Select ステートメントは アダプタ内の対応するコマンドオブジェクトに追加されて Update コマンドや Insert コマンドが終了した直後に実行される Select ステートメントは 只 1 つのレコード 詰まり 更新された許りのレコードの更新バージョンを返す様に構成される メモ : ステートメントをセミコロン ( ; ) で区切る事に依り アダプタのコマンドオブジェクトの CommandText プロパティに複数のステートメントを追加出来る 更新後のレコードを取得すると 其のレコードの更新された列の値がデータセットに書き込まれる 次の列も対象に成る データベースが既定値を格納する列 自動インクリメントされる列 タイムスタンプ列 データベーストリガの結果に依って影響を受ける列 此のオプションを指定すると 更新の度に 2 つのステートメント ( 更新ステートメントと其の後の Select ステートメント ) が実行されるので データベース内の殆どのレコードが更新される場合は非効率的で有る 此の場合は 総ての更新が行われた後で 単純にデータテーブル全体を一度に設定し直すのが最も効率的で有る メモ : データテーブルの再表示は SQL ステートメントのバッチ処理がサポートされたデータベース而巳で使用出来る 例えば Microsoft Access では データテーブルの再表示は 他の操作を実行するコマンドと同じコマンドで実行出来ない 次の手順 ウィザードが完了すると TableAdapter がデータセットに追加され データセットデザイナで表示や編集が出来る様に成る ウィザード終了後に行う作業が幾つか有る TableAdapter を更に追加する 此のウィザードは 1 つの TableAdapter を作成する 複数のテーブルを含むデータセットを使用する場合は 通常 データセットに更に TableAdapter を追加する TableAdapter に他のクエリを追加する 詳細に付いては TableAdapter クエリを作成する方法 を参照され度い [ データソース ] ウィンドウに此のデータセットを表示し フォームに項目をドラッグしてデータバインドコントロールを作成する 詳細に付いては データの表示の概要 を参照され度い -16-

17 TableAdapter を編集する方法 TableAdapter のテーブルのスキーマ 及び TableAdapter の関連データテーブルに値を格納する Fill メソッドを変更する場合は TableAdapter を編集する TableAdapter は 関連データテーブルのスキーマを定義するメインの Fill メソッドで作成される メインの Fill メソッドは TableAdapter の元の設定時に入力されたクエリやストアドプロシージャに基づいて居る 亦 此のメソッドは データセットデザイナのデータテーブルの下に有る最初の ( 一番上の ) メソッドで有る TableAdapter のメインの Fill メソッドに対する変更は 関連付けられたデータテーブルのスキーマに反映される 例えば メインの Fill メソッド内のクエリから列を削除すると 関連付けられたデータテーブルからも列が削除される 亦 メインの Fill メソッドから列を削除すると TableAdapter の総ての追加クエリから列が削除される TableAdapter の編集には データセットデザイナの TableAdapter 構成ウィザードを使用する メモ :TableAdapter 構成ウィザードの代わりに TableAdapter クエリの構成ウィザードが開く場合は 元の TableAdapter やメインの Fill クエリではなく TableAdapter の追加クエリの 1 つを選択して居る可能性が有る TableAdapter の追加クエリの編集に付いては TableAdapter クエリを編集する方法 を参照され度い TableAdapter を編集するには データセットデザイナでデータセットを開く 1. 編集する TableAdapter を選択する 2.TableAdapter の名前を右クリックし [ 構成 ] をクリックする TableAdapter 構成ウィザードが開き TableAdapter の関連データテーブルに値を格納するクエリやストアドプロシージャを変更出来る 3.TableAdapter 構成ウィザードで必要な変更を入力する -17-

18 TableAdapter クエリを作成する方法 TableAdapter クエリは アプリケーションからデータベースに対して実行出来る SQL ステートメントやストアドプロシージャで有る 1 つの TableAdapter に アプリケーションで必要な数のクエリを追加出来る TableAdapter クエリは TableAdapter のメソッドと仕て表される 市の値を表すパラメータを受け取る FillByCity と謂う名前のクエリを作成したと仕て 其のクエリを TableAdapter に追加する 此れは 正しい型のパラメータ ( 此の場合は市の値を表す文字列 ) を引数と仕て受け取る 型指定されたメソッドと仕て追加される TableAdapter クエリは オブジェクトのメソッドの場合と同様に呼び出す 例えば 以下のコードは FillByCity クエリを実行して 市の値が Seattle で有る顧客総てを Customers テーブルに格納する Visual Basic Dim cityvalue As String = "Seattle" CustomersTableAdapter.FillByCity(NorthwindDataSet.Customers, cityvalue) string cityvalue = "Seattle"; customerstableadapter.fillbycity(northwinddataset.customers, cityvalue); TableAdapter クエリは データテーブルに値を設定したり (Fill クエリと FillBy クエリ ) クエリが返すデータを読み込んだ新しいデータテーブルを返す事が出来る (GetData クエリと GetDataBy クエリ ) TableAdapter クエリの構成ウィザードを実行すると クエリを既存の TableAdapter に追加出来る 追加するには TableAdapter を右クリックし [ クエリの追加 ] をクリックする データセットデザイナでのクエリの作成 データセットデザイナで TableAdapter にクエリを追加するには 1. データセットデザイナでデータセットを開く 2. 目的の TableAdapter を右クリックし [ クエリの追加 ] をクリックする 又は ツールボックスの [ データセット ] タブからデザイナ上のテーブルに [Query] をドラッグする 3.TableAdapter クエリの構成ウィザードが開く 4. ウィザードが完了し TableAdapter にクエリが追加される Windows アプリケーションのフォームに於けるクエリの直接作成 フォーム上に TableAdapter のインスタンスが有る場合 [ 検索条件ビルダ ] ダイアログボックスを使用してクエリを追加出来る 此の場合 クエリに必要な入力パラメータを受け取る ToolStrip コントロール 及び クエリを実行するボタンが フォームに追加される [ 検索条件 ] ダイアログボックスを使用して TableAdapter にクエリを追加するには 1. コンポーネントトレイで TableAdapter を選択する -18-

19 2.TableAdapter のスマートタグをクリックし [ クエリの追加 ] をクリックする 3. ダイアログボックスに必要な項目を入力すると TableAdapter にクエリが追加される 詳細に付いては [ 検索条件ビルダ ] ダイアログボックス を参照され度い [ 検索条件ビルダ ] ダイアログボックス 此のダイアログボックスを完成すると Windows アプリケーションの既存のデータバインドフォームに新しいクエリ ( 通常はパラメータクエリ ) が追加される 新しいクエリを指定のテーブルに追加したり パラメータ値をフォームで入力する為のコントロールを追加する事も 此れに含まれる ( クエリを実行するボタンもフォームに追加される ) パラメータクエリは クエリ内の WHERE 句の条件を満たすデータを返す 例えば 顧客一覧をパラメータ化して 顧客の一覧を返す SQL ステートメントの最後に WHERE City を追加すると 特定の都市の顧客而巳を表示出来る WHERE 句には クエリを実行する際に満たさなければ成らない条件を定義する SELECT * FROM Customers は Customers テーブル内の総てのレコードを返し SELECT * FROM Customers WHERE City は City パラメータの値に等しいレコード而巳を返す 適切な WHERE 句をクエリの最後に追加する 一般的な WHERE 句を次に示す SELECT * FROM Employees WHERE CompanyName SELECT * FROM Employees WHERE (LastName and (FirstName メモ : パラメータプレースホルダの構文は データソースに依って異なる 此の例は SQL Server データソースのプレースホルダ (@paramname) を示して居る System.Data.OleDb パラメータと System.Data.Odbc パラメータの代わりに疑問符 (? ) プレースホルダを使う ( WHERE CompanyName like?) 此のダイアログボックスを表示するには スマートタグの [ クエリの追加 ] をクリックするか [ データ ] メニューの [ クエリの追加 ] をクリックする 此のダイアログボックスを使用すると 次の操作を行う事が出来る 検索機能を Windows アプリケーションの既存のデータバインドフォームに追加する 詳細に付いては パラメータクエリを Windows アプリケーションのフォームに追加する方法 を参照され度い [ データソーステーブルを選択して下さい ] クエリを追加するテーブルをプロジェクトの利用可能なテーブルのドロップダウンリストから選択する [ データを読み込むパラメータ付きクエリを選択して下さい ] 新規や既存のパラメータクエリを選択する [ 新しいクエリ名 ] 新しいパラメータクエリの名前を入力する [ 既存のクエリ名 ] 選択したデータソーステーブルに対して利用可能なクエリのドロップダウンリストからクエリを選択する -19-

20 [ クエリテキスト ] ボタンがクリックされた時に実行する SQL ステートメントを入力する メモ : ウィザードには SQL クエリを作成する為のビジュアルツールで有るクエリビルダが用意されて居る [ クエリビルダ ] SQL クエリを作成する為のビジュアルツールで有るクエリビルダが開く 詳細に付いては クエリ ビューデザイナツール を参照され度い パラメータクエリを Windows アプリケーションのフォームに追加する方法 パラメータクエリを実行すると Windows アプリケーションのフォームに検索機能を追加出来る パラメータクエリは WHERE 句の条件を満たすデータを返す [ 検索条件ビルダ ] ダイアログボックスの設定を完了すると クエリにパラメータが追加される 例えば クエリをパラメータ化して 顧客の一覧を返す SQL ステートメントの最後に WHERE City を追加すると 特定の都市の顧客而巳を表示出来る 詳細に付いては パラメータクエリ を参照され度い [ 検索条件 ] ダイアログボックスの設定が完了すると 次の操作が行われる 関連する TableAdapter にクエリが追加される ユーザーが必要なパラメータ値を指定する為のコントロールと クエリを実行する為のボタンがフォームに追加される パラメータ値を設定してクエリを実行するコードが ボタンのクリックイベントに追加される 既存のデータバインドフォームにクエリを追加するには 下記の手順で行う 1.Windows フォームデザイナでフォームを開く 2.[ データ ] メニュー 又は データスマートタグの [ クエリの追加 ] をクリックする メモ :[ データ ] メニューの [ クエリの追加 ] が利用出来ない場合は フォーム上の パラメータを追加するデータソースが表示されて居るコントロールを選択する 例えば フォームで DataGridView コントロールにデータが表示されて居る場合は 其のコントロールを選択する フォームの個々のコントロールにデータが表示されて居る場合は 任意のデータバインドコントロールを選択する 3.[ データソーステーブルを選択して下さい ] 領域で パラメータを追加するテーブルを選択する 詳細に付いては [ 検索条件ビルダ ] ダイアログボックス を参照され度い 4. 新しいクエリを作成する場合は [ 新しいクエリ名 ] ボックスに名前を入力する 又は [ 既存のクエリ名 ] ボックスでクエリを選択する 5.[ クエリテキスト ] ボックスに パラメータを使用するクエリを入力する ヒント : クエリビルダは クエリを作成する際に役立つ 詳細に付いては クエリ ビューデザイナツール を参照され度い 6.[OK] をクリックする パラメータ入力用のコントロールと [ 読み込み ] ボタンが ToolStrip コントロールのフォームに追加される -20-

21 TableAdapter クエリを編集する方法 TableAdapter クエリの編集には データセットデザイナの TableAdapter クエリの構成ウィザードを使用する TableAdapter クエリがアプリケーションの要件に合わなく成った場合は 其のクエリを変更する必要が有る ( 又は TableAdapter で別のクエリを作成出来る 新しいクエリの追加方法の詳細に付いては TableAdapter クエリを作成する方法 を参照され度い ) メモ :TableAdapter クエリの構成ウィザードの代わりに TableAdapter 構成ウィザードが開く場合は TableAdapter に追加したクエリではなく TableAdapter のメインの Fill クエリを選択して居る可能性が有る TableAdapter のメインの Fill クエリの編集方法に付いては TableAdapter を編集する方法 を参照され度い TableAdapter クエリを編集するには 1. データセットデザイナでデータセットを開く 詳細に付いては データセットデザイナでデータセットを開く方法 を参照され度い 2. 編集する TableAdapter クエリを選択する 3.TableAdapter クエリを右クリックし [ 構成 ] をクリックする TableAdapter クエリの構成ウィザードが開き クエリや其のクエリのストアドプロシージャを変更出来る 4.TableAdapter クエリの構成ウィザードで必要な変更を入力する 詳細に付いては TableAdapter クエリの構成ウィザード を参照され度い -21-

22 TableAdapter クエリの構成ウィザード TableAdapter クエリの構成ウィザードを使用すると TableAdapter に追加する他のクエリを作成して編集出来る TableAdapter クエリは TableAdapter に関連付けられたデータテーブルと同じスキーマに準拠したデータを返す ( 又は スカラ値を返す ) 任意の有効な SQL クエリやストアドプロシージャで有る ウィザードを完了すると TableAdapter にメソッドが追加され 此のメソッドを呼び出すとクエリが実行される ( 例えば CustomersTableAdapter.FillByCity(NorthwindDataSet.Customers, "Seattle")) ウィザードの実行 クエリをデータセットデザイナにドラッグするか 又は 既存のクエリを構成する ( 最初のクエリの下に有る任意のクエリ ) TableAdapter の最初のクエリは TableAdapter のメインクエリで有る メインクエリを編集すると TableAdapter 構成ウィザードが開き TableAdapter のデータテーブルのスキーマが編集される メインクエリの下に有る総てのクエリは追加のクエリで有り TableAdapter クエリの構成ウィザードで設定される 新しいクエリに付いて TableAdapter クエリの構成ウィザードを起動するには 1. データセットデザイナでデータセットを開く 詳細に付いては データセットデザイナでデータセットを開く方法 を参照され度い 2. 新しいクエリを作成する場合 ツールボックスの [ データセット ] タブから DataTable に Query オブジェクトをドラッグするか TableAdapter のショートカットメニューの [ クエリの追加 ] をクリックする Query オブジェクトをデータセットデザイナの空の領域にドラッグする事も出来る 此の場合は DataTable が関連付けられて居ない TableAdapter が作成される 此の様なクエリの動作は 単一の値 ( スカラ値 ) を返す事 又は データベースに UPDATE INSERT DELETE の孰れかのコマンドを実行する事に限定される 詳細に付いては データセットにグローバルクエリを追加する方法 を参照され度い 3.[ データ接続の選択 ] ページで クエリで使用する接続を選択 又は 作成する メモ : 此のページは 何の接続を使用したら良いかデザイナが判別出来ない場合 又は 使用可能な接続が無い場合而巳表示される 4.[ コマンドの種類を選択します ] ページで データベースからデータを取得する方法を次の中から選択する [SQL ステートメントを使用する ]: データベースからデータを選択するための SQL ステートメントを入力出来る [ 新しいストアドプロシージャの作成 ]: ウィザードを使用して 指定した SELECT ステートメントに基づいてデータベース内にストアドプロシージャを新規作成するには 此のチェックボックスをオンにする [ 既存のストアドプロシージャを使用 ]: クエリの実行中に既存のストアドプロシージャを実行するには 此のチェックボックスをオンにする 既存のクエリに付いて TableAdapter クエリの構成ウィザードを起動するには 既存の TableAdapter クエリを編集する場合 其のクエリを右クリックし ショートカットメニューの [ 構成 ] をクリックする -22-

23 メモ :TableAdapter のメインクエリを右クリックすると TableAdapter と DataTable のスキーマが再設定される TableAdapter の追加クエリを右クリックすると 選択したクエリ丈が設定される TableAdapter 構成ウィザードでは TableAdapter の定義を再設定出来るが TableAdapter クエリの構成ウィザードで再設定出来るのは 選択したクエリ丈で有る データ接続の選択 接続の一覧から既存の接続を選択するか [ 新しい接続 ] をクリックして [ 接続の追加 ] ダイアログボックスと [ 接続の変更 ] ダイアログボックス ( 一般 ) を開き データベースへの接続を作成する [ 接続のプロパティ ] ダイアログボックスへの入力を完了すると [ 接続の詳細情報 ] 領域に 選択したプロバイダと接続文字列に関する読み取り専用の情報が表示される アプリケーション構成ファイルへの接続文字列の格納 接続文字列をアプリケーション構成ファイルに格納するには [ 次の名前で接続を保存する ] をオンにする 接続の名前を入力するか 予め入力されて居る既定の名前を使用する 接続文字列をアプリケーション構成ファイルに保存すると データベース接続の変更時のアプリケーションの保守プロセスが簡単に成る データベース接続に変更が加えられた場合は アプリケーション構成ファイル内の接続文字列を編集出来る 此の方法を使うと ソースコードを編集してアプリケーションを再コンパイルする必要は無い アプリケーション構成ファイル内の接続文字列を編集する方法に付いては 接続文字列を編集する方法 を参照され度い セキュリティに関するメモ : 情報は アプリケーション構成ファイル内にプレーンテキストと仕て格納される 機密情報への未承認アクセスの可能性を減らす為に データを暗号化出来る 詳細に付いては データの暗号化と復号化 を参照され度い [SQL ステートメントを使用する ] 此処では [SQL ステートメントを使用する ] オプションを選択した場合に TableAdapter クエリの構成ウィザードを完了する方法に付いて説明する [ クエリの種類の選択 ] ウィザードでは アプリケーションの要件に応じて幾つかの種類のクエリを作成する データ ( データテーブル ) の行を返す SELECT クエリか 又は スカラ値 (Count Sum 等の単一の値 ) を返す SELECT クエリを選択出来る [ クエリの種類の選択 ] ページでは 利用可能なクエリの一覧から 作成するクエリの種類を選択する メモ :INSERT UPDATE 又は DELETE の各ステートメントを作成しても TableAdapter の Update メソッドを呼び出す時に使用する TableAdapter のコマンドは置き換えられない 例えば クエリの種類と仕て UPDATE を選択すると 此のウィザードの後半で指定する名前の新しいクエリが作成される TableAdapter の此の名前のメソッドを呼び出す事に依り 此のクエリを実行する TableAdapter の Update メソッドを呼び出すと 元の TableAdapter を構成した時に作成したステートメントが実行される [SQL < クエリの種類 > ステートメントの指定 ] [SQL < クエリの種類 > ステートメントの指定 ] ページでは クエリを呼び出した時に実行される SQL ステートメントを入力する -23-

24 ヒント : 此のウィザードを使用すると SQL クエリを作成する為のビジュアルツールで有るクエリビルダにアクセス出来る クエリビルダを開くには [ クエリビルダ ] をクリックする クエリビルダの使い方の詳細に付いては クエリ ビューデザイナツール を参照するか 此のダイアログボックスで F1 キーを押す [ 生成するメソッドの選択 ] 此のページには 此のウィザードでクエリに作成するメソッドを選択する為に 次のオプションが用意されて居る [DataTable にデータを格納する ] データテーブルにデータを読み込むメソッドを作成する 此のメソッドを呼び出す時にデータテーブルの名前をパラメータと仕て渡し 返されたデータをデータテーブルに読み込む [ メソッド名 ] ボックスの既定の名前を変更する事も出来る 解り易い名前を付けると コードで此のクエリを使用する時に役立つ [DataTable を返す ] データが読み込まれたデータテーブルを返すメソッドを作成する アプリケーションに依っては 既存のデータテーブルにデータを読み込む方法に比べ データが読み込まれたデータテーブルを返す方法がより適して居る場合が有る [ メソッド名 ] ボックスの既定の名前を変更する事も出来る [ 関数名の選択 ] 関数の名前を入力する TableAdapter クエリを作成すると 此処で指定した名前のメソッドが TableAdapter に追加される クエリを実行するには 此のメソッドを呼び出す 解り易い名前を付けると コードで此のクエリを使用する時に役立つ メモ : 新しいストアドプロシージャを作成する場合は 2 つの名前の指定を求められる 最初の名前は データベースに作成するストアドプロシージャの名前で有る 2 番目の名前は 此のストアドプロシージャを実行する時に呼び出す TableAdapter のメソッドの名前で有る [ 新しいストアドプロシージャの作成 ] 此処では [ 新しいストアドプロシージャの作成 ] オプションを選択する場合に TableAdapter クエリの構成ウィザードを完了する方法に付いて説明する 1.[ ストアドプロシージャの生成 ] ページで ストアドプロシージャを呼び出す時に実行する SQL ステートメントを入力する メモ : 此のウィザードを使用すると SQL クエリを作成する為のビジュアルツールで有るクエリビルダにアクセス出来る クエリビルダを開くには [ クエリビルダ ] をクリックする クエリビルダの使い方の詳細に付いては クエリ ビューデザイナツール を参照するか 此のダイアログボックスで F1 キーを押す 2.[ ストアドプロシージャの作成 ] ページで 次の操作を行う a. 新しいストアドプロシージャの名前を入力する b. 基に成るデータベースにストアドプロシージャを作成するか何うかを選択する -24-

25 メモ : データベースにストアドプロシージャを作成出来るか何うかは 其のデータベースのセキュリティ設定に応じて決まる [ ウィザードの結果 ] ページに TableAdapter クエリの作成結果が表示される ウィザードで問題が発生すると 此のページにエラー情報が表示される [ 既存のストアドプロシージャを使用 ] 此処では [ 既存のストアドプロシージャを使用 ] オプションを選択する場合に TableAdapter クエリの構成ウィザードを完了する方法に付いて説明する 1. 此のウィザードの [ 既存のストアドプロシージャの選択 ] ページで ドロップダウンリストから既存のストアドプロシージャを選択する 選択したストアドプロシージャの [ パラメータ ] と [ 結果 ] が 参照用と仕て表示される 2.[ 次へ ] をクリックする [ ストアドプロシージャが返すデータの型の選択 ] 選択したストアドプロシージャに依って返されるデータ型に応じて ウィザードで作成される TableAdapter メソッドが決まる 此のクエリで返すデータ型を選択する [ テーブルデータ ] を選択すると 前述の [ 生成するメソッドの選択 ] ページが開く 此のページでは作成するメソッドの種類 メソッド名 及び ページングサポートを指定出来る [ 単一値 ] を選択すると 単一の値を返す型指定されたメソッドが作成される 此のオプションを選択すると 前述の [ 関数名の選択 ] ページが開く [ 値無し ] を選択すると ストアドプロシージャを実行してもデータが返されない 型指定されたメソッドが作成される 此のオプションを選択すると 前述の [ 関数名の選択 ] ページが開く [ ウィザードの結果 ] [ ウィザードの結果 ] ページに TableAdapter クエリの作成結果が表示される ウィザードで問題が発生した場合は 此のページに詳細が表示される -25-

26 TableAdapter を使用してデータを更新する方法 データセットのデータを変更して検証した後は 通常 更新したデータをデータベースに返送する 変更したデータをデータベースに送信するには TableAdapter の Update メソッドを呼び出する アダプタの Update メソッドに依って単一のデータテーブルが更新され 正しいコマンド (INSERT UPDATE 又は DELETE) がテーブル内の各データ行の RowState に基づいて実行される メモ : データセットの内容でデータソースを更新し様と仕た時にエラーが発生する場合が有る為 アダプタの Update メソッドを呼び出すコードは try/catch ブロック内に配置する必要が有る データソースを更新する実際の手順はビジネスニーズに依って異なる場合が有るが アプリケーションは次の手順に従う必要が有る 1.try/catch ブロックの中で Update メソッドを呼び出す 2. 例外が検出された場合は エラーを引き起こしたデータ行を探す 詳細に付いては エラーが発生して居る行を探す方法 を参照され度い 3. データ行の問題を調整し ( 可能な場合はプログラムで調整し 可能でない場合は修正の為にユーザーに無効な行を表示する ) もう一度更新して観る (HasErrors GetErrors) データベースへのデータの保存 TableAdapter の Update メソッドを呼び出し データベースに書き込まれる値を含むデータテーブルの名前を渡す TableAdapter を使用してデータセットでデータベースを更新するには Update メソッドを try/catch ブロックで囲む try/catch ブロック内で NorthwindDataSet の Customers テーブルの内容を更新する方法の例を次に示す Visual Basic Try Me.Validate( ) Me.CustomersBindingSource.EndEdit( ) Me.CustomersTableAdapter.Update(Me.NorthwindDataSet.Customers) MsgBox("Update successful") Catch ex As Exception MsgBox("Update failed") End Try try { this.validate( ); this.customersbindingsource.endedit( ); this.customerstableadapter.update(this.northwinddataset.customers); MessageBox.Show("Update successful"); } catch (System.Exception ex) { MessageBox.Show("Update failed"); } -26-

27 TableAdapter に依るデータセット内の 2 つの関連テーブルの更新 データセットの関連テーブルを更新する場合は 適切な順序で更新し 参照整合性の制約に違反する可能性を小さくする必要が有る コマンド実行の順序も データセットの DataRowCollection のインデックスに従う データの整合性エラーが発生しない様にするには 最も適切な方法と仕て 次の順序でデータベースを更新する 1. 子テーブル : レコードを削除する 2. 親テーブル : レコードを挿入 更新 及び 削除する 3. 子テーブル : レコードを挿入及び更新する メモ : 複数の関連するテーブルを更新する場合 トランザクション内に総ての更新ロジックを含める必要が有る トランザクションは データベースに対する総ての関連する変更が正常に完了した後に 変更をコミットするプロセスで有る 詳細に付いては トランザクションの実行 を参照され度い TableAdapter を使用して 2 つの関連テーブルを更新するには 1.3 つの一時データテーブルを作成して異なるレコードを格納する 2.try/catch ブロック内で 行の各サブセットに Update メソッドを呼び出す 更新エラーが起きた場合は エラーを分岐して解決する必要が有る 3. データベースに変更内容をコミットする 4. 一時データテーブルを破棄し リソースを解放する 関連テーブルを含むデータセットに依ってデータソースを更新する方法を次の例に示す Visual Basic Private Sub UpdateDB( ) Dim deletedchildrecords As NorthwindDataSet.OrdersDataTable = _ CType(NorthwindDataSet.Orders.GetChanges(Data.DataRowState.Deleted), NorthwindDataSet.OrdersDataTable) Dim newchildrecords As NorthwindDataSet.OrdersDataTable = _ CType(NorthwindDataSet.Orders.GetChanges(Data.DataRowState.Added), NorthwindDataSet.OrdersDataTable) Dim modifiedchildrecords As NorthwindDataSet.OrdersDataTable = _ CType(NorthwindDataSet.Orders.GetChanges(Data.DataRowState.Modified), NorthwindDataSet.OrdersDataTable) Try If deletedchildrecords IsNot Nothing Then OrdersTableAdapter.Update(deletedChildRecords) End If CustomersTableAdapter.Update(NorthwindDataSet.Customers) If newchildrecords IsNot Nothing Then OrdersTableAdapter.Update(newChildRecords) End If If modifiedchildrecords IsNot Nothing Then OrdersTableAdapter.Update(modifiedChildRecords) End If NorthwindDataSet.AcceptChanges( ) Catch ex As Exception MessageBox.Show("An error occurred during the update process") ' Add code to handle error here. Finally -27-

28 If deletedchildrecords IsNot Nothing Then deletedchildrecords.dispose( ) End If If newchildrecords IsNot Nothing Then newchildrecords.dispose( ) End If If modifiedchildrecords IsNot Nothing Then modifiedchildrecords.dispose( ) End If End Try End Sub void UpdateDB( ) { NorthwindDataSet.OrdersDataTable deletedchildrecords = (NorthwindDataSet.OrdersDataTable)northwindDataSet.Orders.GetChanges(DataRowState.Deleted); NorthwindDataSet.OrdersDataTable newchildrecords = (NorthwindDataSet.OrdersDataTable)northwindDataSet.Orders.GetChanges(DataRowState.Added); NorthwindDataSet.OrdersDataTable modifiedchildrecords = (NorthwindDataSet.OrdersDataTable)northwindDataSet.Orders.GetChanges(DataRowState.Modified); } try { if (deletedchildrecords!= null) { orderstableadapter.update(deletedchildrecords); } customerstableadapter.update(northwinddataset.customers); if (newchildrecords!= null) { orderstableadapter.update(newchildrecords); } if (modifiedchildrecords!= null) { orderstableadapter.update(modifiedchildrecords); } northwinddataset.acceptchanges( ); } catch (Exception ex) { MessageBox.Show("An error occurred during the update process"); // Add code to handle error here. } finally { if (deletedchildrecords!= null) { deletedchildrecords.dispose( ); } if (newchildrecords!= null) { newchildrecords.dispose( ); } if (modifiedchildrecords!= null) { modifiedchildrecords.dispose( ); } } -28-

29 TableAdapter のクエリを表示する方法 TableAdapter には 複数のクエリを含める事が出来る Fill メインクエリは TableAdapter のデータテーブルのスキーマを定義する為に使用する 其他のクエリを使用して テーブルにデータを格納する事も出来る ( 此等のクエリはテーブルのスキーマを定義しないが 其のスキーマに適合するデータを返すか スカラ値を返す必要が有る ) 亦 Fill メインクエリの構造に応じて TableAdapter には一般にコマンドと呼ばれる INSERT UPDATE 及び DELETE の各クエリを含める事が出来る 此等は データベースにデータを返送する為に使用する 複数のクエリが有る TableAdapter 此等のクエリを表示するには 次の手順に従ってデザイナでクエリを開く TableAdapter の Fill メインクエリの表示 TableAdapter の Fill メインクエリを表示するには 1. データセットデザイナでデータセットを開く 詳細に付いては データセットデザイナでデータセットを開く方法 を参照され度い -29-

30 2.TableAdapter のタイトルバーを右クリックし [ 構成 ] を選択する TableAdapter 構成ウィザードが開き テーブルにデータを格納する為に使用する SQL ステートメント又は テーブルにデータを格納する為に呼び出すストアドプロシージャが表示される TableAdapter の INSERT UPDATE 及び DELETE の各コマンドの表示 TableAdapter の更新コマンドを表示するには 1. データセットデザイナでデータセットを開く 詳細に付いては データセットデザイナでデータセットを開く方法 を参照され度い 2. タイトルバーをクリックして TableAdapter を選択する 3.[ プロパティ ] ウィンドウで 表示するコマンドを見付けて展開する 4.CommandText プロパティに SQL ステートメントやストアドプロシージャの名前が表示される TableAdapter の其他のクエリの表示 TableAdapter クエリを表示するには 1. データセットデザイナでデータセットを開く 詳細に付いては データセットデザイナでデータセットを開く方法 を参照され度い 2. 表示する TableAdapter クエリを右クリックし [ 構成 ] を選択する TableAdapter クエリの構成ウィザードが開き テーブルにデータを格納する為に使用する SQL ステートメント 又は テーブルにデータを格納する為に呼び出すストアドプロシージャが表示される -30-

31 TableAdapter クエリを実行する方法 TableAdapter クエリはアプリケーションがデータベースに対して実行出来る SQL ステートメントやストアドプロシージャで TableAdapter で型指定されたメソッドとして公開される TableAdapter クエリは 所有るオブジェクトのメソッドと同様に 関連付けられたメソッドを呼び出す事に依って実行する事が出来る TableAdapter クエリは データテーブルに値を設定したり (Fill クエリと FillBy クエリ ) クエリが返すデータを読み込んだ新しいデータテーブルを返す事が出来る (GetData クエリと GetDataBy クエリ ) TableAdapter クエリの構成ウィザードを実行すると クエリを既存の TableAdapter に追加出来る TableAdapter のインスタンスの作成 TableAdapter のメソッドを呼び出す前に TableAdapter のインスタンスを作成する必要が有る メモ :TableAdapter はデータセットデザイナを使用して作成や編集を行うが TableAdapter は 実際にはデータセット内で入れ子に成ったクラスでは無い TableAdapter は TableAdapter に関連付けられ データセット名に基づいて指定された名前空間に有る 名前付け規則は DataSetName + "TableAdapters" で有る 例えば NorthwindDataSet に関連付けられた総ての TableAdapter は NorthwindDataSetTableAdapters 名前空間に有る CustomersTableAdapter が有るとすると 其の完全修飾名は NorthwindDataSetTableAdapters.CustomersTableAdapter に成る TableAdapter のインスタンスを作成するには [ データソース ] ウィンドウから項目を Windows アプリケーションのフォームにドラッグすると フォームに TableAdapter のインスタンスが自動的に作成される フォームの下部の境界の下の小さな領域に有るコンポーネントトレーの TableAdapter を調べて インスタンスの名前を確認する 又は TableAdapter を作成した後にプロジェクトを構築する TableAdapter がツールボックスに表示される ツールボックスから TableAdapter をフォームにドラッグしてインスタンスを作成する コンポーネントトレーの TableAdapter を調べて インスタンスの名前を確認する 又は TableAdapter のインスタンスをプログラムに依って作成する visual Basic Dim CustomersTableAdapter1 As NorthwindDataSetTableAdapters.CustomersTableAdapter CustomersTableAdapter1 = New NorthwindDataSetTableAdapters.CustomersTableAdapter( ) NorthwindDataSetTableAdapters.CustomersTableAdapter customerstableadapter1; customerstableadapter1 = new NorthwindDataSetTableAdapters.CustomersTableAdapter( ); 既存のデータテーブルにデータを読み込む TableAdapter クエリの実行 (Fill( ) のメソッド ) 既存のデータテーブルにデータを読み込む TableAdapter クエリを実行するには TableAdapter の Fill クエリ 又は FillBy クエリを呼び出し データを読み込むデータテーブルを -31-

32 渡す 例えば 次のコードは Fill クエリを実行して Customers テーブルにデータを読み込む visual Basic CustomersTableAdapter1.Fill(NorthwindDataSet1.Customers) customerstableadapter1.fill(northwinddataset1.customers); 新しいデータテーブルを返す TableAdapter クエリの実行 (GetData( ) のメソッド ) 新しいデータテーブルを返す TableAdapter クエリを実行するには TableAdapter の GetData クエリ 又は GetDataBy クエリを呼び出し クエリの結果が格納され 型指定されたデータテーブルを返す 例えば 次のコードは GetData クエリを実行して Customers テーブルを返す visual Basic Dim newcustomerstable As NorthwindDataSet.CustomersDataTable newcustomerstable = CustomersTableAdapter1.GetData( ) NorthwindDataSet.CustomersDataTable newcustomerstable; newcustomerstable = customerstableadapter1.getdata( ); 単一 ( スカラ ) 値を返す TableAdapter クエリの実行 ツールボックスから直接データセットデザイナにクエリをドラッグして スタンドアロンクエリ ( データテーブルを使用しないクエリ ) を作成出来る 単一 ( スカラ ) 値を返す TableAdapter クエリを実行するには TableAdapter のインスタンスを作成し 戻り値を保持する変数を宣言し クエリの結果を代入する 次の例は QueriesTableAdapter に対する CustomerCount と謂うクエリが有ると仮定して居る visual Basic Dim scalarqueriestableadapter As NorthwindDataSetTableAdapters.QueriesTableAdapter scalarqueriestableadapter = New NorthwindDataSetTableAdapters.QueriesTableAdapter( ) Dim returnvalue As Integer returnvalue = CType(scalarQueriesTableAdapter.CustomerCount( ), Integer) NorthwindDataSetTableAdapters.QueriesTableAdapter scalarqueriestableadapter; scalarqueriestableadapter = new NorthwindDataSetTableAdapters.QueriesTableAdapter( ); int returnvalue; returnvalue = (int)scalarqueriestableadapter.customercount( ); -32-

33 データセットにデータを読み込む方法 データセットにデータを読み込む と謂う言い廻しは 実際にはデータセットを構成する個々の DataTable オブジェクトにデータを読み込む事を意味する TableAdapter クエリを実行するか 又はデータアダプタ ( 例えば SqlDataAdapter) のコマンドを実行して データテーブルにデータを読み込む データセットを作成した方法に依って TableAdapter とデータアダプタの孰れを使用するかが決まる Visual Studio でデータソース構成ウィザード等のデザインツールを使用した場合は データセットに TableAdapter が含まれて居る TableAdapter の詳細に付いては TableAdapter の概要 を参照され度い プログラムでデータセットを作成した場合は 通常 データテーブルにデータを読み込むデータアダプタを作成する必要が有る 詳細に付いては データアダプタの概要 を参照され度い メモ : [ データソース ] ウィンドウからフォームに項目をドラッグすると データテーブルにデータを読み込むコードが Form_Load イベントハンドラに自動的に追加される コードエディタでフォームを開くと 特定のテーブルにデータを読み込む構文が表示される フォームの読み込み時にテーブルにデータを読み込まない場合は 此のコードを別のメソッドに移動するか 又は 此のコード全体を削除すると良い TableAdapter を使用したデータセットへのデータの読み込み TableAdapter のクエリを呼び出し データセットのデータテーブルにデータを読み込む事が出来る データを読み込む DataTable を TableAdapter クエリに渡す クエリがパラメータを使用する場合 パラメータもメソッドに渡す データセットに複数のテーブルが格納されて居る場合は 各テーブルに対して個別に TableAdapter を用意し 各テーブルにデータを個別に読み込む必要が有る メモ : 既定では TableAdapter クエリを実行する度に クエリの結果がテーブルに読み込まれる前にテーブル内のデータが消去される TableAdapter の ClearBeforeFill プロパティを false に設定すると テーブル内の既存のデータを保持した儘 結果を追加する事が出来る TableAdapter を使用してデータセットにデータを読み込むには 1. コードエディタでフォーム 又は コンポーネントを開く 2. アプリケーション内で データテーブルにデータを読み込む必要の有る場所にコードを追加する クエリでパラメータを使用しない場合は データを読み込む DataTable を渡す コードは次の様に成る Visual Basic Me.CustomersTableAdapter.Fill(Me.NorthwindDataSet.Customers) this.customerstableadapter.fill(this.northwinddataset.customers); 3. クエリでパラメータを使用する場合は データを読み込む DataTable とクエリに必要なパラメータを渡す クエリの実際のパラメータに応じて異なるが コードは次の例の様に成る Visual Basic CustomersTableAdapter.FillByCity(NorthwindDataSet.Customers, "Seattle") CustomersTableAdapter.FillByCityAndState(NorthwindDataSet.Customers, "Seattle", "WA") -33-

34 customerstableadapter.fillbycity(northwinddataset.customers, "Seattle"); customerstableadapter.fillbycityandstate(northwinddataset.customers, "Seattle", "WA"); DataAdapter を使用したデータセットへのデータの読み込み データアダプタの Fill メソッドを呼び出す事が出来る 此れに依り アダプタは SelectCommand プロパティで参照されて居る SQL ステートメントやストアドプロシージャを実行し 其の結果をデータセットのテーブルに格納する データセットに複数のテーブルが格納されて居る場合は 各テーブルに対して個別にデータアダプタを用意し 各テーブルに個別にデータを読み込む必要が有る DataAdapter を使用してデータセットにデータを読み込むには DataAdapter の Fill メソッドを呼び出し データを読み込む DataSet 又は DataTable を渡す 例えば 次の様に指定する Visual Basic sqldataadapter1.fill(dataset1.tables("customers")) sqldataadapter1.fill(dataset1.tables["customers"]); 通常は データを読み込む DataTable の名前を指定する 特定のデータテーブルの代わりに DataSet の名前を渡す場合は Table1 と謂う名前の DataTable をデータセットに追加し データベースから結果を読み込む ( 此れは データセットの既存の DataTable にデータを読み込む場合と異なる ) 詳細に付いては DataAdapter からの DataSet の読み込み を参照され度い データアダプタの概要 データアダプタは ADO.NET マネージプロバイダの重要な部分で有り データソースとデータセットの間の通信に使用されるオブジェクトのセットで有る マネージプロバイダには アダプタの他に接続オブジェクト データリーダーオブジェクト 及び コマンドオブジェクトが含まれる アダプタは データソースとデータセットの間でデータを交換する為に使用される 多くのアプリケーションでは 此れはデータベースからデータセットにデータを読み取って 変更されたデータをデータセットからデータベースに書き込む事を意味する 併し データアダプタは任意のソースとデータセットの間でデータを移動出来る 例えば Microsoft Exchange サーバーとデータセットの間でデータを移動するアダプタも考えられる メモ : 以前のバージョンの Visual Studio では アプリケーションとデータベースの通信にデータアダプタが使用されて居た データアダプタは現在も.NET Framework データプロバイダの主要なコンポーネントだが TableAdapter は デザイナで生成されるコンポーネントで アプリケーションとデータベースの間でデータを移動する処理を簡略化する 一般に アダプタはデータセットとの間で何の様なデータを交換するかを指定出来る様に構成出来る 此れは多くの場合 データベースの読取や書込を行う時に呼び出される SQL ステートメントやストアドプロシージャへの参照と謂う形を取る Visual Studio によって 此等のデータアダプタがデータベースで使用出来る様に成る OleDbDataAdapter オブジェクトは OLE DB プロバイダに依って公開される任意のデータソースと共に使用するのに適して居る SqlDataAdapter オブジェクトは SQL Server に固有のオブジェクトで有る 此のオブジェクトは OLE DB 層を経由する必要が無い為 OleDbDataAdapter クラスよりも高速で有る 但し SQL Server 7.0 以降でしか使用出来ない OdbcDataAdapter オブジェクトは ODBC データソースへのアクセス向けに最適化されて居る OracleDataAdapter オブジェクトは Oracle データベースへのアクセス向けに最適化されて居る -34-

35 DataTable に行を追加する方法 新しいレコードをデータセットに追加するには 新しいデータ行を作成し データセットの DataTable の DataRow コレクション (Rows) に追加する必要が有る 次の手順は 新しい行を作成して DataTable に挿入する方法を示して居る 例では 型指定されたデータセットと型指定されて居ないデータセットの両方に付いて説明する ( 猶 通常 データバインドコントロールを使用するアプリケーションは BindingNavigator コントロールの AddNew ボタンを使用して新規レコードを追加する機能が有る ) 型指定されたデータセットへの新しいレコードの挿入 此の例では データセットに Customers DataTable が有り CustomerID 及び CompanyName と謂う名前の 2 つの列が有る事を前提と仕て居る 型指定されたデータセットでは 型指定された DataRow オブジェクトのプロパティと仕て列名が公開される 此の例の場合は CustomersRow で有る 型指定されたデータセットに新しいレコードを追加するには 型指定されたデータセットの新しいインスタンスを宣言する 次の例では CustomersRow クラスの新しいインスタンスを宣言し インスタンスに新しい行を割り当て 列にデータを読み込んで Customers テーブルの Rows コレクションに新しい行を追加する Visual Basic Dim newcustomersrow As NorthwindDataSet.CustomersRow newcustomersrow = NorthwindDataSet1.Customers.NewCustomersRow( ) newcustomersrow.customerid = "ALFKI" newcustomersrow.companyname = "Alfreds Futterkiste" NorthwindDataSet1.Customers.Rows.Add(newCustomersRow) NorthwindDataSet.CustomersRow newcustomersrow = northwinddataset1.customers.newcustomersrow( ); newcustomersrow.customerid = "ALFKI"; newcustomersrow.companyname = "Alfreds Futterkiste"; northwinddataset1.customers.rows.add(newcustomersrow); 型指定されて居ないデータセットへの新しいレコードの挿入 此の例では 型指定されて居ないデータセットに Customers DataTable が有り CustomerID 及び CompanyName と謂う名前の 2 つの列が有る事を前提と仕て居る 型指定されて居ないデータセットでは コーディング時に既知の列名 又は インデックスが必要で有る 此の例では列名を使用する 型指定されて居ないデータセットにレコードを追加するには DataTable の NewRow メソッドを呼び出し 新しい空の行を作成する 此の新しい行は データテーブルの DataColumnCollection から列構造を継承する 次のコードは 新しい行を作成してデータを読み込み 其の行をテーブルの Rows コレクションに追加する Visual Basic Dim newcustomersrow As DataRow = DataSet1.Tables("Customers").NewRow( ) newcustomersrow("customerid") = "ALFKI" newcustomersrow("companyname") = "Alfreds Futterkiste" DataSet1.Tables("Customers").Rows.Add(newCustomersRow) DataRow newcustomersrow = dataset1.tables["customers"].newrow( ); newcustomersrow["customerid"] = "ALFKI"; newcustomersrow["companyname"] = "Alfreds Futterkiste"; dataset1.tables["customers"].rows.add(newcustomersrow); -35-

36 DataTable の行を編集する方法 DataTable で既存の行を編集するには 編集する DataRow を検索し 更新した値を目的の列に割り当てる 以下の例は 型指定されたデータセットと型指定されて居ないデータセットの両方で 行を見付けて変更する方法を示す 編集する行のインデックスが不明な場合の DataTable 内レコードの編集 通常 編集する行のインデックスは 不明で有る 型指定されたデータセット内のデータテーブルは テーブルの主キーを使用して行を検索する FindBy メソッドに依って作成される 型指定されたデータセット内の既存のレコードを更新するには ( 行インデックスが不明な場合 ) 生成された FindBy メソッドを使用して 特定の DataRow を変数に割り当て 其の変数を使用して編集する列にアクセスし 新しい値を割り当てる 次の例では CustomerID 列が Customers テーブルの主キーで有る為 生成される FindBy メソッドは FindByCustomerID で有る Visual Basic Dim customersrow As NorthwindDataSet.CustomersRow customersrow = NorthwindDataSet1.Customers.FindByCustomerID("ALFKI") customersrow.companyname = "Updated Company Name" customersrow.city = "Seattle" NorthwindDataSet.CustomersRow customersrow = northwinddataset1.customers.findbycustomerid("alfki"); customersrow.companyname = "Updated Company Name"; customersrow.city = "Seattle";; 通常 編集する行のインデックスは 不明で有る 型指定されて居ないデータセット内のデータテーブルは DataRow の配列を返す Select メソッドに依って作成される 型指定されて居ないデータセット内の既存のレコードを更新するには ( 行インデックスが不明な場合 ) DataTable の Select メソッドを使用して 特定の行を検索し 必要な列に新しい値を割り当てる 次の例では CustomerID 列が Customers テーブルの主キーなので Select メソッドの呼び出して主キーで検索すると 1 行丈が検出される 返される型は DataRow の配列なので 其の配列内の (0) インデックス (1 行目 ) にアクセスする事に成る Visual Basic Dim customerrow( ) As Data.DataRow customerrow = DataSet1.Tables("Customers").Select("CustomerID = 'ALFKI'") customerrow(0)("companyname") = "Updated Company Name" customerrow(0)("city") = "Seattle" DataRow[] customerrow = -36-

37 dataset1.tables["customers"].select("customerid = 'ALFKI'"); customerrow[0]["companyname"] = "Updated Company Name"; customerrow[0]["city"] = "Seattle"; 編集する行のインデックスが判明して居る場合の DataTable 内レコードの編集 型指定されたデータセットを使用して既存のレコードを更新するには ( 行インデックスが判明して居る場合 ) DataRow オブジェクトの特定の列に値を割り当てる 型指定されたデータセットでは デザイン時にテーブル名と列名をプロパティと仕て公開する事前連結を利用する 其の結果 コードの読み書きが簡単に成る データセットの Customers テーブルの 5 番目のレコードの CompanyName 列と City 列のデータを更新する方法を次の例に示す Visual Basic NorthwindDataSet1.Customers(4).CompanyName = "Updated Company Name" NorthwindDataSet1.Customers(4).City = "Seattle" northwinddataset1.customers[4].companyname = "Updated Company Name"; northwinddataset1.customers[4].city = "Seattle"; 型指定されて居ないデータセット内の既存のレコードを更新するには ( 行インデックスが判明して居る場合 ) DataRow オブジェクトの特定の列に値を割り当てる 型指定されて居ないデータセットのテーブル名と列名はデザイン時には使用出来ない 夫々れのインデックスを通してアクセスする必要が有る テーブル 行 及び 項目 ( 列 ) のコレクションのインデックスにアクセスし Dataset1 の最初のテーブルの 5 番目のレコードの最初の 2 つの列のデータを更新する方法を次の例に示す Visual Basic DataSet1.Tables(0).Rows(4).Item(0) = "Updated Company Name" DataSet1.Tables(0).Rows(4).Item(1) = "Seattle" dataset1.tables[0].rows[4].itemarray[0] = "Updated Company Name"; dataset1.tables[0].rows[4].itemarray[1] = "Seattle"; 文字列と仕て渡されたテーブル名と列名に依ってコレクションのインデックスを置き換え 前の例と同じデータを更新する方法を次の例に示す 此の場合も 編集する行のインデックスを把握する必要が有る Visual Basic DataSet1.Tables("Customers").Rows(4).Item("CompanyName") = "Updated Company Name" DataSet1.Tables("Customers").Rows(4).Item("City") = "Seattle" dataset1.tables["customers"].rows[4]["companyname"] = "Updated Company Name"; dataset1.tables["customers"].rows[4]["city"] = "Seattle"; -37-

38 DataTable の行を削除する方法 データセットがデータソースに更新を送信するのに必要な情報を保持する為に Delete メソッドを使用してデータテーブルの行を削除する 例えば アプリケーションで TableAdapter( 又は DataAdapter) を使用する場合 此のアダプタの Update メソッドに依って RowState が Deleted の行がデータベースから削除される アプリケーションが更新内容をデータソースに送信する必要が無い場合は データ行コレクションに直接アクセスしてレコードを削除出来る (Remove) DataTable 内の特定の行を識別する方法に付いては DataTable の特定の行を探す方法 を参照され度い データテーブルからレコードを削除するには DataRow の Delete メソッドを呼び出す 此のメソッドはレコードを物理的に削除する代わりに レコードに削除のマークを付ける メモ :DataRowCollection のカウントプロパティを取得した場合は 結果カウントに削除のマークが付いたレコードが含まれる 削除のマークが付いて居ないレコード丈の正確なカウントを取得する為に コレクション内を巡回して 各レコードの RowState プロパティを調べる事が出来る ( 削除マークが付いたレコードの RowState は Deleted に成って居る ) 亦 行の状態に基づいてフィルタリングを行うデータセットのデータビューを作成し 其処からカウントプロパティを取得出来る Delete メソッドを呼び出して Customers テーブルの最初の行に削除のマークを付ける例を次に示す Visual Basic NorthwindDataSet1.Customers.Rows(0).Delete( ) northwinddataset1.customers.rows[0].delete( ); 型指定されて居ないデータセットに付いては 次の様なコードを使用する Visual Basic DataSet1.Tables("Customers").Rows(0).Delete( ) dataset1.tables["customers"].rows[0].delete( ); -38-

データアダプタ概要

データアダプタ概要 データベース TableAdapter クエリを実行する方法 TableAdapter クエリは アプリケーションがデータベースに対して実行出来る SQL ステートメントやストアドプロシージャで TableAdapter で型指定されたメソッドと仕て公開される TableAdapter クエリは 所有るオブジェクトのメソッドと同様に 関連付けられたメソッドを呼び出す事に依り実行出来る TableAdapter

More information

データベースプログラミング

データベースプログラミング データセットとデータテーブル データセット (DataSet) とは何かに付いて 簡単に説明する データセットとは 典型的な.NET の Windows データベースアプリケーションでは データセットを通じてアプリケーションからデータベースにアクセスする データセットとは 簡単に謂うと データベースから取得したレコードをメモリ上に持つ為の入れ物で有る 例えば データベースからレコードを取得し 其れをグリッドコントロールに表示する様な

More information

VB.NET解説

VB.NET解説 Visual Basic.NET データベース編 目次 ADO.NET の概要... 2 ADO.NET と ADO... 2 ADO.NET の仕組み... 4 ADO.NET の特徴... 7 データアクセスの基本... 8 Windows アプリケーションの開発手順... 8 データ接続の作成... 9 データアダプタとコネクションの作成...10 データセットの作成...14 データアクセスの利用...21

More information

Userコントロール

Userコントロール User コントロール 初めてのユーザーコントロールの作成 作成したクラスは他のプログラムで再利用出来る為 同じコードを何度も繰り返し作成する必要が無い コントロールも 複数のプロジェクトで再利用出来るクラスで有る 同じユーザーインターフェイスを何度も繰り返してデザインすると謂う経験は 恐らく誰でも有る 例えば 姓と名を入力する為の TextBox コントロールを追加した後で 両方を組み合わせてフルネームを作成するコードを追加する等の作業で有る

More information

mySQLの利用

mySQLの利用 MySQL の利用 インストール インストール時に特に注意点は無い 本稿記述時のバージョンは 6.5.4 で有る (2017 年 11 月現在では 6.10.4 で https://dev.mysql.com/downloads/connector/net/6.10.html よりダウンロード出来る ) 参照設定 インストールが終了すれば Visual Studio で参照の設定を行う 参照の設定画面で

More information

内容 Visual Studio サーバーエクスプローラで学ぶ SQL とデータベース操作... 1 サーバーエクスプローラ... 4 データ接続... 4 データベース操作のサブメニューコンテキスト... 5 データベースのプロパティ... 6 SQL Server... 6 Microsoft

内容 Visual Studio サーバーエクスプローラで学ぶ SQL とデータベース操作... 1 サーバーエクスプローラ... 4 データ接続... 4 データベース操作のサブメニューコンテキスト... 5 データベースのプロパティ... 6 SQL Server... 6 Microsoft Visual Studio サーバーエクスプローラで学ぶ SQL とデータベース操作 Access 2007 と SQL Server Express を使用 SQL 文は SQL Server 主体で解説 Access 版ノースウィンドウデータベースを使用 DBMS プログラム サーバーエクスプローラ SQL 文 実行結果 データベース エンジン データベース SQL 文とは 1 度のコマンドで必要なデータを効率よく取得するための技術といえます

More information

VB.NET解説

VB.NET解説 Visual Basic.NET 印刷編 目次 印刷の概要... 2 印刷の流れ... 2 標準の Windows フォーム印刷ジョブの作成... 3 実行時に於ける Windows フォーム印刷オプションの変更... 3 Windows フォームに於ける接続されたプリンタの選択... 4 Windows フォームでのグラフィックスの印刷... 5 Windows フォームでのテキストの印刷...

More information

テスト 1/7 ページ プレポスト Visual Studio による Windows アプリの開発 ( 基礎編 ) 受講日程受講番号氏名 1.NET Framework に関する記述で 誤っているものを選びなさい 1..NET Framework に含まれる CLR は プログラミング言語に依存し

テスト 1/7 ページ プレポスト Visual Studio による Windows アプリの開発 ( 基礎編 ) 受講日程受講番号氏名 1.NET Framework に関する記述で 誤っているものを選びなさい 1..NET Framework に含まれる CLR は プログラミング言語に依存し 1/7 ページ プレポスト Visual Studio による Windows アプリの開発 ( 基礎編 ) 受講日程受講番号氏名 1.NET Framework に関する記述で 誤っているものを選びなさい 1..NET Framework に含まれる CLR は プログラミング言語に依存しない中間言語を実行するための環境である 2..NET Framework に含まれる.NET Framework

More information

VB実用Ⅲ⑩ フリーデータベースⅡ

VB実用Ⅲ⑩ フリーデータベースⅡ MySQL の利用 MySQL の ODBC(MyODBC) テキストでは MySQL Connector/ODBC(mysql-connector-odbc-3.51.14-win32.msi) をインストールした場合に付いて解説して居るが 此処では MyODBC(MyODBC-3.51.10-x86-win-32bit.msi) をインストールし myodbc-3.51.06-conv_ujis.zip

More information

ファイル操作

ファイル操作 ファイル操作 TextFieldParser オブジェクト ストリームの読込と書込 Microsoft.VisualBasic.FileIO 名前空間の TextFieldParser オブジェクトは 構造化テキストファイルの解析に使用するメソッドとプロパティを備えたオブジェクトで有る テキストファイルを TextFieldParser で解析するのは テキストファイルを反復処理するのと同じで有り

More information

( 目次 ) 1. はじめに 開発環境の準備 仮想ディレクトリーの作成 ASP.NET のWeb アプリケーション開発環境準備 データベースの作成 データベースの追加 テーブルの作成

( 目次 ) 1. はじめに 開発環境の準備 仮想ディレクトリーの作成 ASP.NET のWeb アプリケーション開発環境準備 データベースの作成 データベースの追加 テーブルの作成 KDDI ホスティングサービス (G120, G200) ブック ASP.NET 利用ガイド ( ご参考資料 ) rev.1.0 KDDI 株式会社 1 ( 目次 ) 1. はじめに... 3 2. 開発環境の準備... 3 2.1 仮想ディレクトリーの作成... 3 2.2 ASP.NET のWeb アプリケーション開発環境準備... 7 3. データベースの作成...10 3.1 データベースの追加...10

More information

ファイル操作-バイナリファイル

ファイル操作-バイナリファイル ファイル操作 バイナリ ファイルを読み書きする バイナリファイル ( 即ちテキストファイル以外のファイル ) を読み書きするには FileStream クラス (System.IO 名前空間 ) を利用する FileStream クラスはファイル用のストリームをサポートするクラスで有り Stream クラス (System.IO 名前空間 ) の派生クラスの 1 つで有る 基本的には コンストラクタで指定したファイルのストリームに対して

More information

データアダプタ概要

データアダプタ概要 データベース データアダプタ データアダプタの概要 データアダプタは ADO.NET マネージプロバイダの重要な部分で有り データソースとデータセットの間の通信に使用されるオブジェクトのセットで有る マネージプロバイダには アダプタの他に接続オブジェクト データリーダーオブジェクト 及び コマンドオブジェクトが含まれる アダプタは データソースとデータセットの間でデータを交換する為に使用される 多くのアプリケーションでは

More information

VB実用① データベースⅠ

VB実用① データベースⅠ VB でデータベース Ⅰ VB 2005 1 プログラムの概要 データベースプログラムを手軽に作成する方法と仕ては Access のフォーム機能を用いる事が 先ず考えられる ウィザードも充実して居り 操作を覚えれば簡単に作成する事が出来る 其れでは VB でデータベースプログラムを作るメリットは何かと謂えば先ず Access のフォーム機能に比べ コントロールが充実して居り より自由なデザインが可能と謂う事と

More information

ICONファイルフォーマット

ICONファイルフォーマット グラフィックス 画像フォーマットエンコーダパラメータ 様々なフォーマットで画像を保存 Bitmap クラスを用いる事でビットマップ JPEG GIF PNG 等様々なフォーマットの画像を読み込み操作する事が出来る 更に Bitmap クラスや Graphics コンテナを用いて描画処理等を施したイメージをファイルに保存する事も出来る 此の時 読み込めるフォーマット同様に保存するフォーマットを選択する事が出来る

More information

VB実用③ アクセス操作Ⅰ

VB実用③ アクセス操作Ⅰ VB でアクセス操作 Ⅰ VB 2005 3 プログラムの概要 此処では コントロールを使用しないで コードに依るデータベースへの接続とデータの取得の方法を学ぶ コントロールに依るデータベース接続は 簡単にデータベースを操作する事が出来ると謂う利点が有り 小規模な運用で有れば 充分な能力を発揮する 併し 中規模 大規模に成り 複雑な操作を必要とする様に成れば 力不足に成る可能性が高く成る 然う成れば

More information

問題 1 次の文章は Access データベース およびデータベースの概要について述べたものである にあてはまる適切なものを解答群 { } より選び その記号で答えよ 設問 1. Microsoft Access 2007 データベースのテーブルでは 表す としてデータを { ア. レコードを列 フ

問題 1 次の文章は Access データベース およびデータベースの概要について述べたものである にあてはまる適切なものを解答群 { } より選び その記号で答えよ 設問 1. Microsoft Access 2007 データベースのテーブルでは 表す としてデータを { ア. レコードを列 フ Microsoft Access ビジネスデータベース技能認定試験 3 級 2007 サンプル問題 知識試験 制限時間 30 分 受験会場 受験番号 氏 名 問題 1 次の文章は Access データベース およびデータベースの概要について述べたものである にあてはまる適切なものを解答群 { } より選び その記号で答えよ 設問 1. Microsoft Access 2007 データベースのテーブルでは

More information

グラフィックス 目次

グラフィックス 目次 WPF チュートリアル WPF デザイナーに依るサイズ変更可能なアプリケーションの作成 Grid コンテナーコントロールと共に GridSplitter コントロールを使用する事に依り 実行時にユーザーに依ってサイズを変更出来るウィンドウレイアウトを作成出来る 例えば 領域に分割されて居る UI を持つアプリケーションで ユーザーが分割線をドラッグする事に依り より多くの内容を見る必要が有る領域を大きくする事が出来る

More information

问题集 ITEXAMPASS 1 年で無料進級することに提供する

问题集 ITEXAMPASS   1 年で無料進級することに提供する 问题集 ITEXAMPASS https://www.itexampass.jp 1 年で無料進級することに提供する Exam : 70-762 Title : Developing SQL Databases Version : DEMO 1 / 10 1. ドラッグドロップ注 : この質問は 同じシナリオを使用する一連の質問の一部です あなたの便宜のために シナリオは各質問で繰り返されます 各質問は異なる目標と答えの選択を提示しますが

More information

第 12 講データ管理 1 2 / 14 ページ 12-1 データベースソフトの概要 データベースとは集められた様々なデータをテーマや目的に沿って分類 整理したものです データベースソフトでは データベースを作成し その管理を行います 何種類ものファイルや帳簿で管理していたデータをコンピュータ上で互

第 12 講データ管理 1 2 / 14 ページ 12-1 データベースソフトの概要 データベースとは集められた様々なデータをテーマや目的に沿って分類 整理したものです データベースソフトでは データベースを作成し その管理を行います 何種類ものファイルや帳簿で管理していたデータをコンピュータ上で互 B コース 1 / 14 ページ コンピュータリテラシー B コース 第 12 講 [ 全 15 講 ] 2011 年度春学期 基礎ゼミナール ( コンピューティングクラス ) 第 12 講データ管理 1 2 / 14 ページ 12-1 データベースソフトの概要 データベースとは集められた様々なデータをテーマや目的に沿って分類 整理したものです データベースソフトでは データベースを作成し その管理を行います

More information

Visual Basic 資料 電脳梁山泊烏賊塾 コレクション初期化子 コレクション初期化子 初めに.NET 版の Visual Basic では 其れ迄の Visual Basic 6.0 とは異なり 下記の例の様に変数宣言の構文に 初期値を代入する式が書ける様に成った 其の際 1 の様に単一の値

Visual Basic 資料 電脳梁山泊烏賊塾 コレクション初期化子 コレクション初期化子 初めに.NET 版の Visual Basic では 其れ迄の Visual Basic 6.0 とは異なり 下記の例の様に変数宣言の構文に 初期値を代入する式が書ける様に成った 其の際 1 の様に単一の値 コレクション初期化子 コレクション初期化子 初めに.NET 版の Visual Basic では 其れ迄の Visual Basic 6.0 とは異なり 下記の例の様に変数宣言の構文に 初期値を代入する式が書ける様に成った 其の際 1 の様に単一の値 ( 此処では 10) を代入する丈でなく 2 の配列変数の宣言の様に ブレース { } の中にカンマ区切りで初期値のリストを記述し 配列の各要素に初期値を代入出来る様に成った

More information

第 13 講データ管理 2 2 / 14 ページ 13-1 ファイルを開く 第 12 講で保存したデータベースファイル サークル名簿.accdb を開きましょう 1. Access を起動します 2. Microsoft Office Access - 作業の開始 が表示されていることを確認します

第 13 講データ管理 2 2 / 14 ページ 13-1 ファイルを開く 第 12 講で保存したデータベースファイル サークル名簿.accdb を開きましょう 1. Access を起動します 2. Microsoft Office Access - 作業の開始 が表示されていることを確認します B コース 1 / 14 ページ コンピュータリテラシー B コース 第 13 講 [ 全 15 講 ] 2011 年度春学期 基礎ゼミナール ( コンピューティングクラス ) 第 13 講データ管理 2 2 / 14 ページ 13-1 ファイルを開く 第 12 講で保存したデータベースファイル サークル名簿.accdb を開きましょう 1. Access を起動します 2. Microsoft Office

More information

グラフィックス

グラフィックス グラフィックス PictureBox の Image プロパティに関する良く有る勘違い PictureBox に画像を表示する方法と仕て PictureBox の Image プロパティを使う方法と Graphics の DrawImage メソッドを使う方法が有るが 此の 2 つの方法を混同し 正しく理解して居ない事が多い様で有る 例えば 下記に列挙する様な状況が 此れに該当する 1.PictureBox

More information

ルーレットプログラム

ルーレットプログラム ルーレットプログラム VB 2005 4 プログラムの概要 カジノの代表的なゲーム ルーレット を作成する 先ず GO! ボタンをクリックすると ルーレット盤上をボールが回転し 一定時間経過すると ボールが止まり 出目を表示するプログラムを作成する 出目を 1~16 大小 偶数奇数の内から予想して 予め設定した持ち点の範囲内で賭け点を決め 賭け点と出目に依り 1 点賭けの場合は 16 倍 其他は 2

More information

ADO.NETのアーキテクチャ

ADO.NETのアーキテクチャ データベース ADO.NET のアーキテクチャ 従来のデータ処理は 主に接続をベースとした 2 層モデルに基づいて居た 最近のデータ処理では 多階層アーキテクチャが多用される様に成った為 プログラマは 非接続型アプローチへと切り替えて アプリケーションに より優れたスケーラビリティを提供して居る ADO.NET のコンポーネント ADO.NET には データへのアクセスとデータの操作に使用出来るコンポーネントが

More information

64bit環境で32bitコンポーネントの利用

64bit環境で32bitコンポーネントの利用 64bit 環境 64bit 環境で 32bit コンポーネントの利用 Windows 7 や 8 の出現で 愈々 64bit 環境も普及し始めて来た 64bit 環境に於いては 64bit 用に最適化された 64bit コンポーネントを使用するのが本筋で有ろうが 64bit 環境に於いても 32bit コンポーネントを使用し度い場合が有る 過去の遺物 ( レガシ ) と仕て切り捨てるのではなく 良い物は良い物と仕て有効利用すると謂う観点から

More information

印刷

印刷 印刷 ローカル処理モードでの SQL Server データベースと ReportViewer コントロールの使用 此のチュートリアルでは Microsoft Visual Studio 2005 Windows アプリケーションプロジェクトでレポートを作成する方法と アプリケーションのユーザーがレポートを表示出来る様に ReportViewer コントロールを Windows フォームに追加する方法に付いて説明する

More information

グラフィックス 目次

グラフィックス 目次 WPF チュートリアル Microsoft Expression Blend を使用してボタンを作成する 此のチュートリアルでは WPF のカスタマイズされたボタンを Microsoft Expression Blend を使用して作成する手順に付いて説明する Microsoft Expression Blend の具体的な動作は Extensible Application Markup Language(XAML)

More information

正規表現応用

正規表現応用 正規表現 正規表現を使って文字列が或る形式と一致するか調べる 指定された正規表現のパターンと一致する対象が入力文字列内で見付かるか何うかを調べるには Regex クラスの IsMatch メソッドを使用する 此処では IsMatch メソッドを使った例を幾つか紹介する 猶 正規表現のパターンと一致する個所を探し 見付かれば 其の箇所を抽出する方法は 正規表現を使って文字列を検索し 抽出する で紹介して居る

More information

DAOの利用

DAOの利用 DAO VB2005 で DAO を使用して Excel のデータを取得 Visual Basic 6.0 Dim DB As DAO.Database Dim RS As DAO.Recordset Dim xlfilename As String Dim xlsheetname As String xlfilename = Form1.StatusBar1.Panels(12) & Dir(Form1.StatusBar1.Panels(12)

More information

NotifyIconコントロール

NotifyIconコントロール NotifyIcon コントロール システムトレイ ( タスクトレイ ) にアイコンを表示する.NET Framework 2.0 以降の場合は 後述の 2 を観て欲しい Outlook や MSN Messenger 等の様に Windows アプリケーションではシステムトレイ ( タスクトレイ ステータス領域等とも呼ばれる ) にアイコンを表示して アプリケーションの状態を示したり アプリケーションのフォームを表示したりする為のショートカットとして利用する事が出来る.NET

More information

ListViewコントロール

ListViewコントロール ListView コントロール ListView コントロールへ項目を追加 本稿では.NET Framework の標準コントロールで有る ListView コントロール (System.Windows.Forms 名前空間 ) を活用する為に ListView コントロールにデータを追加する方法を紹介する ListView コントロールは データ項目をアイコン表示や詳細表示等に依り一覧表示する為の物で

More information

目次 更新履歴... 1 はじめに... 3 レコードセット?... 3 準備... 5 SQL でデータを取得する... 6 データのループ処理... 7 列の値を取得する... 7 対象行を変更する (MoveFirst, MoveNext, MovePrevious, MoveLast)...

目次 更新履歴... 1 はじめに... 3 レコードセット?... 3 準備... 5 SQL でデータを取得する... 6 データのループ処理... 7 列の値を取得する... 7 対象行を変更する (MoveFirst, MoveNext, MovePrevious, MoveLast)... レコードセット (ADODB.Recordset) の使い方 作成日 : 2018/02/05 作成者 : 西村 更新履歴 更新日 更新概要 作業者 2018/02/05 新規作成 西村 1 目次 更新履歴... 1 はじめに... 3 レコードセット?... 3 準備... 5 SQL でデータを取得する... 6 データのループ処理... 7 列の値を取得する... 7 対象行を変更する (MoveFirst,

More information

Prog2_12th

Prog2_12th 2018 年 12 月 13 日 ( 木 ) 実施クラスの継承オブジェクト指向プログラミングの基本的な属性として, 親クラスのメンバを再利用, 拡張, または変更する子クラスを定義することが出来る メンバの再利用を継承と呼び, 継承元となるクラスを基底クラスと呼ぶ また, 基底クラスのメンバを継承するクラスを, 派生クラスと呼ぶ なお, メンバの中でコンストラクタは継承されない C# 言語では,Java

More information

Microsoft認定資格問題集(70-483_demo)

Microsoft認定資格問題集(70-483_demo) Microsoft 認定資格問題集 受験番号 : 70-483 受験名 : C# でのプログラミング言語 : 日本語問題数 :179 問 テストバリュー (TESTVALUE) はこの日本語版問題集の著作権を所有します 問題集の他人への展開 譲渡 転売 複製 転載等の無断行為は法律上で禁止されています 違反が発覚した場合 法的措置を取らせて頂きますので 予めご了承ください 問題 1 Orderオブジェクトのコレクションがあります

More information

Prog2_15th

Prog2_15th 2019 年 7 月 25 日 ( 木 ) 実施メニューメニューバーとコンテクストメニュー Visual C# では, メニューはコントロールの一つとして扱われ, フォームアプリケーションの上部に配置されるメニューバーと, コントロール上でマウスを右クリックすると表示されるコンテクストメニューとに対応している これ等は選択するとメニューアイテムのリストが表示されるプルダウンメニューと呼ばれる形式に従う

More information

DumpCollection IT Exam Training online / Bootcamp PDF and Testing Engine, study and practice

DumpCollection IT Exam Training online / Bootcamp   PDF and Testing Engine, study and practice DumpCollection IT Exam Training online / Bootcamp http://www.dumpcollection.com PDF and Testing Engine, study and practice Exam : 1z0-144 日本語 (JPN) Title : Oracle Database 11g: Program with PL/SQL Vendor

More information

プラグイン

プラグイン プラグイン プラグイン詳細 2 ~ プラグイン機能を持つテキストエディタの作成 ~ はじめに Adobe Photoshop や Becky! Internet Mail 等のアプリケーションでは プラグイン ( 又は アドイン エクステンション 等 ) と呼ばれるプログラムをインストールする事に依り 機能を拡張する事が出来る 此の記事では此の様なプラグイン機能を持ったアプリケーションの作り方を プラグイン対応のテキストエディタを作成する事に依り

More information

スライド タイトルなし

スライド タイトルなし 情報分析演習 Access 第 3 回 注意 : この回の操作演習は 第 2 回で作成したアドレス帳の内容をもとに実施します クエリ query [1] 疑問, 質問.(question の形式張った語 ) [2] 疑い, 疑惑, 疑念 [3] 疑問符 [4] 問い合わせ ( ランダムハウス英和辞典より ) データベースでは 問合せや照会の意味で テーブルのデータからある条件に見合うものを引っ張り出し

More information

Design with themes — Part 1: The Basics

Design with themes — Part 1: The Basics PowerPoint 入門 PowerPoint はプレゼンテーションのための効果的なアプリケーションです 最も効果的に使用するためには 最初にその基礎を理解する必要があります このチュートリアルでは すべてのプレゼンテーションで使用する作業と機能をいくつか紹介します 開始する前に... 1 1. 新しい空白のプレゼンテーションを作成する... 2 2. PowerPoint ユーザーインターフェイスについて...

More information

HOL14: Microsoft Office Excel 2007 の ブラウザと Web サービス対応

HOL14: Microsoft Office Excel 2007 の ブラウザと Web サービス対応 HOL14: Microsoft Office Excel 2007 の ブラウザと Web サービス対応 Microsoft Office Excel 2007 のブラウザと Web サービス対応 Exercise 1: ポータルへの発行とスプレッドシートの使用 Microsoft Office Server Excel Service は 2007 Microsoft Office system

More information

データベース1

データベース1 データベース操作プログラム Ⅰ VB8 プログラムの概要 データベースプログラムを手軽に作成する方法としては Access のフォーム機能を用いる事が 先ず考えられます ウィザードも充実しており 操作を覚えれば簡単に作成する事が出来ます 其れでは VB でデータベースプログラムを作るメリットは何んでしょうか 1 つは Access のフォーム機能に比べ コントロールが充実している事 より自由なデザインが可能です

More information

プロセス間通信

プロセス間通信 プロセス間通信 プロセス間通信 (SendMessage) プロセス間通信とは 同一コンピューター上で起動して居るアプリケーション間でデータを受け渡し度い事は時々有る Framework には リモート処理 と謂う方法でデータの受け渡しを行なう方法が有る 此処では 此の方法では無く 従来の方法の API を使用したプロセス間通信を紹介する 此の方法は 送信側は API の SendMessage で送り

More information

第 1 章 : はじめに RogueWave Visualization for C++ の Views5.7 に付属している Views Studio を使い 簡単な GUI アプリケーションの開発手順を紹介します この文書では Windows 8 x64 上で Visual Studio2010

第 1 章 : はじめに RogueWave Visualization for C++ の Views5.7 に付属している Views Studio を使い 簡単な GUI アプリケーションの開発手順を紹介します この文書では Windows 8 x64 上で Visual Studio2010 RW View Studio Getting Started (1) : 簡単な GUI アプリケーションを作成する 目次 第 1 章はじめに...1 1.1 アプリケーションの概要... 1 1.2 Views Studio とは... 2 第 2 章 Views Studio を起動する...3 2.1 起動画面 ( メインウィンドウ ) の説明... 4 2.2 ガジェットエクステンション...

More information

PowerPoint Presentation

PowerPoint Presentation UiPath 女性ユーザー コミュニティ第 1 回 Meetup 2018.9.12 (WED) 女性ユーザーコミュニティ概要 目的 : まだまだ男性と比べると数が少ない UiPath を使ってる女性ユーザーに対し 勉強 意見交換ができる場を提供し 女性ユーザーをさらに増やします 対象 : 仕事で UiPath を使っている これから使う予定の女性の方 コミュニティ内容 : 勉強会 交流会の実施 デベロッパーコミュニティと何が違うの?

More information

VB実用⑦ エクセル操作Ⅰ

VB実用⑦ エクセル操作Ⅰ VB でエクセル操作 Ⅰ VB 2005 7 プログラムの概要 事務処理に於いて Microsoft 社のスプレッドシートソフトで有るエクセルは データベースソフトで有るアクセスと共に 業界標準 (De Facto Standard) で有ると謂う事が出来る 此処では 其のエクセルを Visual Basic から操作する方法を 重点的に学ぶ 今回は Visual Basic でエクセルを利用する基本と成るオブジェクト生成と

More information

ファイル操作-インターネットキャッシュ

ファイル操作-インターネットキャッシュ ファイル操作 インターネット一時ファイルの保存場所 インターネットキャッシュ インターネット一時ファイルの保存場所は Internet Explorer の場合 下記の手順で確認する事が出来る 1.[ ツール ] [ インターネットオプション ] でインターネットオプション画面のダイアログを表示させる 2.[ 全般 ] タブで [ インターネット一時ファイル ] グループの [ 設定 ] をクリックすると

More information

Microsoft Word - Android_SQLite講座_画面800×1280

Microsoft Word - Android_SQLite講座_画面800×1280 Page 24 11 SQLite の概要 Android にはリレーショナルデータベースである SQLite が標準で掲載されています リレーショナルデータベースは データを表の形で扱うことができるデータベースです リレーショナルデータベースには SQL と呼ばれる言語によって簡単にデータの操作や問い合わせができようになっています SQLite は クライアントサーバ形式ではなく端末の中で処理が完結します

More information

データベース1

データベース1 データベース操作プログラム Ⅲ VB20 プログラムの概要 ACCESS 等のデータベースの操作に不慣れな者でも 簡単に使用する事が出来るようなデータベースアプリケーションを目指します 今回は データグリッドをクリックする事に依り 其のレコードのフィールドデータを個別にテキストボックスやコンボボックスに表示するを付加する 此の際 カテゴリ ID や著者 ID の様に人間に解り難いデータ形式では無く

More information

Section1_入力用テンプレートの作成

Section1_入力用テンプレートの作成 入力用テンプレートの作成 1 Excel には 効率よく かつ正確にデータを入力するための機能が用意されています このセクションでは ユーザー設定リストや入力規則 関数を利用した入力用テンプレートの作成やワークシート操作について学習します STEP 1 ユーザー設定リスト 支店名や商品名など 頻繁に利用するユーザー独自の連続データがある場合には ユーザー設定リスト に登録しておけば オートフィル機能で入力することができ便利です

More information

データベースⅠ

データベースⅠ データベース操作プログラム Ⅰ VB 2005 8 プログラムの概要 データベースプログラムを手軽に作成する方法としては Access のフォーム機能を用いる事が 先ず考えられます ウィザードも充実しており 操作を覚えれば簡単に作成する事が出来ます 其れでは VB でデータベースプログラムを作るメリットは何んでしょうか 1 つは Access のフォーム機能に比べ コントロールが充実している事 より自由なデザインが可能です

More information

モデリング操作ガイド (データベースモデリング編)

モデリング操作ガイド (データベースモデリング編) Tutorial by SparxSystems Japan Enterprise Architect 日本語版 (2019/08/22 最終更新 ) 目次 1. はじめに... 3 2. データベース設計のモデリング... 4 2.1. テーブル要素の作成... 5 2.2. テーブルの定義... 7 2.3. 列の定義... 7 2.4. テーブル間の関係の定義... 9 3. データベース設計のモデリングでの便利なテクニック

More information

データベースアクセス

データベースアクセス データベースアクセスコンポーネント 1. 概要 データベースアクセスコンポーネントとは SQL データベースにアクセスして SQL 文を実行することによりデータベース検索を行う機能を提供するコンポーネントです また データベースアクセスコンポーネントでは データベースの構成情報 接続情報 エラー情報等を取得することも可能です データベースアクセスコンポーネントは アプリケーションビルダーのメニューから以下のように選びます

More information

目次 はじめに... 3 システムの必要条件... 4 ライセンス認証... 4 アクティベーション... 6 開発... 7 手順 1. アプリケーションの作成... 7 手順 2. データソースの作成と代入... 7 手順 3. テンプレートの作成 手順 4. レポートビューアの追加

目次 はじめに... 3 システムの必要条件... 4 ライセンス認証... 4 アクティベーション... 6 開発... 7 手順 1. アプリケーションの作成... 7 手順 2. データソースの作成と代入... 7 手順 3. テンプレートの作成 手順 4. レポートビューアの追加 SharpShooter Reports.Win 基本的な使い方 Last modified on: November 15, 2012 本ドキュメント内のスクリーンショットは英語表記ですが SharpShooter Reports JP( 日本語版 ) では日本語で表示されま す 目次 はじめに... 3 システムの必要条件... 4 ライセンス認証... 4 アクティベーション... 6 開発...

More information

Case 0 sqlcmdi.parameters("?tencode").value = Iidata(0) sqlcmdi.parameters("?tenname").value = Iidata(1) 内容を追加します sqlcmdi.executenonquery() Case Else

Case 0 sqlcmdi.parameters(?tencode).value = Iidata(0) sqlcmdi.parameters(?tenname).value = Iidata(1) 内容を追加します sqlcmdi.executenonquery() Case Else Imports MySql.Data.MySqlClient Imports System.IO Public Class Form1 中間省略 Private Sub コマンドテストCToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles コマンドテストCToolStripMenuItem.Click

More information

ER/Studio Data Architect 2016 の新機能

ER/Studio Data Architect 2016 の新機能 ER/Studio Data Architect 2016 の新機能 ビジネスデータオブジェクトエンティティ / テーブルをビジネスデータオブジェクトにまとめることができるようになりました これらのオブジェクトにより 共通のリレーションシップを共有するエンティティやテーブルを目に見えるコンテナにまとめることができるので ビジネス概念をより適切に記述できます モデル / サブモデルの NST モデルやサブモデルに名前付け標準テンプレート

More information

データベースプログラミング

データベースプログラミング データベース Visual Studio 2010 に依る Windows データベースプログラミング 第 1 回 DB アプリのデータソースと成るデータベースの作成 1.SQL Server の DB ファイルをプロジェクトに追加 2. データソース構成ウィザードに依る DB ファイルの追加 3. テーブルの作成とレコードの追加 第 2 回データセットとデータテーブル 1. データセットとは? 2.

More information

図 2 Excel スプレッドシートの世界 のウィンドウ 図 3 Visual Basic の世界 のウィンドウ 図 3 の VBA ウィンドウは 図 2 の Excel ウィンドウのメニューの ツール をクリックし 開か れるプルダウンメニューで マクロ /Visual Basic Editor

図 2 Excel スプレッドシートの世界 のウィンドウ 図 3 Visual Basic の世界 のウィンドウ 図 3 の VBA ウィンドウは 図 2 の Excel ウィンドウのメニューの ツール をクリックし 開か れるプルダウンメニューで マクロ /Visual Basic Editor Excel マクロ -Visual Basic の基本 - 1.Excel ファイルの構成 Excel ファイルは 右図のように 構成されている 一般に Excel と言えば 右図で Excel スプレッドシートの世界 と名付けた部分 すなわち Excel を起動したときに表示されるスプレッドシート (1ページの場合もあり 数ページの場合もある ) のみであるように思われている Excel ファイルには

More information

Prog2_4th

Prog2_4th 2018 年 10 月 18 日 ( 木 ) 実施 イベントハンドライベントハンドラとは Windows フォーム上のコントロールに対して クリックされた とか 文字列を変更された とかいったイベントを行った際に, それを受け取って処理を行うメソッドをイベントハンドラと呼ぶ 本日の課題第 3 回の授業では, フォームデザイナーで該当するコントロールをダブルクリックして, コードエディタに表示されたイベントハンドラの処理を記述したが,

More information

Microsoft Word - VB.doc

Microsoft Word - VB.doc 第 1 章 初めてのプログラミング 本章では カウントアップというボタンを押すと表示されている値が1ずつ増加し カウントダウンというボタンを押すと表示されている値が1ずつ減少する簡単な機能のプログラムを作り これを通して Visual Basic.NET によるプログラム開発の概要を学んでいきます 1.1 起動とプロジェクトの新規作成 Visual Studio.NET の起動とプロジェクトの新規作成の方法を

More information

インテル(R) Visual Fortran コンパイラ 10.0

インテル(R) Visual Fortran コンパイラ 10.0 インテル (R) Visual Fortran コンパイラー 10.0 日本語版スペシャル エディション 入門ガイド 目次 概要インテル (R) Visual Fortran コンパイラーの設定はじめに検証用ソースファイル適切なインストールの確認コンパイラーの起動 ( コマンドライン ) コンパイル ( 最適化オプションなし ) 実行 / プログラムの検証コンパイル ( 最適化オプションあり ) 実行

More information

平成 30 年度 プログラミング研修講座 岩手県立総合教育センター

平成 30 年度 プログラミング研修講座 岩手県立総合教育センター 平成 30 年度 プログラミング研修講座 岩手県立総合教育センター 目次第 1 章プログラミングについて 1 ソフトウェアの働き 1 2 プログラミング言語 1 3 主なプログラミング言語の歴史 2 第 2 章 Visual Basic について 1 Visual Basic とは 3 2.NET Framework の環境 3 3 Visual Basic と.NET Framework の関係

More information

本書は INpMac v2.20(intime 5.2 INplc 3 Windows7/8/8.1に対応 ) の内容を元に記載しています Microsoft Windows Visual Studio は 米国 Microsoft Corporation の米国及びその他の国における登録商標です

本書は INpMac v2.20(intime 5.2 INplc 3 Windows7/8/8.1に対応 ) の内容を元に記載しています Microsoft Windows Visual Studio は 米国 Microsoft Corporation の米国及びその他の国における登録商標です ACTIVE TOUCH 拡張部品取扱説明書 - 共有メモリアクセスコンポーネント - 1. はじめに 1 (1) 概要... 1 (2) INpMac のインストール... 1 2. Windows アプリケーションとの連携 2 (1) コントロール ( 部品 ) の登録... 2 (2) データの関連付け... 3 3. INtime アプリケーションとの連携 4 (1) 部品 ( コンポーネント

More information

Base によるアプリケーション開発とサポート 鎌滝雅久 /OpenOffice.org 日本ユーザー会 OSC2007 Hokkaido 2007 年 6 月 30 日土曜日 10:55-11:40 北海道大学学術交流会館第 4 会議室

Base によるアプリケーション開発とサポート 鎌滝雅久 /OpenOffice.org 日本ユーザー会 OSC2007 Hokkaido 2007 年 6 月 30 日土曜日 10:55-11:40 北海道大学学術交流会館第 4 会議室 Base によるアプリケーション開発とサポート 鎌滝雅久 /OpenOffice.org 日本ユーザー会 OSC2007 Hokkaido 2007 年 6 月 30 日土曜日 10:55-11:40 北海道大学学術交流会館第 4 会議室 本日の予定 デモ ( どこでもPDF/ 見積書作成 ) Basicでプログラム~Visual Studioはいらない? Microsoft Officeからの移行

More information

Excel2013 データベース1(テーブル機能と並べ替え)

Excel2013 データベース1(テーブル機能と並べ替え) OA スキルアップ EXCEL2013 データベース 1( テーブル機能と並べ替え ) 1 / 8 Excel2013 データベース 1( テーブル機能と並べ替え ) データベース機能概要 データベース機能とは データベース とは売上台帳 顧客名簿 社員名簿など 特定のルールに基づいて集められたデータを指します Excel のデータベース機能には 並べ替え 抽出 集計 分析 といった機能があります

More information

構造体

構造体 構造体 Byte 配列 構造体とコピーする方法 構造体とバイト配列の変換を行うには System.Runtime.InteropServices 名前空間をインポートして置くと便利で有る Imports System.Runtime.InteropServices using System.Runtime.InteropServices; 下記の 3 種類の構造体にバイト配列の値を格納した場合に付いて検証する

More information

Microsoft Word -

Microsoft Word - Visual Basic 2005 Express Edition 起動とプロジェクトの新規作成方法 1.1 起動とプロジェクトの新規作成 Visual Basic の起動とプロジェクトの新規作成の方法を Visual Basic 2005 Express Edition で説明します なお バージョンやエディションが異なる場合は 操作方法が若干違います 本節の起動とプロジェクトの新規作成の部分については

More information

立ち読みページ

立ち読みページ 2 Access データベースの作成 テーブルの作成と編集 フォームの作成と 編集 レポートの作成と編集など Access データベース要素の作成と書 式設定について解説します 2-1 データベースを作成する 69 2-2 テーブルを作成する 72 2-3 テーブルを編集する 77 2-4 フィールドを作成してフィールドプロパティを編集する 84 2-5 フォームを作成する 96 2-6 レポートを作成する

More information

標準化 補足資料

標準化 補足資料 高度専門データベース技術 SQL99 補足資料 ( 株 ) アイテック情報技術教育研究部 2012 年 2 月 14 日 ( はじめに ) この補足資料は,SQL99(ISO/IEC9075-2,JIS X3005-2) の必須機能 (Core SQL) のうち, SQL92に対し機能拡張が行われた部分で, 高度専門データベース技術 ( 以下, DB 技術 という ) に記載のないものについて記述する

More information

テキストファイルの入出力1

テキストファイルの入出力1 テキストファイルの入出力 1 0. 今回の目的前回までは 2 回にわたって繰り返しについて学んできました 今回からテキストファイルの入出力について学ぶことにします 1. テキストファイルへの出力 1.1 テキストファイルについてテキストファイルとは コンピュータで扱うことが出来るファイルの中で最も基本的なファイルであり どの様な OS でもサポートされているファイル形式です Windows においては

More information

ハッシュテーブル

ハッシュテーブル ハッシュテーブル ハッシュテーブル ( 連想配列 ) を使う ハッシュテーブルとは キー (key) と値 (value) のペアを保持して居るコレクションで有る 通常の配列がインデックス番号に依り各値 ( 各要素 ) にアクセス出来るのに比べて ハッシュテーブルでは インデックス番号の代わりにキーを用いて 其の各値にアクセスする事が出来る キーと 其のキーから連想される ( 対応付けられて居る )

More information

McAfee SaaS Protection 統合ガイド Microsoft Office 365 と Exchange Online の保護

McAfee SaaS  Protection 統合ガイド Microsoft Office 365 と Exchange Online の保護 統合ガイド改訂 G McAfee SaaS Email Protection Microsoft Office 365 と Exchange Online の保護 Microsoft Office 365 の設定 このガイドの説明に従って McAfee SaaS Email Protection を使用するように Microsoft Office 365 と Microsoft Exchange Online

More information

データベース1

データベース1 データベース操作プログラム Ⅱ VB9 プログラムの概要 オブジェクト型の変数宣言を行い コード上で データベースに接続し SQL を発行する 今回は オブジェクト型の変数宣言に依り データベースと接続する為のオブジェクト 及び 検索文を発行した際にデータを格納するオブジェクトを コード上で生成してデータベースに接続し 各レコードのフィールド情報を取得して 其れをコンボボックスの項目に追加する 此れに依り

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション No 区分実行版 dbsheetclient2013 リリースノート Project Editor 内容 2012/5/29 現在 管理 V 1 新機能 タスクタイプ 参照ブックを開く (62201) に以下の機能を追加しました 1 オープンしたブックのファイル名出力 指定したセルにオープンした Excel ブックのファイル名 ( パスを含む ) を出力します 2 オープンしたブックの上書き保存を許可する

More information

.NETプログラマー早期育成ドリル ~VB編 付録 文法早見表~

.NETプログラマー早期育成ドリル ~VB編 付録 文法早見表~ .NET プログラマー早期育成ドリル VB 編 付録文法早見表 本資料は UUM01W:.NET プログラマー早期育成ドリル VB 編コードリーディング もしくは UUM02W:.NET プログラマー早期育成ドリル VB 編コードライティング を ご購入頂いた方にのみ提供される資料です 資料内容の転載はご遠慮下さい VB プログラミング文法早見表 < 基本文法 > 名前空間の定義 Namespace

More information

目次 はじめに... 3 システムの必要条件... 3 サンプルアプリケーションの作成... 3 手順 手順 手順 手順 手順 手順 終わりに... 23

目次 はじめに... 3 システムの必要条件... 3 サンプルアプリケーションの作成... 3 手順 手順 手順 手順 手順 手順 終わりに... 23 SharpShooter Reports.Silverlight 基本的な使い方 Last modified on: August 16, 2012 本ドキュメント内のスクリーンショットは英語表記ですが SharpShooter Reports JP( 日本語版 ) では日本語で表示されます 目次 はじめに... 3 システムの必要条件... 3 サンプルアプリケーションの作成... 3 手順 1...

More information

内容 MD00Manager とは?... MD00Manager をインストールする.... ソフトのインストール... MD00Manager の使い方.... 起動をする... 機能説明...7 機能説明 ( メニューバー )...8 機能説明 ( ステータスバー )...8 機能説明 ( コ

内容 MD00Manager とは?... MD00Manager をインストールする.... ソフトのインストール... MD00Manager の使い方.... 起動をする... 機能説明...7 機能説明 ( メニューバー )...8 機能説明 ( ステータスバー )...8 機能説明 ( コ MD00Manager マニュアル このマニュアルでは MD00Manager の詳細設定を行うことが出来ます MD00Manager では MD00 の設定変更や読み取ったデータを CSV に出力 照合用のデータベースの作成を行えます MD00 についてはそれぞれのマニュアルを確認して下さい Ver.0 内容 MD00Manager とは?... MD00Manager をインストールする....

More information

プレポスト【問題】

プレポスト【問題】 コース名 : 基礎から学ぶ!Excel VBA による業務の自動化 受講日 氏名 1 Excel VBA を使用するメリットとして誤っているものを 1 つ選びなさい 1. 手作業では手間のかかる作業も プログラムに記述した処理は一括して実行されるため 何段階ものメニュー操作を行う必要がなくなる 2. プログラムに書いた処理は記述どおりに実行されるため だれがいつ何回行っても確実な処理がなされ 誤動作を防ぐことができる

More information

2 / 16 ページ 第 7 講データ処理 ブック ( ファイル ) を開く第 6 講で保存したブック internet.xlsx を開きましょう 1. [Office ボタン ] から [ 開く ] をクリックします 2. [ ファイルの場所 ] がデータを保存している場所になっている

2 / 16 ページ 第 7 講データ処理 ブック ( ファイル ) を開く第 6 講で保存したブック internet.xlsx を開きましょう 1. [Office ボタン ] から [ 開く ] をクリックします 2. [ ファイルの場所 ] がデータを保存している場所になっている 1 / 16 ページ コンピュータリテラシー B コース 第 7 講 [ 全 15 講 ] 2011 年度春学期 基礎ゼミナール ( コンピューティングクラス ) 2 / 16 ページ 第 7 講データ処理 2 7-1 ブック ( ファイル ) を開く第 6 講で保存したブック internet.xlsx を開きましょう 1. [Office ボタン ] から [ 開く ] をクリックします 2.

More information

C1Live

C1Live C1Live 2014.01.30 更新 グレープシティ株式会社 Copyright GrapeCity, Inc. All rights reserved. C1Live 目次 i 目次 ComponentOne Studio Live 更新ユーティリティの概要 1 Studio Live について 2 Studio Live 製品グリッド... 3 Studio Live メニュー... 4 Studio

More information

概要 ABAP 開発者が SAP システム内の SAP ソースまたは SAP ディクショナリーオブジェクトを変更しようとすると 2 つのアクセスキーを入力するよう求められます 1 特定のユーザーを開発者として登録する開発者キー このキーは一度だけ入力します 2 SAP ソースまたは SAP ディクシ

概要 ABAP 開発者が SAP システム内の SAP ソースまたは SAP ディクショナリーオブジェクトを変更しようとすると 2 つのアクセスキーを入力するよう求められます 1 特定のユーザーを開発者として登録する開発者キー このキーは一度だけ入力します 2 SAP ソースまたは SAP ディクシ オンラインヘルプ :SAP ソフトウェア変更登録 (SSCR) キーの登録 目次 概要... 2 参考リンク... 3 アプリケーションの起動... 4 アプリケーションとメインコントロールの概要... 5 キーリストのカスタマイズ... 7 リストのフィルタリング... 7 表のレイアウトのカスタマイズ... 8 新しい開発者の登録... 10 新しいオブジェクトの登録... 12 特定のインストレーションから別のインストレーションに個々の

More information

PYTHON 資料 電脳梁山泊烏賊塾 PYTHON 入門 関数とメソッド 関数とメソッド Python には関数 (function) とメソッド (method) が有る モジュール内に def で定義されて居る物が関数 クラス内に def で定義されて居る物がメソッドに成る ( 正確にはクラスが

PYTHON 資料 電脳梁山泊烏賊塾 PYTHON 入門 関数とメソッド 関数とメソッド Python には関数 (function) とメソッド (method) が有る モジュール内に def で定義されて居る物が関数 クラス内に def で定義されて居る物がメソッドに成る ( 正確にはクラスが PYTHON 入門 関数とメソッド 関数とメソッド Python には関数 (function) とメソッド (method) が有る モジュール内に def で定義されて居る物が関数 クラス内に def で定義されて居る物がメソッドに成る ( 正確にはクラスがインスタンス化されてからメソッドに成る ) # 関数 def test_func(): print('call test_func') #

More information

スライド 1

スライド 1 6B-1. 表計算ソフトの操作 ( ) に当てはまる適切な用語とボタン ( 図 H 参照 ) を選択してください ( 選択肢の複数回の選択可能 ) (1) オートフィルオートフィルとは 連続性のあるデータを隣接 ( りんせつ ) するセルに自動的に入力してくれる機能です 1. 図 1のように連続した日付を入力します *( ア ) は 下欄 ( からん ) より用語を選択してください セル A1 クリックし

More information

VFD256 サンプルプログラム

VFD256 サンプルプログラム VFD256 サンプルプログラム 目次 1 制御プログラム... 1 2.Net 用コントロール Vfd256 の使い方... 11 2.1 表示文字列の設定... 11 2.2 VFD256 書込み前のクリア処理... 11 2.3 書き出しモード... 11 2.4 表示モード... 12 2.5 表示... 13 2.6 クリア... 13 2.7 接続方法 ボーレートの設定... 13 2.8

More information

データの作成方法のイメージ ( キーワードで結合の場合 ) 地図太郎 キーワードの値は文字列です キーワードの値は重複しないようにします 同じ値にする Excel データ (CSV) 注意キーワードの値は文字列です キーワードの値は重複しないようにします 1 ツールバーの 編集レイヤの選択 から 編

データの作成方法のイメージ ( キーワードで結合の場合 ) 地図太郎 キーワードの値は文字列です キーワードの値は重複しないようにします 同じ値にする Excel データ (CSV) 注意キーワードの値は文字列です キーワードの値は重複しないようにします 1 ツールバーの 編集レイヤの選択 から 編 手順 4 Excel データを活用する ( リスト / グラフ 色分け ) 外部の表データ (CSV 形式 ) を読み込み リスト表示やカード表示 その値によって簡単なグラフ ( 円 正方形 棒の 3 種類 ) や色分け表示することができます この機能を使って地図太郎の属性情報に無い項目も Excel で作成し CSV 形式で保存することにより 自由に作成することができます (Excel でデータを保存するとき

More information

マイクロソフト IT アカデミー E ラーニングセントラル簡単マニュアル ( 管理者用 ) 2014 年 11 月

マイクロソフト IT アカデミー E ラーニングセントラル簡単マニュアル ( 管理者用 ) 2014 年 11 月 マイクロソフト IT アカデミー E ラーニングセントラル簡単マニュアル ( 管理者用 ) 2014 年 11 月 サインインについて Microsoft Online Learning にアクセスする方法は 組織の既存の管理者にアカウントを作成してもらい 受信した電子メールのリンクをクリックして登録するか もしくはメンバーシップのアクティブ化リンク から登録する必要があります 初めてのサインイン

More information

第 2 章 PL/SQL の基本記述 この章では PL/SQL プログラムの基本的な記述方法について説明します 1. 宣言部 2. 実行部 3. 例外処理部

第 2 章 PL/SQL の基本記述 この章では PL/SQL プログラムの基本的な記述方法について説明します 1. 宣言部 2. 実行部 3. 例外処理部 はじめに コース概要と目的 Oracle 独自の手続き型言語である PL/SQL について説明します PL/SQL の基本構文 ストアド サブプログラム トリガーの作成方法 またストアド サブプログラムの管理について習得することを目的としています 受講対象者 これから PL/SQL を使用してアプリケーション開発をされる方 前提条件 SQL トレーニング コースを受講された方 もしくは 同等の知識をお持ちの方

More information

Windows8.1基礎 ファイル管理

Windows8.1基礎 ファイル管理 OA ベーシック Windows8.1 基礎ファイル管理 1 / 8 Windows8.1 基礎ファイル管理 ファイル管理前編 ファイルとフォルダーの概要 ファイル Excel や Word などのアプリで作成したデータを ファイル といいます ファイルは 作成元のアプリの種類により Word では 文書 Excel では ブック PowerPoint では プレゼンテーション と呼ばれています ファイルの種類はアイコンのデザインで確認できます

More information

マクロの実行許可設定をする方法 Excel2010 で 2010 でマクロを有効にする方法について説明します 参考 URL:

マクロの実行許可設定をする方法 Excel2010 で 2010 でマクロを有効にする方法について説明します 参考 URL: マクロの実行許可設定をする方法 Excel2010 で 2010 でマクロを有効にする方法について説明します 参考 URL: http://excel2010.kokodane.com/excel2010macro_01.htm http://span.jp/office2010_manual/excel_vba/basic/start-quit.html Excel2010 でマクロを有効にする

More information

Team Foundation Server 2018 を使用したバージョン管理 補足資料

Team Foundation Server 2018 を使用したバージョン管理 補足資料 Team Foundation Server 2018 を使用したバージョン管理 Magic xpa 3.0/Magic xpa 2.5/uniPaaS V1Plus 補足資料 マジックソフトウェア ジャパン株式会社 2018 年 8 月 24 日 本ドキュメントは Magic xpa 3.0/Magic xpa 2.5/uniPaaS V1Plus で Team Foundation Server(

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション 5 月 Java 基礎 1 タイトル Java 基礎 2 日間 概要 目的 サーバサイドのプログラミング言語で最もシェアの高い Java SE の基本を習得します 当研修ではひとつの技術ごとに実用的なアプリケーションを作成するため 効果的な学習ができます Java SE の多くの API の中で 仕事でよく利用するものを中心に効率よく学びます 実際の業務で最も利用される開発環境である Eclipse

More information

ブロック パニック

ブロック パニック ブロックパニック VB 2005 9 プログラムの概要 壁が迫り来る不思議な空間のオリジナルゲーム ブロックパニック を作成する スタートボタンをクリックし上下左右の矢印キーで白猿を移動させる スペースキーを押すと 向いて居る方向の壁が後退する 左右の壁が合わさると ゲームは終了する 一般的に 実用プログラムに比較するとゲームプログラムは 高度なテクニックを要求される事が多い 此処では ゲームプログラムを作成する事に依り

More information

内容 1 はじめに インストールの手順 起動の手順 Enterprise Architect のプロジェクトファイルを開く 内容を参照する プロジェクトブラウザを利用する ダイアグラムを開く 便利な機能.

内容 1 はじめに インストールの手順 起動の手順 Enterprise Architect のプロジェクトファイルを開く 内容を参照する プロジェクトブラウザを利用する ダイアグラムを開く 便利な機能. Viewer manual by SparxSystems Japan Enterprise Architect 読み込み専用版 (Viewer) 利用マニュアル 内容 1 はじめに...3 2 インストールの手順...3 3 起動の手順...6 4 Enterprise Architect のプロジェクトファイルを開く...7 5 内容を参照する...8 5.1 プロジェクトブラウザを利用する...8

More information

ファイル監視

ファイル監視 ファイル操作 ファイルやディレクトリの監視 FileSystemWatcher クラス.NET Framework のクラスライブラリには ファイルやディレクトリの作成 変更 削除を監視する為の FileSystemWatcher クラスが System.IO 名前空間に用意されて居る ( 但し Windows 98/Me では利用出来ない ) 此れを利用すると 特定のディレクトリにファイルが作成された

More information

ゲートウェイ ファイル形式

ゲートウェイ ファイル形式 ゲートウェイ ファイル形式 この章では Cisco Unified Communications Manager 一括管理 BAT を使用して Cisco Unified Communications Manager データベース内の Cisco ゲートウェイのファイル形式を一括して設定す る方法について説明します ゲートウェイ ファイル形式の検索, 1 ページ ゲートウェイ ファイル形式の設定,

More information

Exam : J Title : Querying Microsoft SQL Server 2012 Version : DEMO 1 / 10

Exam : J Title : Querying Microsoft SQL Server 2012 Version : DEMO 1 / 10 PASSEXAM http://www.passexam.jp Exam : 70-461J Title : Querying Microsoft SQL Server 2012 Version : DEMO 1 / 10 1. あなたが ContosoDb 付きの Microsoft SQL Server 2012 のデータベースを管理します 展示に示すように テーブルが定義されています ( 図表ボタンをクリックします

More information

MS Office オートメーション

MS Office オートメーション MS Office オートメーション Excel マクロのキックに依る印刷 Access では CSV や Excel 形式でのファイル保存が可能で有る 此れ利用して Excel のマクロを装備したシートに読み込んでマクロを実行し 印刷する方法を紹介する 一般的には, 単成るテキストファイルで有る CSV の方が Excel 形式ファイルより汎用性が有るが マクロで自動実行した時には が行頭に付いて居るセルを文字列型と仕て認識して仕舞うと謂う問題が発生する為

More information

プレポスト【問題】

プレポスト【問題】 1/5 ページ プレポスト データベース基礎 受講日程受講番号氏名 1 データベースの特徴で間違っているものを選びなさい 1. データの一元管理が可能 2. データの重複が少ない 3. プログラムとの関係が1 対 1 4. データの整合性の確保 2 ANSI/SPARC による 3 層スキーマについて正しいものを選びなさい 1. 外部スキーマ : プログラムに必要な部分のデータ構造を定義概念スキーマ

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション JAN コード登録マニュアル 項目説明 CSV で商品データを upload するに当たり 間違えやすいカラムについてまとめました 項目 説明 備考 コントロールカラム CSV 上で当該商品情報をどうするのか ( 更新 削除等 ) 指示するコード "u": 更新 "d": 削除等 商品管理番号 出来上がった商品ページURLの一部であり 入力がない場合は自動採番される web 上で商品を特定するキーコード

More information

電話機のファイル形式

電話機のファイル形式 この章では テキスト エディタを使用して作成する CSV データ ファイルのファイル形式を設定 する方法について説明します 電話機 CSV データ ファイルを作成するためのテキスト エディタ, 1 ページ の検索, 2 ページ CSV データ ファイルの電話機ファイル形式の設定, 3 ページ テキストベースのファイル形式と CSV データ ファイルの関連付け, 7 ページ 電話機 CSV データ ファイルを作成するためのテキスト

More information