ホチキス先生の「プログラマーと呼ばれたい」

InfoPath & SQL Server !

Archive for the ‘ストアドプロシージャ’ Category

9月21日に延期します – 2019年8月17日(土) – 第4回神戸SQL Serverラボ – 神戸SQL Server User Group (7月20日の予定を日程変更しました)

leave a comment »

※2019年8月15日更新

主催者所用のため、8月17日は中止し、9月21日に延期いたします。参加ご予定の方々、まことに申し訳ありません。

※2019年7月5日更新

2019年4月から毎月定期開催で「神戸SQL Serverラボ」と題したSQL Serverの勉強会を始めました。場所は神戸三ノ宮駅から徒歩約5分の便利な場所にある、神戸青少年会館をお借りし、毎回テーマを決めて、初心者がSQL Serverデータベースの運用ができることを目指します。また経験者の方にも、それぞれお持ちのノウハウを交流できる場になれば幸いです。

第2回からネットワーク環境で SQL Server を利用できるようにしました。LAN ポートで有線接続できるか、Wi-Fi 機能を持った Windows PC をお持ちいただければ SQL Server をインストールしなくとも管理ツール SSMS だけ設定すれば実習ができます。用意する SQL Server のバージョンは SQL Server 2014 と SQL Server 2017 です。

場所:神戸青少年会館(神戸市勤労会館の5階6階です)
神戸市中央区雲井通5丁目1番2号 34.694927, 135.197403
kobeshiseishounenkaikan_map bingmapで表示

神戸市青少年会館のアクセスページ
日時:毎月第3土曜日 18:00~19:30

第4回 2019年*月**日(土)18:00~19:30 (9月21日に延期します)
「関数によるデータ処理、ユーザー定義関数の作成と利用」
SQL Server には様々な関数が用意されています。今回はこの組み込み関数をビューやクエリで利用する方法と、ユーザーが独自の関数を作るユーザー定義関数の作り方を解説します。関数を効果的に利用することで、ビューやクエリをわかりやすくでき、システムのメンテナンス性も良くなります。
場所:神戸青少年会館 サークル4号室(神戸市勤労会館の6階です)

申し込み方法:電子メールまたはconnpassで
電子メール:kobesqlserverlabo@matsumotoyoshio.net
電子メールのタイトル:第4回20190921神戸SQL Serverラボに参加します
電子メールの本文:お名前、所属をお書きください。
connpassでの申し込み:https://connpass.com/event/134449/
運営費:500円

ご自分の Windows PCをお持ちください。

(定期開催の予定)

第1回 2019年4月27日(土)18:00~19:30(終了しました)
「SQL Serverのインストールと管理ツールManagement Studioの基本操作」

第2回 2019年5月18日(土)18:00~19:30(終了しました)
「テーブル作成、データ型、主キー、テーブル作成とSQL文」

第3回 2019年6月15日(土)18:00~19:30(終了しました)
「ビューによるデータ操作、射影、選択、結合」

2019年7月20日(土)、8月17日は都合により中止します。

第4回 2019年9月21日(土)18:00~19:30(今回のご案内です)
「関数によるデータ処理、ユーザー定義関数の作成と利用」

第5回 2019年10月19日(土)18:00~19:30
「トリガによるデータ処理の自動化」

第6回 2019年11月16日(土)18:00~19:30
「ストアドプロシージャの作成と利用」

※第7回以降の予定は決定次第ここにご案内します。

2019年8月15日

松本 吉生(まつもとよしお)

Microsoft MVP Data Platform
京都に生まれ、神戸で幼少期を過ごす。大学で応用化学を学んだのち、理科教諭として高等学校に勤務する。教育の情報化が進む中で校内ネットワークの構築運用に従事し、兵庫県立明石高等学校で文部科学省の「光ファイバー網による学校ネットワーク活用方法研究開発事業」に携わる。兵庫県立西宮香風高等学校では多部制単位制の複雑な教育システムを管理する学籍管理データベースシステムをSQL ServerとInfoPath、AccessなどのOfficeソフトウエアによるOBA開発で構築・運用する。2015年から2017年まで兵庫県立神戸工業高等学校でC#プログラミング、IoTなどのコンピュータ教育を行い、現在は兵庫県立神戸甲北高等学校に勤務する。2004年からマイクロソフトMVP(Microsoft Most Valuable Professional)を受賞し、現在15回目の連続受賞。2016年にマイクロソフト認定教育者(Microsoft Innovative Educator Experts : MIEE)を受賞し、現在4回目の連続受賞。

