ノードを使用したSQL Serverのクエリ。js

Let’S Get Started

私はあなたがノードを持っていると仮定します。jsがインストールされていますが、インストールされていない場合は、ここでダウンロードできます。

ノードを設定することから始めます。js Webサーバーとそれをテストします。 次に、以前と同様のコードを追加して、SQL Serverデータベースに接続してクエリします。

私たちは、ノードのためのミニマリストのWebサーバーのフレームワークを使用します。jsエクスプレス Npmパッケージとしてインストールされます。

多くのことと同様に、私はあなたがコマンドを入力しているときに、確かにコマンドとそれのオプションについての詳細を読んで、学ぶことが常

セットアップの取得

  1. プロジェクトのために、ディレクトリ/フォルダを作成します。
  2. Visual Studio Code(VSCode)を開き、フォルダーを開きます。
  3. 新しいターミナルウィンドウを開き、次のように入力します。
    npm init
    パッケージを作成するためのデフォルトを受け入れます。json。

4. VSCodeでファイルを作成し、indexとして保存します。js”を発表した。 あなたのパッケージを見れば。jsonファイルを使用すると、デフォルトの”メイン”ファイルを変更できる場所が表示されます。div>

基本的な出発点

5. ターミナルウィンドウタイプでは、
start npm
これによりノードが開始されます。jsサーバー。

Webサーバー

ターミナルウィンドウのタイプで、
npm install express

これにより、Webフレームワークがインストールされます。私たちはロックンロールする準備ができています!

Webサーバーのコアは、expressパッケージを要求し、それをホルダーに割り当てることです(変数またはconst。)Webサーバーへのすべての参照は、このホルダーを介して行われます。webサーバーを起動し、HTTPポートでリッスンする必要があります。 8080は一般的で、利用可能なものだけです。

Webサーバーが少なくともHTTP getメソッドに応答するようにします。 これにより、”タイヤを蹴る”ことができ、動作することを確認します。 MDNのHTTPメソッドにはさらに多くのものがあります。 GETとPOSTを使用します。

  • GETは、リソースから取得するために使用されます。
  • POSTは、リソースに送信するために使用されます。

次のコードを入力して、それについて説明します。

Webサーバーの例

コアのセットアップ。
  • 私たちは、expressパッケージを必要とし、慣例によりexpressに参照を格納しますが、必要に応じて名前を付けます。
  • expressのインスタンスを初期化し、規約に従って参照をappに格納しますが、必要に応じて名前を付けます。
  • 11行目では、webサーバーがリッスンする場所への参照を格納します。 ポート5000
  • 5行目では、appを使用してWEBサーバーのインスタンスを使用してHTTP GETを使用します。取得します。 これは、デフォルトではルートディレクトリ(’/’)からデータを取得するようになります。 コールバック関数にはRequest(req)オブジェクトとResponse(res)オブジェクトが含まれているため、非常に重要です。 Reqとresの名前は慣例です。

リクエストとレスポンス

  • リクエストはブラウザのurlから送信されます。 より多くの情報はここに見つけることができます。
  • 応答は、要求に対する応答です。 詳細はここで見つけることができます。

一言で言えば、私たちのブラウザは要求を行い、応答を返します。

タイヤを蹴る

  1. VscodeでF5を押します(デバッグメニューのデバッグ開始の略です。)コンソールは次のようになります。

コンソールメッセージを探します。 上に停止/新たになること、等のための制御がある。figcaption>

2. ブラウザに移動し、LocalHost:5000と入力し、Enterキーを押します。 次のように表示されます。div>

イェイ!figcaption>

お使いのブラウザがGETリクエストを行い、res.sendを使用して応答を送り返しました。

ノードSQL Server接続

(前に行われた場合はオプションです。)ターミナルウィンドウで、
npm install mssql
これにより、SQL Serverドライバーがインストールされます。これは私の前の記事とまったく同じ開始コードなので、詳細には説明しません。 ただし、アプリオブジェクト内の位置が重要になります。

私たちの最初のテストの後、前とは異なることに注意することのカップルは、

  • 私たちの従業員のPerformanceRatingは、Webページから送信されます(投稿されました。)
  • クエリの結果は、Responseを使用してWebページに出力されます。

データベース接続/クエリの例

以下のコードを入力します。P>

注意すべき重要なことは、Webサーバーとデータベース接続とクエリがあることです。 しかし、彼らは相互作用しません。 まだ!

Disconnected Web Server and Database Connection

Run it with by stopping and starting the web server or refreshing

Refesh/Stop and other options

and you will see the web server is running そして、クエリからのデータのコンソール出力があります。 しかし、私たちはwebサーバーから何かを取得したり、webページに何かを送信したりしていません。div>

私たちのウェブサーバーのノートとデータベースクエリの出力

私たちのウェブサーバーのノートとデータベースクエリの出力
iv id=”html

