開発環境の準備が完了!?して、早速開発をしてみたいと思うのですが、まだ右も左もわからない状態なので、最初にSQLServerに簡単なデータを登録して、それをWEB(ブラウザ)で見ることができるかどうかを実験してみたいと思います。
SQLServer2017Expressにデータ準備
SQLServer2017Express(以降SQLServerに略)にデータの準備ですが、Microsoft SQL Server Management Studio(以降MSSMS略)を使って「新しいデータベース」からスタートしました。
実験なので、データベース名「ma2n2n」にしてみました。
データベース>>ma2n2n>>テーブル
にて右クリックをしてから、新規作成>>テーブルにて、新しいテーブルを作成しました。
管理番号というフィールドを主キーにしました。
主キーとユニークキーの違い
私も、主キーとユニークキーの違いを説明しろと言われればハッキリとした答えを言えなかったので、この機会に調べてみました。
ポイント
主キー(primary key)は、テーブルのレコードを決定するための重要な管理番号であり、テーブルに対して1列しか存在しないキーです。
更新は不可能であり、NULLも許可されない。
ポイント
ユニークキーは、レコードを決定するための情報ではあるが、複数の設定が可能とであり、主キーの代替のアクセスとして使用される場合が多い。
キーの更新は可能であり、NULLでも許可される。
顧客管理のデータベースで言えば、データベースの管理番号は、主キーであり管理番号を振ったとしたら変更することがない。一方、顧客番号や、電話番号などは、一度退会して再登録などには顧客番号が変わってもいいし、電話番号などは何度も変わることがある。
ココに注意
主キーは、一度割り当てたら変更しない管理番号
だってことです。
テーブルの準備とサンプルデータ入力
上記の図のようにテーブル構成を決めました。
郵便番号の型などでは悩みますが、適当に・・・。
https://pctips.jp/server/data-type-memorandum201909/
Visual Studio 2019 新しいプロジェクト
とりあえず、「新しいプロジェクトの作成」からスタートしました。
上の画面で見える選択し以外にも沢山の選択肢があります。はっきり言ってどれを選択してよいのかわからなかったので、それっぽいのを選択して次へ行きました。
※ここまで説明進めて申し訳ないのですが、「新しいプロジェクトの作成」からASP.NET Core Webアプリケーションは、今のスキルでは早かったようです。ASP.NET Webアプリケーション(.NETFramework)に変更してやり直しました。
場所だけちょっと変更しました。
特に理由はないのですが、C:\ma2n2nに変更しました。
また、まだ全く理由はわかりませんが、「ソリューションとプロジェクトを同じディレクトリに配置する」にチェックを入れた方がメンドクサクナイという記事を見かけたのでチェックをいれて作成しました。
何を選択して良いのか!?全くここでもわからなかったので、「Webアプリケーション(モデルビューコントローラー)を選択しました。
IIS Expressでローカルで確認
作業フォルダとして指定した場所にはどうなっているのか?調べてみました。
IISで表示させるにはどうする?
外部から接続すると、IISのデフォルトの画面のままなので、ローカルでIIS Expressで動かした画面を表示させる方法を調べました。
※ここまで説明進めて申し訳ないのですが、「新しいプロジェクトの作成」から違っていたようです。
ソリューションエクスプローラーでプロジェクト名を右クリックし「発行」を選択して、「発行」画面を表示させます。
発行方法も、FTPで他のマシンへ発行したり、様々な方法があるようですが、私の現在の環境は、1台のPCに全部突っ込んであるので、ファイルをIISのルートにそのまま突っ込めばいいんじゃないかと思って実行してみました。
直接IISのwwwrootに突っ込もうとしたのが行けないのかと思い別フォルダ―を指定して発行したら発行できました。
その吐き出されたファイルなどをそのまま、IISのwwwrootにコピーしてみました。
ASP.NET Webアプリケーション(.NETFramework) で出直し
「新しいプロジェクトの作成」で、ASP.NET Webアプリケーション(.NETFramework)にして出直ししました。
SQL Server 2017 Expressに接続
「接続済みサービス」という所をクリックすると沢山の接続方法がでてくるようですが、今回は、メニューバーから、ツール>>データベースへの接続をクリックしました。
上の赤丸のマークをクリックすると、SQL Serverを検索してくれます。
ココに注意
※検索したSQLServerがネットワーク上にあると別のを検索しますので、MSSMSにてサーバー名を確認することが必要です。
Windows認証では、接続テストもできませんでしたので、MSSMSにて、SQL Server認証に変更して、ユーザー名とパスワードを設定しました。
MSSMSにてSQLserver認証に変更
注意ポイント
データベース名も「ma2n2n」でSQLserver認証でのユーザー名も「ma2n2n」にしてしまいました。本当は変えた方が混乱しなくていいですよね。
これで、
ココがポイント
Visual Studio 2019 とSQL Server 2017 Expressが接続
出来たような感じがします。
IISで表示させられたか!?
今度は、ローカルで表示させているIIS Expressの画面を通常のIISで表示させられるか実験してみたいと思います。
Visual Studio の「発行」処理で、出力されたファイルを、そのままIISのwwwroot(C:\inetpub\wwwroot)にコピーしました。
表示までに、ちょっと時間が掛かったのでIISを再起動させようかとおもったら表示しました。
ちなみに、
ココがポイント
外部からのアクセスでも同じ画面を確認
次回の宿題
ちょっとこのブログ記事も長くなってしまったので、今回はここで終わりにしたいと思います。
次回の宿題として、SQLServerのデータをWEBで表示させてみたいと思います。
※「SQLServer2017ExpressのデータをWEB表示2(ASP.NET開発#4・表示実験)」というタイトルにて記事を書く予定です。後ほどリンクも貼ります。
今回は、前準備になってしまいました。