広告

2019年6月15日(土) – 第3回神戸SQL Serverラボ – 神戸SQL Server User Group

leave a comment »

2019年4月から毎月定期開催で「神戸SQL Serverラボ」と題したSQL Serverの勉強会を始めました。場所は神戸三ノ宮駅から徒歩約5分の便利な場所にある、神戸青少年会館をお借りし、毎回テーマを決めて、初心者がSQL Serverデータベースの運用ができることを目指します。また経験者の方にも、それぞれお持ちのノウハウを交流できる場になれば幸いです。

第2回からネットワーク環境で SQL Server を利用できるようにしました。LAN ポートで有線接続できるか、WiFi 機能を持った PC をお持ちいただければ SQL Server をインストールしなくとも管理ツール SSMS だけ設定すれば実習ができます。用意する SQL Server のバージョンは SQL Server 2014 と SQL Server 2017 です。

場所:神戸青少年会館(神戸市勤労会館の5階6階です)
神戸市中央区雲井通5丁目1番2号 34.694927, 135.197403
kobeshiseishounenkaikan_map bingmapで表示
神戸市青少年会館のアクセスページ
日時:毎月第3土曜日 18:00~19:30

第3回 2019年6月15日(土)18:00~19:30
「ビューによるデータ操作、射影、選択、結合」
ビューはテーブルから条件にあったデータを取り出したり、複数のテーブルのデータを関連付けて表示させるものです。必要なデータを必要に応じてわかりやすく表示するもので、データベースの最も特徴的な機能です。マイクロソフトの SQL Server では、SSMSを使ってマウス操作で視覚的にビューを作成することができます。もちろん SQL 文を使って作成することもでき、これらの方法を体験的に身に着けます。
場所:神戸青少年会館 サークル4号室(神戸市勤労会館の6階です)

申し込み方法:電子メールまたはconnpassで
電子メール:kobesqlserverlabo@matsumotoyoshio.net
電子メールのタイトル:第3回20190615神戸SQL Serverラボに参加します
電子メールの本文:お名前、所属をお書きください。
connpassでの申し込み:https://connpass.com/event/134449/
運営費:500円

(定期開催の予定)

第1回 2019年4月27日(土)18:00~19:30(終了しました)
「SQL Serverのインストールと管理ツールManagement Studioの基本操作」

第2回 2019年5月18日(土)18:00~19:30(終了しました)
「テーブル作成、データ型、主キー、テーブル作成とSQL文」

第3回 2019年6月15日(土)18:00~19:30
「ビューによるデータ操作、射影、選択、結合」

第4回 2019年7月20日(土)18:00~19:30
「関数によるデータ処理、ユーザー定義関数の作成と利用」

第5回 2019年8月17日(土)18:00~19:30
「トリガによるデータ処理の自動化」

第6回 2019年9月21日(土)18:00~19:30
「ストアドプロシージャの作成と利用」

※第7回以降の予定は決定次第ここにご案内します。

2019年6月6日

松本 吉生(まつもとよしお)

Microsoft MVP Data Platform
京都に生まれ、神戸で幼少期を過ごす。大学で応用化学を学んだのち、理科教諭として高等学校に勤務する。教育の情報化が進む中で校内ネットワークの構築運用に従事し、兵庫県立明石高等学校で文部科学省の「光ファイバー網による学校ネットワーク活用方法研究開発事業」に携わる。兵庫県立西宮香風高等学校では多部制単位制の複雑な教育システムを管理する学籍管理データベースシステムをSQL ServerとInfoPath、AccessなどのOfficeソフトウエアによるOBA開発で構築・運用する。2015年から2017年まで兵庫県立神戸工業高等学校でC#プログラミング、IoTなどのコンピュータ教育を行い、現在は兵庫県立神戸甲北高等学校に勤務する。2004年からマイクロソフトMVP(Microsoft Most Valuable Professional)を受賞し、現在15回目の連続受賞。2016年にマイクロソフト認定教育者(Microsoft Innovative Educator Experts : MIEE)を受賞し、現在4回目の連続受賞。

2019年5月18日(土) – 第2回神戸SQL Serverラボ – 神戸SQL Server User Group

leave a comment »

2019年4月から毎月定期開催で「神戸SQL Serverラボ」と題したSQL Serverの勉強会を始めました。場所は神戸三ノ宮駅から徒歩約5分の便利な場所にある、神戸青少年会館をお借りし、毎回テーマを決めて、初心者がSQL Serverデータベースの運用ができることを目指します。また経験者の方にも、それぞれお持ちのノウハウを交流できる場になれば幸いです。