私たちは、ユーザーが私たちのサイトに行くときに提供するページが必要です。 このページでは、データベースクエリで使用できるパラメータ(PerformanceRating)を送信することができます。P>

注:私は私たちのwebページのスタイルを心配するつもりはありません。 それは簡単でポイントになります。また、ルート内のすべてを保存しています。

ベスト-プラクティス? まさか! しかし、我々は機能のために行っています。 クリーンアップは後で発生する可能性があります。

  1. 次のwebページを作成し、インデックスに名前を付けます。htmlと従業員。html。
  • インデックス。htmlがメインのソースページになります。
  • 従業員。結果が終わる場所はhtmlになります。

Simple startup page, index.html

Note the <form action=”/Employees…
This is where our output will go.

Add the following to Employees.html

2. This next step is going to require a couple of things. そのうちの一つは、私がインデックスを提供することを選択している方法です。html。 あなたが読んだ他の情報源はルーティングに入るかもしれません。 ルーティングは非常に重要な領域ですが、私たちの範囲外です。 私たちの方法は、多くの方法の一つに過ぎません。 私たちのコードへの新しい追加は、

  • path—これは、訪問者が私たちのサイトに来たときに必要なファイルをサーバーにres.sendFileを使用するのに役立ちます。
  • bodyParser—投稿が完了したらフォームデータを利用できるようにします
  • sendFile—目的のデフォルトページを提供することができます。

コードに次の変更を加えます。

パス、bodyParserおよびsendfile

webサーバーを停止して起動するか、更新して実行します。 ブラウザで、ブラウザを更新すると、

インデックス。htmlはデフォルトで提供されます

クエリでHTMLフォームデータを使用します

このためには、アプリを追加する必要があります。ポスト。 これは、我々が望むものは何でも従事するときにインデックス。htmlのためのwebページから掲載されています。これは重要なステップです。

私たちのデータベース接続とクエリは、アプリ内にある必要があります。ポストコールバック関数。p>

私たちのデータベースコンポーネントがアプリに行く方法に注意してくださget
  • 13行目がアプリを起動します。ポスト。 コールバックの本体には、データベースコンポーネントがあります。
  • 52行目はアプリを閉じます。ポスト。

これをすべて別の構造にすることはできますか? 私は私たちに働く基盤を与えるためにこのようにしています。 その後、私たち/あなたは他のオプションを探索することができます

フォームデータを使用して

フォームデータを使用するのは簡単です。Div>

行35、37、50および55
  • 35行目、select要素からフォームデータを取得します。 bodyParserはここで私たちを助けているものです。 req.ボディ。elementname。
  • 37行目、クエリは、フォームからの値を使用します。
  • 50行目は、クエリされた生のデータを従業員に送信しています。html。

webサーバーを停止して起動するか、更新して実行します。/p>

  1. あなたのwebページに移動し、更新します。

2. 評価ドロップダウンから”平均”を選択し、”結果を取得”をクリックします

3. あなたはEmployeesで出力を得るべきです。html。 魅力的ではありませんが、それはスタートです。Div>

Res.sendからのJson出力
“>

フロントエンドからバックエンドへの接続ができました。 これは大したことです。p>

最後のステップ—出力をクリーンアップします(ビット。)

これは最も簡単で最も難しい部分です。 非常に多くのオプションがあるので、最も難しい。 私たちは、内部の深い下で何が起こっているかを垣間見ることができるように、基本の基礎と一緒に行くつもりです。

これは、あなたがはるかに詳細に探索したいとしている領域です。 Resの追加メソッドだけでなく、”ビューエンジン”のアイデア。そして、私は将来の記事でこれらのいくつかを探求します。 特に、私のお気に入りの一つ、エクスプレス-ハンドルバー。

今のところ、私たちは私たちの出力を構築しようとしています。 はい。. それを自分で構築します。 コードでデータのテーブルを作成して送信します! 私たちのデータをループするだけです。レコードセットとビルド。

次を参照してください

出力の構築
出力の構築
出力の構築
出力の構築
出力の構築

50-57行を追加します。

“Average”を照会すると、出力は次のようになります

コードで私たちfigcaption>

次に何をすべきか(はいあなた)

それを再生し、より多くを追加し、構造を変更します。 基本から仕事を始めて、仕事をする。

私たちは、javascriptテンプレート、フレームワーク、ライブラリによって最近追加されたレイヤーのいくつかの背後に何が起こっているのかを理解するために、第一原則と協力しています。

私たちは自分たちの上にフルスタックシステムを構築しました。 はい、それを信じるかどうか私たちが持っています。

何が最も仕事、出力を必要とします。 しかし、この全体の演習は、探査と機会の世界を開きます。 だから我々は、の概念を拡大したい、

  • より多くのCRUD操作
  • ルーティング
  • ビューエンジン/テンプレート

この旅を取ってくれてありがとう、我々はより多く

あなたも楽しむことができます、

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です