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

InfoPath & SQL Server !

Archive for the ‘Azure SQL Database’ Category

IoT 開発における Arduino ファミリーの優位性 – nodeMCU を使う理由

leave a comment »

IoT 開発のために主として Arduino ファミリーと呼ぶことができるマイコンボードを使っている。ここで「Arduino ファミリー」と言っているのは、オフィシャルな Arduino 開発環境である Arduino IDE を使って開発でき、物理的な仕様もほぼ Arduino に準じているものを指している。

IoT開発のためのマイコンボードについて考える – その必要な特性は何か

leave a comment »

現在、様々なマイコンボードが開発され生産、販売されており、それらは様々な用途に利用されているが、IoT 開発におけるマイコンボードに必要な特性は何だろう。

C# – 教科「情報」の授業で使うタイピングトレーニングのソフトを作っています。その 3。河端さんとのコラボレーション。Microsoft Flow と Microsoft Power BI で何ができるか。

leave a comment »

教科「情報」の授業で使うタイピングトレーニングのソフトを作っており、Microsoft SQL Server の大家であり Microsoft MVP でもあった河端さんと一緒に考えている。私は Visual Studio でクライアントの開発をし、河端さんにクラウドのアプリケーションを作ってもらっている。クライアントは Windows デスクトップアプリで、開発言語はもちろん C# だ。

河端さんには、クライアントアプリケーションから POST データを受け取るサービスを、Microsoft Flow で作ってもらった。Microsoft Flow で受け取ったメッセージを電子メールで通知する、といったシステムを、お互い離れた拠点でメッセージをやりとりしながら、およそ 30 分で作ることができた。これが現代的な開発スタイルだといえよう。

そして河端さんには、Power BI の分析ページを作ってもらった。こんなかんじだ。

文字入力トレーニングアプリ_003_PowerBI_1_mid_640

文字入力トレーニングアプリ_004_PowerBI_2_mid_640

文字入力トレーニングアプリ_005_PowerBI_3_mid_640

河端さんは、私がクライアントの Windows フォームアプリケーションを調整している間に、Microsoft Flow に送られたデータをこのように分析する Microsoft Power BI のフォームを作られていた。これらのビューを作るには、およそ 15分もあればよいそうだ。

このように、Microsoft Flow と Microsoft Power BI を使うとアイデアさえまとまればアプリケーションを作る手間は革命的に小さくなった。重厚長大のシステム開発の時代は終わったのだ。

C# – 教科「情報」の授業で使うタイピングトレーニングのソフトを作っています。その 2。河端さんとのコラボレーション。

leave a comment »

先日、SQL Server のスペシャリストで Microsoft MVP でもあった河端善博さんと久しぶりにお会いし、Microsoft Flow や Power BI の話をうかがった。実に興味深く、私がやっている IoT や情報教育で使う場面がないか考えた。そこで、まず今作り始めている文字入力トレーニングソフトのデータを Microsoft Flow で処理し、Power BI で分析することをやってみることにした。

まず、実習結果を自分で見るだけなら時間を計り正しく入力できたかどうかを判定できればよい。しかしデータを集約するなら、誰の実習結果かという ID が必要になる。そこで ID をどうするかを含めて、通信データのフォーマットを決めることにした。河端さんから提示されたのは次の項目だ。

"生徒識別子"
"経過秒数"
"スコア"

生徒識別子は文字列型とし、経過秒数やスコアのデータ型をどうするか相談をしたが、型がそろった方がアプリケーション側で作りやすいので文字列型にしてもらった。これに加えて次の項目を付け加えた。

手本文字数"

「スコア」は何文字まで間違いなく入力できたかの文字数を評価することにしているが、もともとの手本の文字数が何文字かがあった方が良いと考えたので、それを加えることにしたのだ。これらの集めるデータは今後どんどん変わっていく可能性があるが、とりあえずこの 4つの項目にすると決めた。データの送信は Web サービスの POST メソッドとし、渡すデータは json で記述することにした。こんなかんじになる。

{
"生徒識別子": "A0000",
"経過秒数": "10",
"スコア": "89",
"手本文字数": "100"
}

すでに作っているアプリケーションに「生徒識別子」のテキストボックスを追加し、Web サービスに POST するコードを書いた。

文字入力トレーニングアプリ_001_mid_640

その他の変更点は、入力するための原稿をテキストファイルにして保存し、アプリケーションの起動時に読み込む形にした。また入力原稿は教科書の本文とすることとし、入力分のはじめとおわりを表示して、教科書のどこの文を入力するのかを間違わないようにした。