<追記>
第2回からネットワーク環境で SQL Server を利用できるようにします。LAN ポートで有線接続できるか、WiFi 機能を持った PC をお持ちいただければ SQL Server をインストールしなくとも管理ツール SSMS だけ設定すれば実習ができます。用意する SQL Server のバージョンは SQL Server 2014 と SQL Server 2017 です。

場所:神戸青少年会館(神戸市勤労会館の5階6階です)
神戸市中央区雲井通5丁目1番2号 34.694927, 135.197403
kobeshiseishounenkaikan_map bingmapで表示
神戸市青少年会館のアクセスページ
日時:毎月第3土曜日 18:00~19:30

第2回 2019年5月18日(土)18:00~19:30
「テーブル作成、データ型、主キー、テーブル作成とSQL文」
データベースの作成とテーブル作成について実習します。実習の中でデータを一意に管理するテーブルの主キーについてや、Accessの「オートナンバー型」のようにデータに自動的に連番を与える方法、テーブル作成を SQL 文で行う方法などを体験的に身に着けます。
場所:神戸青少年会館 サークル4号室(神戸市勤労会館の6階です)

申し込み方法:電子メールまたはconnpassで
電子メール:kobesqlserverlabo@matsumotoyoshio.net
電子メールのタイトル:第2回20190518神戸SQL Serverラボに参加します
電子メールの本文:お名前、所属をお書きください。
connpassでの申し込み:https://connpass.com/event/130009/
運営費:500円

(定期開催の予定)

第1回 2019年4月27日(土)18:00~19:30(終了しました)
「SQL Serverのインストールと管理ツールManagement Studioの基本操作」

第2回 2019年5月18日(土)18:00~19:30
「テーブル作成、データ型、主キー、テーブル作成とSQL文」

第3回 2019年6月15日(土)18:00~19:30
「ビューによるデータ操作、射影、選択、結合」

第4回 2019年7月20日(土)18:00~19:30
「関数によるデータ処理、ユーザー定義関数の作成と利用」

第5回 2019年8月17日(土)18:00~19:30
「トリガによるデータ処理の自動化」

第6回 2019年9月21日(土)18:00~19:30
「ストアドプロシージャの作成と利用」

※第7回以降の予定は決定次第ここにご案内します。

2019年5月1日

松本 吉生(まつもとよしお)

Microsoft MVP Data Platform
京都に生まれ、神戸で幼少期を過ごす。大学で応用化学を学んだのち、理科教諭として高等学校に勤務する。教育の情報化が進む中で校内ネットワークの構築運用に従事し、兵庫県立明石高等学校で文部科学省の「光ファイバー網による学校ネットワーク活用方法研究開発事業」に携わる。兵庫県立西宮香風高等学校では多部制単位制の複雑な教育システムを管理する学籍管理データベースシステムをSQL ServerとInfoPath、AccessなどのOfficeソフトウエアによるOBA開発で構築・運用する。2015年から2017年まで兵庫県立神戸工業高等学校でC#プログラミング、IoTなどのコンピュータ教育を行い、現在は兵庫県立神戸甲北高等学校に勤務する。2004年からマイクロソフトMVP(Microsoft Most Valuable Professional)を受賞し、現在15回目の連続受賞。2016年にマイクロソフト認定教育者(Microsoft Innovative Educator Experts : MIEE)を受賞し、現在4回目の連続受賞。

2019年度毎月定期開催 – 神戸SQL Serverラボ – 神戸SQL Server User Group

leave a comment »

2019年4月から毎月定期開催で「神戸SQL Serverラボ」と題したSQL Serverの勉強会を始めます。場所は神戸三ノ宮駅から徒歩約5分の便利な場所にある、神戸青少年会館をお借りし、毎回テーマを決めて、初心者がSQL Serverデータベースの運用ができることを目指します。また経験者の方にも、それぞれお持ちのノウハウを交流できる場になれば幸いです。

場所:神戸青少年会館(神戸市勤労会館の5階6階です)
神戸市中央区雲井通5丁目1番2号 34.694927, 135.197403
kobeshiseishounenkaikan_map bing mapで表示
神戸市青少年会館のアクセスページ
日時:毎月第3土曜日(4月のみ第4土曜日) 18:00~19:30

