‫お帰りなさい｡
‫このビデオでは､ 最初のテーブルを作成する予定です｡
‫と､ その前に､ この章の結末をお見せしたいと思います｡
‫ご覧のように､ ここにはメインウィンドウというウィンドウがあり､ ここには複数の異なるコントロールがあります｡
‫ラベルがあり､ リストボックスがあり､ 複数のボタンと複数のリストボックスが一般的です｡
‫で､ ここにあるのは複数の動物園で､ まあ､ 名前を変えているので､ もうちょっとごちゃごちゃしています｡
‫しかし､ ここでできることは､ 動物園をチェックするか､ 動物園を選択すると､ その動物園にいる関連動物が表示されることです｡
‫では､ 東京にある動物園にサメがいるとしましょう｡
‫私たちは､ まあ､ 複数のサメを持っています｡
‫ワニ､ ヤモリ､ タカ､ そういう動物がいるんです｡
‫そして､ ニューヨークでは､ さまざまな種類の動物がいます｡
‫ニューヨークには小さな動物園があって､ ワニしかいないのですが､ そこにサルを追加することにしたんです｡
‫そこで､ ニューヨーク動物園に追加することになりました｡
‫そして､ ご覧の通り､ 関連する動物たちです｡
‫そして､ 右側の動物や動物園をクリックすると､ 下部のテキストボックスの値が変化します｡
‫だから､ 私の街の価値を奪っているだけなのです｡
‫例えば､ Cairo 2がありますが､ これを更新したいと思います｡
‫そこで､ この2つを削除して､ zooを更新することにします｡
‫そして今､ ご覧のようにカイロが更新されました｡
‫ミラノ動物園と同じことができるんです｡
‫ということで､ ミラノを今更ながらこのボチボチズーに更新します｡
‫偽の動物園で､ 存在しないので､ 完全に削除します｡
‫44の動物も同じです｡
‫その動物も完全に削除します｡
‫このように､ ここでは複数の異なるテーブルを使用し､ 複数の異なることを考慮しなければならないことがおわかりいただけたと思います｡
‫例えば､ 動物園のテーブル､ 動物のテーブル､ そしてその2つをつなげたテーブルがあります｡
‫これは､ 次のビデオで取り上げる､ より大きな課題になりそうです｡
‫そしてもちろん､ このUIを構築するのです｡
‫一般的なデータベースの構成や､ C-Sharpでのデータベースの使い方､
‫私のSQLの一部などを理解するのに役立つと思います｡
‫だから､ さっそく始めようということです｡
‫というわけで､ Visual Studioに戻ります｡
‫そして､ ご覧の通り､ ここには2つのコネクションがあるんです｡
‫あなたは1つしか持っていないのか､ あなたは1つしか接続してはいけないのか､ 私はもう1つ持っています｡
‫それが今､ デモをお見せするために接続したものです｡
‫そして､ ここで作成した新しいものを使用することにします｡
‫そして､ ご覧の通り､ まだテーブルがありません｡
‫そこで､ 新しいテーブルを作成する必要があります｡
‫そこで､ テーブルの上で右クリックし､ ここに新しいテーブルを作成します｡
‫新しいテーブルを追加すると､ 小さなウィンドウが表示されます｡
‫ところで､ サーバーエクスプローラーをもう少し目立たなくする方法ですが､ このように隠すと､ かなり見栄えがよくなりますね｡
‫整数型のIDを持つ小さなテーブルがあり､ allow､ nulls､ deactivated､ default valueがあります｡
‫そこで､ ここに見えるのが小さな鍵です｡
‫つまり､ これがキーカラムになり､ ここにカラムを作成することになります｡
‫そこで､ IDというカラムを用意し､ さらにここにカラムを作成することができます｡
‫そこで､ 1つ作成して､ その1つをlocationと呼ぶことにします｡ locationと同じように｡
‫そして､ ヌルは許さない｡
‫さて､ データ型を変更する必要があります｡
‫また､ データ型はCシャープで見たものと全く同じではありませんが､ Cシャープで見たものと似たものもあります｡
‫つまり､ 日付datetime文字､ ビット､ 整数があり､ ここで使いたいのは棒グラフ50と棒グラフ50になります｡
‫これにより､ 50個の値からなる文字列を作成し､ それをロケーションの中に保存することができます｡
‫もうひとつ重要なのは､ このIDを我々のID仕様にすることです｡
‫そこで､ ここのプロパティのID指定をクリックします｡
‫IDを選択し､ 左側､ 右側のプロパティから､ IDの仕様を選択し､ is identity
‫valueをtrueに変更します｡
‫そして今度は､ その都度1ずつインクリメントしていきます｡
‫つまり､ データベース内のすべてのエントリーが一意のIDを持ち､ 新しいエントリーを作成するとIDが常に1つ増えるということです｡
‫それは､ 継承で､ 現在の通知IDなどを取得した例と似ていますね｡
‫これが私たちのテーブルのほぼ中央にあるわけです｡
‫今度はテーブル名を変更したい｡
‫テーブルと呼ばないでほしい｡
‫このテーブル名を別のものにしたいのです｡
‫だから､ それをテーブル・ズと呼ぶことにした｡
‫これは私のzuテーブルになるわけですが､ ここではZeusの複数形ではなく､ 単数形の値､ あるいは単数形の単語を使うことにしています｡
‫そして､ それには複数の大きな理由があるのです｡
‫もし読み通したければ､ StackOverflowに素晴らしい記事がありますし､ 実際にここに単数形の用語を使うべき6つの素晴らしい理由が回答されています｡
‫ここで誰かが､ 単数形と複数形について同じ質問をしました｡
‫そして､ その答えはこちらで確認することができます｡
‫わかりました｡
‫これでズームテーブルができたわけですが､ まだそこまでいってません｡
‫ところで､ ここはT SQLのタブなんですね｡
‫そして､ ここでは単純にテーブルを作成しています｡
‫この更新キー､ またはこのボタン､ あるいはシフトを押すと､ 更新され､ このSQLコードが実行され､
‫DBOにZUというテーブルが作成されるわけです｡
‫IDはnullを許さないinteger型なので､ 空の値を持つことはなく､
‫主キーであると同時にIDでもあります｡
‫IDは主キーで､ このIDによってあらゆるものを見つけることができます｡
‫そして､ locationというカラムがあります｡
‫そこで､ NULLを許さない別のカラムを作成します｡
‫わかりました｡
‫そこで､ この更新ボタンを押すと､ データベースが更新されます｡
‫そこで､ このボタンを押して､ ここのデータベースを更新することにします｡
‫そして今､ このテーブルの下はご覧の通り､ 何も変わっていないのです｡
‫しかし､ 更新すると､ 突然､ ここに動物園のテーブルが表示され､ 動物園のテーブルにはIDと位置があります｡
‫さて､ 動物園にアクセスして値を変更したいので､ 右へ進むか､ 右を押してください｡
‫動物園のここをクリックし､ テーブルデータを表示します｡
‫まあ､ それはデボ・ザ・ズーデータと同じで､ IDがあって､ 場所があることを示すために開くのでしょう｡
‫だから､ これは無効だ｡
‫まあ､ 空っぽだから､ まだ作ってはいないんですけどね｡
‫だから､ このルールはまだ存在しないのです｡
‫だから､ 今はノーと書いてあるんです｡
‫でも､ 場所とここを入力すると､ だからニューヨークのような場所を入力することになるんです｡
‫ご覧のように､ IDが1の新しいロケーションを作成しました｡ このすぐ下に次のロケーションを入力し､
‫ここをもう少し広くして､ 他の都市を追加することができます｡
‫そこで､ 東京を加え､ ベルリンを加え､ さらにカイロ､ ミラノを加える｡
‫もちろん､ もっとたくさん追加して行くことも可能です｡
‫わかりました｡
‫そのため､ 現在では複数の異なる拠点があり､ それぞれに固有のIDを持っています｡
‫つまり､ 1から始まって5までが今のケースです｡
‫では､ 新しいプロジェクトを作成しましょう｡ プロジェクトがなくても､ サーバーエクスプローラーですべての設定ができます｡
‫そこで､ ソリューション・ワン ゼロ・プロジェクト｡
‫そこで､ プロジェクトの中に入っていないので､ 新しいものを作りましょう｡ そのものをWP F Zoo Managerと呼んで､ OCを押してみます｡
‫さて､ WPFに入り､ ここにXAMLファイルが表示されました｡
‫次に行いたいのは､ データソースの追加です｡
‫そこで､ ご覧のように､ 今データソースを押して､ もし表示されない場合は
‫このように何も記載がない場合､ つまり､ 現在プロジェクトにデータソースがない場合は､ 右側のプロジェクトをクリックするだけです｡
‫この場合､ WPF Zoo Managerで､ データソースを押すと､ これが出てきて､ 新しいデータソースを追加することができるようになります｡
‫そこで､ ここではデータソース・タイプのデータベースを選択することにします｡
‫そして次へを押すと､ そのデータセットをデータベースモデルとして使用します｡
‫そして､ ここでデータ接続を選択する必要があります｡
‫そして､ 2回目に作成したものを選ぶことにしています｡
‫パネルがSQLで､ DBと呼ばれる文字列を表示するわけです｡
‫まあ､ それはいいんですけどね｡
‫よりシンプルにするために､ 「はい」を押すだけです｡
‫ここには､ 機密データや接続文字列が含まれます｡
‫そして､ 次を押す｡
‫ちなみに､ 機密性の高いデータを入れたくない場合は､ 後でアプリケーションのコードで設定することができます｡
‫でも､ 私はシンプルに考えています｡
‫それで次を押すと､ この接続文字列が表示され､ パニッシャーという名前になっています｡
‫私の場合はDB接続文字列ですが､ それをコピーして次を押します｡
‫そして､ データベースオブジェクトを選択します｡ ご覧のように､ 私のテーブルにはzooデータベースオブジェクトがあるので､
‫それを選択します｡
‫そして､ ご覧の通り､ authorized DB data setというデータセット名がありますが､ これも変更可能です｡
‫でも､ 今はこのままにしておこうと思います｡
‫終了を押すと､ データソースが作成され､ ご覧のようにデータソースがここにあります｡
‫ここでできることは､ たとえば動物園を右クリックして､ デザイナーでデータセットを編集すると､ データベースとデザインが表示されます｡
‫ご覧のように､ Zooというテーブルがあります｡
‫IDやキーカラムと呼ばれるキーとなる値を持っています｡
‫そして､ 場所と動物園のテーブルアダプターがあり､ これはフィルとゲートのデータ､ SQLの機能を持っています｡
‫そして今すべきことは､ メインウィンドウのzemoに移動して､ ここでSQL文字列を設定することです｡ 文字列名をこのようにコピーしたので､
‫これはすぐに必要になります｡
‫そこで､ 新しい文字列を作成します｡
‫コンフィギュレーションマネージャーにアクセスする､ その接続文字列と呼ぶことにします｡
‫そして､ この角括弧の中に､ 引用符で囲んだ文字列を入力する必要があるんだ｡
‫このコンフィギュレーションマネージャーを知らないので､ 文句を言われましたが､ ここに一番上に追加することができました｡
‫コンフィギュレーションマネージャーとか､ そういうのを使えばいいんだけど､ その前に設定しないとね｡
‫そこで､ リファレンスの上で右クリックを押して､ ここにリファレンスを追加します｡
‫では､ こちらのあれを｡
‫そこで､ ここのシステム構成の横にあるチェックマークを押して､ 押す｡
‫いい？
‫そして､ このコンフィギュレーション・マネージャーが使えるようになったので､ system dot configurationを使って追加して行きます｡
‫これで突然､ コンフィギュレーションマネージャーが文句を言わなくなった｡
‫まあ､ 少なくとも色は出るので､ あとは正しい接続文字列を追加するだけです｡
‫プロジェクト名は､ ダブルWPF､ 空白またはアンダースコアのズマネージャードットプロパティ､
‫ドットセッティング､ そしてコピーしたリンクになります｡
‫これがDB接続文字列ですね｡
‫そして､ 次に必要なのは､ これが接続文字列であることを示すことです｡
‫そこで､ ここでは接続文字列プロパティをそのように使用することにします｡
‫だから､ かなり長いコード行になるんです｡
‫しかし､ ここで重要なのは､ プロジェクト名､ ドットプロパティ､ ドット設定､ データソース作成時に設定したドット文字列､
‫そしてその後にドット接続文字列を使用することです｡
‫わかりました｡
‫これで設定は完了です｡ 次のビデオでは､ アプリケーションのSQL部分についてもう少し詳しく説明します｡