私がアプリケーションを調整している間に、河端さんに Microsoft Flow で Web サービスを作っていただいた。河端さんに作っていただいた Microsoft Flow は次のようなものだ。Web サービスへの POST の結果を知りたかったので、電子メールで送信してもらうようにお願いした。次の画面は河端さんからもらったものだ。

18109673_10155304824759394_589213491_n_mid_640

何度か試験を繰り返し、正しくデータが送られることを確認した。データの送信確認は電子メールが送られてくることでわかる。

文字入力トレーニングアプリ_002_mid_640

このように、私が Visual Studio 2017 でアプリケーションを作り、河端さんが Microsoft Flow でクラウド側のシステムを作る。このコラボレーションが、実質 30 分ほどで動くシステムができあがった。

たとえば生徒の家庭学習などを IT でサポートする場面で、このように簡単にアプリを作ってクラウドの共有フォルダなどで配布し、練習結果を Microsoft Flow で受け取って集計する、Power BI で分析する、といったことが簡単にできる。何年か前なら、なんらかの学習システムみたいなものを作ったものだが、今やこのような時代だ。

Microsoft Azure SQL Database を使う – その1 – 概要

leave a comment »

Microsoft Azure SQL Database はクラウド上に展開する SQL Server だ。Microsoft Azure を利用すると、クラウド上にデータベースを構築することができ、サーバー管理の必要なくデータベースを利用できる。Microsoft Azure SQL Database にデータベースを構築し、Windows Form でデータベースアプリケーションを作って利用する概要は次のとおりである。

まず Microsoft Azure にユーザー登録し、SQL Database を作成する。作成した SQL Server データベースの管理は、Microsoft Azure アカウントの管理ポータルで行う。

SQL_Azure_001_mid_640

<Fig.1 : Microsoft Azure アカウントの管理ポータル>

データベースを作成したら、管理ポータルから SQL Database のページへ移動し、デザインのボタンでテーブルを作成することができる。テーブル作成は SQL Server Management Studio のテーブル作成画面とほぼ同じなので、SQL Server のデータベース開発やAccessを使った経験があれば簡単に使うことができるだろう。

SQL_Azure_002_mid_640

<Fig.2 : Microsoft Azure アカウントの管理ポータルからテーブルを作成する>

Visual Studio による開発では、Microsoft Azure アカウントの管理ポータルから、SQL データベース用のスタートプロジェクトをダウンロードする、のリンクをクリックすると、Visual Studio のプロジェクトがダウンロードできる。このプロジェクトには、ここで作成した Microsoft Azure SQL Database がサーバーオブジェクトとして登録されたプロジェクトになっている。

このプロジェクトを Visual Studio Community 2013 で開くと、オンプレミスの SQL Server でデータベースアプリケーションを開発するのとほとんと同じ手順で Windows Form データベースアプリケーションを開発することができる。

SQL_Azure_003_mid_640

<Fig.3 : Microsoft Visual Studio Community 2013 による Windows Form データベースアプリケーション開発>

Microsoft Visual Studio Community 2013 では全くコードを書くことなく、数ステップのウィザードで1対1でテーブルと関連付けるデータベースアプリケーションを作ることができる。ビルドして実行すると Microsoft Aure SQL Dabase のデータを編集することができる。

SQL_Azure_004

<Fig.4 : Microsoft Visual Studio Community 2013 で作った Windows Form データベースアプリケーションを実行する>

データを追加しデータベースに保存する。Microsoft Azure SQL Database にデータがストアされたことは、Microsoft Azure アカウントの管理ポータルでクエリを発行して確かめることができる。たとえば次の SELECT 文を発行する。

——————————————————————–
select ID,sname,sbirthday from students
——————————————————————–

SQL_Azure_005_mid_640

<Fig.5 : Microsoft Azure アカウントの管理ポータルでクエリを発行する>

以上が Microsoft Aure SQL Database にデータベースを作成し、Windows Form データベースアプリケーションで利用する手順だ。Microsoft Azure SQL Database はデータベースをクラウド上にもたせることでサーバーマシンの管理コストをなくすことができ、インターネットに接続できるあらゆる場所から利用することができる。そして Microsoft Azure SQL Database を利用する WIndows Form データベースアプリケーションの作成は、Microsoft Visual Studio Community 2013 を利用するとオンプレミスの SQL Server を利用する場合とほとんど変わらない開発ができ、単にテーブルと1対1のフォームなら全くコードを書くことなく短い時間で開発できる。