第一回 2019年4月27日(土)18:00~19:30
「SQL Serverのインストールと管理ツールManagement Studioの基本操作」
場所:神戸青少年会館 サークル4号室(神戸市勤労会館の6階です)

申し込み方法:電子メールまたはconnpassで
電子メール:kobesqlserverlabo@matsumotoyoshio.net
電子メールのタイトル:第一回20190427神戸SQL Serverラボに参加します
電子メールの本文:お名前、所属をお書きください。
connpassでの申し込み:https://connpass.com/event/128749/
運営費:500円

第二回 2019年5月18日(土)18:00~19:30
「テーブル作成、データ型、主キー、テーブル作成とSQL文」

第三回 2019年6月15日(土)18:00~19:30
「ビューによるデータ操作、射影、選択、結合」

第四回 2019年7月20日(土)18:00~19:30
関数によるデータ処理、ユーザー定義関数の作成と利用」

第五回 2019年8月17日(土)18:00~19:30
「トリガによるデータ処理の自動化」

第六回 2019年9月21日(土)18:00~19:30
「ストアドプロシージャの作成と利用」

※第七回以降の予定は決定次第ここにご案内します。

2019年4月20日

松本 吉生(まつもとよしお)

Microsoft MVP Data Platform
京都に生まれ、神戸で幼少期を過ごす。大学で応用化学を学んだのち、理科教諭として高等学校に勤務する。教育の情報化が進む中で校内ネットワークの構築運用に従事し、兵庫県立明石高等学校で文部科学省の「光ファイバー網による学校ネットワーク活用方法研究開発事業」に携わる。兵庫県立西宮香風高等学校では多部制単位制の複雑な教育システムを管理する学籍管理データベースシステムをSQL ServerとInfoPath、AccessなどのOfficeソフトウエアによるOBA開発で構築・運用する。2015年から2017年まで兵庫県立神戸工業高等学校でC#プログラミング、IoTなどのコンピュータ教育を行い、現在は兵庫県立神戸甲北高等学校に勤務する。2004年からマイクロソフトMVP(Microsoft Most Valuable Professional)を受賞し、現在15回目の連続受賞。2016年にマイクロソフト認定教育者(Microsoft Innovative Educator Experts : MIEE)を受賞し、現在4回目の連続受賞。

学校の先生のための SQL Server 2016 による成績処理 (1) – SQL Server 2016 Express のダウンロード

leave a comment »

今日における高等学校では生徒の成績処理や学籍管理において、多少ともコンピュータの処理がかかわっているだろう。授業担当者は自分が担当する講座の生徒の成績を、学級担任はクラスの生徒の出席状況やホームルーム活動の記録などをエクセルのような表計算ソフトで処理しているだろう。そして学校全体の成績管理をする教務部は、これらのデータを集めて成績会議の資料を作り、生徒の指導要録を管理し、また進路指導部は調査書の処理をしているはずだ。

これらのデータ処理をエクセルのような表計算ソフトを使って学校全体で行っているケースは多いと思われる。しかし表計算ソフトウエアはもともと個人ベースのデータ処理ツールとして開発されたもので、マルチユーザーでの利用には限界がある。学校の規模にもよるが、高等学校には数十名の教職員が勤務しており、定期考査が終わり評価をつけ、成績会議までの日程はあまり長くない。そして何よりも成績処理には正確さが求められる。成績処理には会計処理における「出納違算金」のようなものはなく、1点でも誤りがあってはいけないのだ。

また学校制度が多様化し、学習指導要領に決められていない「学校設定科目」などを多く開講する「総合学科」や夜間定時制を昼間の時間帯にも拡張した「多部制」、学年の区切りがない「単位制」など新しいタイプの学校ができ、また従来からも自宅学習が基本となる「通信制」がある。これらの学校では、そもそも紙ベースでの成績処理、学籍管理には無理があるため、成績処理システムを外注していることが多い。

筆者は10年間、生徒定員1,120名の大規模な多部制、単位制高校に勤務し、成績処理と学籍管理を行ってきた。この学校は午前、午後、夜間の3つの部を持つ多部制、単位制高校で、毎年280名の入学生を受け入れ、100講座の授業を編成し、約4,500の受講登録をして単位の管理を必要とした。出席データは週当たり8,000件、1年間で30万件となった。これらの処理を、私が赴任するまでは業者に発注したデータベースシステムを使っていたが、さまざまな理由で学校事情をあわないものであったため、筆者はMicrosoft SQL Serverを使って学校独自のシステムを構築して運用した。この経験から学校では、その学校に応じたシステムを現場の教員が作る、いわゆる「内製」が望ましいと確信している。SQL Serverは簡単だ。ぜひ多くの教員がSQL Serverを知り、自ら望む最高のデータベースを構築し運用できることを願っている。

現在マイクロソフトのサイトから、SQL Server 2016がダウンロードできる。
Microsoft SQL Server のページ
https://www.microsoft.com/en-us/sql-server/sql-server-2016

SQLServer2016_for_teachers_001_mid_640

SQL Server 2016にはいくつかのバリエーションがあるが、その中に無料で使えるExpress版がある。実運用では正式版を購入することになるが、試験的な利用ではこのExpress版を使うことができ、現時点でSQL Server 2016 SP1 Expressバージョンが提供されている。

上のページでスクロールし、Editions をクリックするとダウンロードページへのリンクがわかる。
Microsoft SQL Server ダウンロードのページ
https://www.microsoft.com/en-us/sql-server/sql-server-2016-editions

SQLServer2016_for_teachers_002_mid_640

ダウンロードのリンクをクリックすると Microsoft SQL Server 2016 Service Pack 1 Express のダウンロードページが開く。いくつかの言語の版を選択できるようになるので言語のドロップダウンリストボックスをクリックし、英語、フランス語、ドイツ語、イタリア語につづく Japanese を選択してダウンロードする。
Microsoft SQL Server 2016 Service Pack 1 Express ダウンロードのページ
https://www.microsoft.com/en-us/download/details.aspx?id=54284

SQLServer2016_for_teachers_003_mid_640

ダウンロードではディスクのどこかにフォルダを作り、そこに保存する。保存できれば次のようなファイルが生成する。ファイル名は SQLServer2016-SSEI-Expr.exe だ。

SQLServer2016_for_teachers_004_mid

重ねて述べるが、SQL Server は難しくない。また Microsoft SQL Server のように多くのユーザーの支持を得て、業界標準となり、長くバージョンアップを繰り返して使われてきた製品は、そのたびに使いやすく機能が豊富になる。身に着けたことは技術資産となり積み上げられる。これを機会にぜひ使ってほしい。

2017年4月3日

松本 吉生(まつもとよしお)
Microsoft MVP Data Platform

1961年京都に生まれ、神戸で幼少期を過ごす。大学で応用化学を学んだのち、理科教諭として高等学校に勤務する。教育の情報化が進む中で校内ネットワークの構築運用に従事し、兵庫県立明石高等学校で文部科学省の「光ファイバー網による学校ネットワーク活用方法研究開発事業」に携わる。兵庫県立西宮香風高等学校では多部制単位制の複雑な教育システムを管理する学籍管理データベースシステムをSQL ServerとInfoPath、AccessなどのOfficeソフトウエアによるOBA開発で構築・運用する。現在は兵庫県立神戸工業高等学校でC#プログラミング、IoTなどのコンピュータ教育を行う。2004年からマイクロソフトMVP(Microsoft Most Valuable Professional)を受賞し、現在14回目の連続受賞。2016年にマイクロソフト認定教育者(Microsoft Innovative Educator Experts : MIEE)を受賞。

Written by Yoshio Matsumoto

2017年4月3日 at 10:21 AM

Microsoft Visual Studio 2015 と SQL Server データベースファイルで開発する「目からうろこ」の C# プログラミングによる成績処理システム(2) – Visual Studio 2015 による新しいプロジェクトの開始と SQL Server データベースファイルとデータソースの作成

leave a comment »

1.Visual Studio 2015 による新しいプロジェクトの開始

VisualStudio_成績処理_002_mid_640

Visual Studio 2015 を起動する。

VisualStudio_成績処理_003_N_mid_640

起動したら画面の左「開始」から「新しいプロジェクト」をクリックして新しいプロジェクトを開始する。

VisualStudio_成績処理_004_mid_640

プロジェクトで使用する言語やテンプレートを選ぶ。ここでは言語を「C#」、テンプレートを「Windows フォームアプリケーション」とする。必要があれば「名前」でプロジェクトファイルの名前をわかりやすいものに変え、保存する「場所」を変更するなどする。

VisualStudio_成績処理_006_mid_640

2.データベース SQL Server データベースファイルとデータソースの作成

テンプレートが構成され、Windows フォームアプリケーションの雛形が表示される。Windows フォームを作る前に、まずデータベースを作成しよう。そのために Visual Studio の左端に並んでいるタブから「データソース」をクリックする。

VisualStudio_成績処理_007_mid_640

データソースとは、プログラムがデータベースに接続する経路のようなものだ。プロジェクトにはまだデータベースがないのでデータソースもない。「プロジェクトには現在関連データソースがありません。」といったメッセージが示されている。そこで「新しいデータソースの追加」をクリックする。

VisualStudio_成績処理_008_mid_640

Microsoft Visual Studio 2015 は SQL Server 以外の様々なデータベースに接続できるウィザードを持っているので、いくつか選択肢が示される。このあたりの選択肢は用語と概念が理解できていないと何を選んでよいか迷うが、ここで使いたいデータベースは SQL Server データベースファイルとして次のように決定していく。まず「データソースの種類の選択」では「データベース」を選択する。

VisualStudio_成績処理_010_mid_640

「データベースモデルの選択」では選択肢はひとつしかなく「データセット」を選択する。

VisualStudio_成績処理_012_mid_640

次の「データ接続の選択」では、もし以前に同じ Visual Studio でデータベースアプリケーションを開発したことがあるなら、「アプリケーションがデータベースへの接続に使用するデータ接続」のところに以前設定したデータ接続が選択されているかもしれない。ここでは初めてデータ接続を作成するので、選択する項目がない。いずれにせよ新しい SQL Server データベースファイルを作るので、「新しい接続」のボタンをクリックする。

VisualStudio_成績処理_014_mid_640

次の「データソースの選択」では、接続したいデータベースを選ぶことができる。ネットワーク上に SQL Server があれば「Microsoft SQL Server」を選択することになる。また Microsoft Access データベースファイルを選択することもできることがわかる。ここでは新しくアプリケーション内に「Microsoft SQL Server データベースファイル」を作成して利用したいので、「Microsoft SQL Server データベースファイル」を選択する。そうすると自動的に「データプロバイダ」も設定される。

VisualStudio_成績処理_017_mid_640

次の「接続の追加」画面では、データベースファイル名を記述することになるが、まだファイルを生成していないので「参照」ボタンをクリックする。「参照」ボタンをクリックすることで、新規の Microsoft SQL Server データベースファイルを生成することができる。

VisualStudio_成績処理_019_mid_640

このように「SQL Server データベースファイルの選択」ウィンドウが表示されるので、データベースファイルを保存したいフォルダを選び、ファイル名を決める。ファイルがなくても「開く」のボタンをクリックすればよい。

VisualStudio_成績処理_021_mid_640

「接続の追加」画面に戻り、データベースファイル名が書かれている。だがこの時点ではまだデータベースファイルは生成していない。

VisualStudio_成績処理_023_mid_640

「OK」をクリックして先にすすむと、このようにデータベースファイルを作成しますか、というメッセージが表示される。「はい」をクリックするとデータベースファイルが生成する。

VisualStudio_成績処理_025_mid_640

少し前の「データ接続の選択」画面が表示され、データ接続が設定されたことがわかる。このとき、下段の「+」をクリックして「アプリケーションに保存する接続文字列」を展開すると、アプリケーション上でどのような構成がされているかがわかる。この設定情報は知らなくてもアプリケーションを開発することができるが、操作を誤ってトラブルになったときや、この先アプリケーションの工夫をするときに役に立つので一度見ておくといい。

VisualStudio_成績処理_027_mid_640

「アプリケーションに保存する接続文字列」を展開すると、Data Source としてデータベースファイル名や接続時のセキュリティ、タイムアウトなどが記述されている。

VisualStudio_成績処理_028_mid_640

次の画面では「選択された接続は、現在のプロジェクトにはないローカルデータファイルを使用します。プロジェクトにファイルをコピーして接続を変更しますか?」と問われる。また「データファイルをプロジェクトにコピーする場合、アプリケーション実行時に、プロジェクトの出力ディレクトリにコピーされます。この動作の制御に関する情報については、F1を押してください。」といった記述もある。

なにやらものものしい説明になっており「はい」とするのか「いいえ」とするのか戸惑う。この挙動については、初めての人には理解できないだろう。これは説明が悪いのではなく、プロジェクトの開発と完成品の展開についての概念があってはじめて理解できる記述だ。

「現在のプロジェクトにはないローカルデータファイルを使用します」というのは、Visual Studio のプロジェクトが保存されるフォルダーではないところに SQL Server データベースファイルを作ったことを指摘されている。そして「プロジェクトにファイルをコピーして接続を変更しますか?」というのは、先に指定した SQL Server データベースファイルのフォルダやファイル名のものを使わず、それを Visual Studio のプロジェクトフォルダにコピーして開発を続けますか、と聞いている。もしここで「はい」をクリックすると、先に指定した SQL Server データベースファイルのフォルダやファイル名のものは使われず、Visual Studio のプロジェクトフォルダにコピーされたものを使って開発がすすめられることになる。

もしプログラムを開発したあと、どこか別のパソコンに展開し、そこで最初から運用を始めるならそれでいい。しかし今からやりたい開発は、開発しながらデータも用意していき、運用もそのまま開発に引き続いて行う予定である。そのため、ここでは先に指定した SQL Server データベースファイルのフォルダやファイル名のものをそのまま使いたいので「いいえ」をクリックする。

VisualStudio_成績処理_030_mid_640

ここでデータソース作成ウィザードは最終段階で、接続文字列をアプリケーション構成ファイルに保存する。

VisualStudio_成績処理_032_mid_640

データソース構成ウィザードは、データベースオブジェクトの選択に戻る。ここでデータソースを構成したのに「データセット内に指定するデータベースオブジェクト」が何もないが、データベースオブジェクトとはテーブルやビューなどの要素のことであり、ここではデータベースファイルを作っただけで中身を構成していないので何も表示されていない。「データセット名」は自分が指定した SQL Server データベースファイルの名前を含んで自動的に決められる。このまま「完了」をクリックしてウィザードを終了する。

VisualStudio_成績処理_034_mid_640

Visual Studio の画面に戻った。すると左の「データソース」タブに「mySQLSVDBFDataSet」という名前のデータセットができていることがわかる。これで SQL Server データベースファイルとデータソースの作成が完了した。

2016年2月13日

松本 吉生(まつもとよしお)
Microsoft MVP Data Platform

1961年京都に生まれ、神戸で幼少期を過ごす。大学で応用化学を学んだのち、理科教諭として高等学校に勤務する。教育の情報化が進む中で校内ネットワークの構築運用に従事し、兵庫県立明石高等学校で文部科学省の「光ファイバー網による学校ネットワーク活用方法研究開発事業」に携わる。兵庫県立西宮香風高等学校では多部整単位制の複雑な教育システムを管理する学籍管理データベースシステムをSQL ServerとInfoPath、AccessなどのOfficeソフトウエアによるOBA開発で構築・運用する。現在は兵庫県立神戸工業高等学校でC#プログラミング、IoTなどのコンピュータ教育を行う。2004年からマイクロソフトMVP(Microsoft Most Valuable Professional)を受賞し、現在14回目の連続受賞。2016年にマイクロソフト認定教育者(Microsoft Innovative Educator Experts : MIEE)を受賞。

Microsoft Visual Studio 2015 と SQL Server データベースファイルで開発する「目からうろこ」の C# プログラミングによる成績処理システム(1) – 成績処理システムを開発する背景とシステムの概要

with 2 comments

1.成績処理システムを開発する背景

私は30年の教員経験と、そのうちで学校のコンピュータシステムを15年間担当してきた経験から、学校の成績処理システムは教員自身が作り運用することが最善だという持論を持っている。なぜならコンピュータの管理やシステム開発の技術は教員が学んで身につけることができるが、学校の成績処理の方法は学校業務を経験しなければわからないからである。学校が成績処理システムを業者に発注して開発させることがあるが、コンピュータシステムを知らない教員と学校業務を知らないシステムエンジニアが十分な仕様書を作らずに開発に入ると間違いなく使えないシステムができあがる。さらに 15年前には、システム開発を教員がすることに無理があったが、今は優秀な開発ツールがあり、わずかな技術習得と短い時間でデータベースアプリケーションを作ることができる時代になっている。

コンピュータシステムに限界はない。人間が想像し得るシステムはどんなものでも作ることができる。しかしそれは、いつでもどこでも誰にでもあっという間にできるものではない。複雑なシステムを作るにはそれなりの時間と手間、熟考された設計が必要だ。作り始めてから不具合がわかることや、経験を積んでからより良い手法に気づくことがある。学校の教務規定が変わることもあるし、成績処理のやり方が変わることもある。教員自らがシステムを作る「内製」は、どんな変化にも対応できる利点がある。これらのことから、成績処理システムを構築する場合には、最初から多くの機能を作りこむのではなく、時間をかけずに必要最小限の機能から作ることがよい。

私は昨年の春、12年勤務した大規模で複雑な多部制単位制高校から、規模の小さな夜間定時制の工業高校に異動になり、教務部長を務めている。以前の勤務校では Microsoft SQL Server と Microsoft Office InfoPath や Microsoft Office Access などを組み合わせたいわゆる「 OBA 開発」によるクライアントサーバー型のシステムを作って運用したが、多くの全日制普通高校とは多くの面で違いがあった。現任校では成績処理のコンピュータ化がなされていないため、これを機会に簡単な成績処理システムを作ることにし、その作成過程を紹介することにする。現任校は学年制であり今から作成過程を紹介するシステムは多くの学校の参考になるだろう。

2.Microsoft Visual Studio 2015

Visual Studio は 1997 年に発表され改良を重ねてきた開発効率のたいへん良い開発ツールで、基本的な使い方を学ぶだけで簡単なアプリケーションを作ることができる。各出版社から「はじめて作る Visual Studio ・・・」といったタイトルの書籍がたくさん出版され、初心者でもそれらを読みながら簡単なゲームのようなプログラムを作ることができる。だが 10 年ほど前、Visual Studio 2005 の頃にはデータベースを利用するプログラミングをしようと思うと途端に敷居が高くなり、開発は難しかった。しかし Visual Studio は 2010 、2012 、2013 、2015 とバージョンアップを続ける中で、着実にデータベースアプリケーションの作成を改善してきており、2015 では SQL Server に接続するデータベースアプリケーションの開発は驚くほど簡単になり、データベースアプリケーション開発ツールとしての基本的機能はほぼ完成をみたといえる。

3.SQL Server データベースファイルとは

SQL Server データベースファイルは Microsoft SQL Server のデータベースの実体で、拡張子が .mdf のデータベースファイルと .ldf のログファイルで構成される。このデータベースはファイルであり、SQL Server のような DBMS に管理されないデータベースファイルだが、SQL Server と同じテーブルやビューを持ち、トリガや関数などを SQL Server と同じ技術で開発できる。ストアドプロシージャも利用できる。SQL Server データベースファイルは必要があれば既存の SQL Server にアタッチすることで管理下におくことができ、デタッチで切り離すことができる。この SQL Server データベースファイルは Microsoft Visual Studio 2015 による C# アプリケーション開発において、シームレスに管理でき、アプリケーションに組み込むことができるため、アプリケーションの組み込みデータベースとして利用しやすい。

4.システムの概要

これから作るシステムは、学校全体で使うマルチユーザーのクライアントサーバー型ではなく、あくまでも教務部長としての私が成績会議の資料を作るために効率化することを当面の目的とする。

(1)生徒名簿やクラスごとの講座情報と成績入力できるデータをあらかじめ用意しておく。
(2)期末考査の後に各授業担当者から出された成績伝票から教務部長が出欠と評価を入力する。
(3)成績会議に応じたデータを抽出して成績会議資料が作成できる。

これらの処理がコンピュータでできれば、期末考査の後に成績伝票が集まると、次の日にでも成績会議を開くことができるようになる。また成績データを集約すれば、帳票さえデザインすれば通知表やクラスごとの生成期一覧表も作成できるようになるだろう。さらにクライアントサーバー型にすれば、そもそも成績伝票を作成する時点で各先生方に成績入力をシステム上で行ってもらうことにできる。そういった展開を視野に入れながら、当面はスタンドアロンのパソコン上で動く Windows Forms アプリケーションを開発する。

2016年2月12日

松本 吉生(まつもとよしお)
Microsoft MVP Data Platform

1961年京都に生まれ、神戸で幼少期を過ごす。大学で応用化学を学んだのち、理科教諭として高等学校に勤務する。教育の情報化が進む中で校内ネットワークの構築運用に従事し、兵庫県立明石高等学校で文部科学省の「光ファイバー網による学校ネットワーク活用方法研究開発事業」に携わる。兵庫県立西宮香風高等学校では多部整単位制の複雑な教育システムを管理する学籍管理データベースシステムをSQL ServerとInfoPath、AccessなどのOfficeソフトウエアによるOBA開発で構築・運用する。現在は兵庫県立神戸工業高等学校でC#プログラミング、IoTなどのコンピュータ教育を行う。2004年からマイクロソフトMVP(Microsoft Most Valuable Professional)を受賞し、現在14回目の連続受賞。2016年にマイクロソフト認定教育者(Microsoft Innovative Educator Experts : MIEE)を受賞。