はじめに
GearHost は、Windows、SQL Server、MySQL、PHP、.NET、Node.jsアプリケーションサーバーなどのクラウドサービスの低コストプロバイダーです。 2020年1月の時点で、概念実証アプリケーションの開発や新しいテクノロジーの学習に理想的な、機能が制限されたサーバーインスタンスへの無料アクセスを提供しています。これらのデータベースとサーバーは、有料サービスを使用して簡単にスケールアップできます。
このチュートリアルは、新しいGearHostアカウントの設定と、サンプルのMicrosoftSQLServerデータベースインスタンスの作成に焦点を当てています。
前提条件
クラウドサーバーとデータベースは、Webブラウザーのみを使用してGearHostにセットアップできます。ただし、このチュートリアルを最大限に活用するには、Microsoft SQL Server Management Studio(SSMS)を搭載したWindowsPCを使用する必要があります。このチュートリアルでは、SSMSをダウンロードしてインストールする手順を説明しています。
このチュートリアルでは、テーブルの作成、レコードの挿入、テーブルからのデータの選択など、構造化照会言語(SQL)に関する基本的な知識をすべて示します。
開始するための最初のステップは、GearHostアカウントを作成することです。次に説明します。
GearHostアカウントの設定
www.gearhost.comWebサイトにアクセスします。青い無料で開始をクリックします 右上隅のボタン。
GearHostアカウントに使用する電子メールアドレスとパスワードを入力します。次に、青い[サインアップ]ボタンをクリックします。
電子メールアドレスとパスワードを送信すると、確認の電子メールが受信トレイに送信されます。
以下はメールの例です。青いマイアカウントのアクティブ化をクリックします ボタン。
残りの手順に従って、アカウントの設定を完了します。完了すると、GearHostコントロールパネルページが次のように表示されます。
次のセクションでは、新しいMSSQLServerデータベースインスタンスが作成されます。
SQLServerデータベースのセットアップ
GearHostアカウントが設定されたので、最大100個の無料のSQLServerデータベースを作成できます。新しいデータベースを作成するには、左側の[データベース]カテゴリをクリックします。これは新しいアカウントであるため、データベースをリストする必要はありません。大きな青いデータベースの作成をクリックします ボタン。
現時点(2020年1月)では、GearHostはMySQLおよびSQL Serverデータベースの無料インスタンスと、はるかに容量の大きい低コスト(月額$ 5)のインスタンスを提供しています。無料のSQLServerデータベースインスタンスは、10MBのデータに制限されています。この例では、以下に示すように、無料のMSSQLServerの選択をクリックします。
新しいデータベースの名前を指定します。この名前はGearHostに固有である必要があるため、いくつかの異なるバリエーションを試す必要がある場合があります。 GearHostは、名前が使用可能であることを確認します。名前を指定したら、青い空のデータベースを作成をクリックします。 ボタン。
新しい空のデータベースの作成は、完了するまでに約5分かかる場合があります。新しいデータベースが作成されると、コントロールパネルに以下のような詳細が表示されます。記録する重要なプロパティは、データベースのユーザー名、パスワード、およびホスト名です。通常、デフォルトのユーザー名はデータベースの名前と同じです。
パスワードを表示するには、パスワードの表示/非表示をクリックします。 データベースユーザー名の右側にあるボタン。
このデータベースの追加ユーザーは、データベースユーザーの追加をクリックして作成できます。 ボタン。たとえば、一部のユーザーがデータベースにクエリを実行するだけでよい場合は、読み取り専用の権限を持つユーザーを作成できます。このチュートリアルでは、このステップは今のところスキップされます。
次のセクションでは、Microsoft SQL ServerManagementStudioを使用して新しいSQLServerデータベースインスタンスに接続する手順について説明します。
Microsoft SQL Server Management Studio(SSMS)を使用したデータベースへの接続
データベースがセットアップされて実行されたので、Microsoft SQL Server Management Studio(SSMS)などのさまざまなクライアントツールを使用して接続できます。 SSMSをインストールしていない場合は、次の手順に従ってSSMSをダウンロードしてインストールしてください。
SSMSを実行し、新しいサーバーに接続します。新しい接続には、少なくともサーバーの名前、データベースのユーザー名とパスワードが必要です。この情報は、GearHostコントロールパネルで表示できます。認証方法には必ずSQLServer認証を選択してください。
サーバー名、ユーザー名、パスワードを入力したら、[接続]をクリックします ボタン。
SSMSは、データベースのプロパティをオブジェクトエクスプローラーに表示します。 パネル。
これは空のデータベースであるため、組み込みのSQLServerシステムテーブル以外に既存のデータベースオブジェクトは存在しないはずです。
新しいクエリウィンドウの作成
データベースを直接操作するには、SQLステートメントを直接入力してデータベースに対して実行できる新しいクエリウィンドウを作成します。 ファイルをプルダウンします メニューで、新規を強調表示します メニュー項目をクリックし、現在の接続でクエリを選択します メニュー項目。
新しいクエリウィンドウが表示されます。 SQLステートメントは直接入力できます。この例では、次のSQLCREATETABLEステートメントを使用して新しいEmployeeテーブルを作成します。
CREATE TABLE employee (employeeid VARCHAR(9) NOT NULL, fname VARCHAR(15), minit VARCHAR(2), lname VARCHAR(15), bdate DATE, street_address VARCHAR(35), gender VARCHAR(1), salary FLOAT NOT NULL, superempid VARCHAR(9), dno FLOAT NOT NULL );
クエリウィンドウはSQL構文を自動的に色分けすることに注意してください。
現在のSQLステートメントを実行するには、実行をクリックします。 ボタンを押すか、 F5を押します キー。
ステートメントの実行後、結果は下のメッセージウィンドウに表示されます。構文エラーがある場合は、それらを修正してSQLステートメントを再実行してください。以下の例では、EMPLOYEEテーブルが作成されました。 テーブルを更新します 右側のオブジェクトエクスプローラーにカテゴリが表示され、新しいEmployeeテーブルが表示されます。列定義のさまざまなプロパティを開きます。
EMPLOYEEテーブルが終了したので、次のSQLステートメントを使用してPRIMARYKEY制約を追加するように変更できます。
ALTER TABLE employee ADD CONSTRAINT pk_employee PRIMARY KEY (employeeid);
コードのこの部分を強調表示して実行します(F5キーを押します)。主キー制約が作成されます。オブジェクトエクスプローラーを更新して、作成された新しいキーを表示します。
テーブルが作成され、主キー制約が追加されたので、いくつかのデータをテーブルに挿入できます。次のSQLステートメントを使用して実行します。
INSERT INTO EMPLOYEE VALUES ('123456789', 'JOHN','B','SMITH','09-JAN-1975','731 FONDREN, HOUSTON, TX', 'M', 30000, '333445555', 5) ; INSERT INTO EMPLOYEE VALUES ('333445555','FRANKLIN','T','WONG','08-DEC-1965','638 VOSS,HOUSTON TX', 'M', 40000, '888665555', 5) ; INSERT INTO EMPLOYEE VALUES ('999887777','ALICIA','J','ZELAYA','19-JUL-1978','3321 CASTLE, SPRING, TX', 'F', 25000, '987654321', 4) ; INSERT INTO EMPLOYEE VALUES ('987654321','JENNIFER','S','WALLACE','20-JUN-1951','291 BERRY, BELLAIRE, TX', 'F', 43000, '888665555', 4) ; INSERT INTO EMPLOYEE VALUES ('666884444','RAMESH','K','NARAYAN','15-SEP-1972','975 FIRE OAK, HUMBLE, TX', 'M', 38000, '333445555', 5) ; INSERT INTO EMPLOYEE VALUES ('453453453','JOYCE','A','ENGLISH','31-JUL-1982','5631 RICE, HOUSTON, TX', 'F', 25000, '333445555', 5); INSERT INTO EMPLOYEE VALUES ('987987987','AHMAD','V','JABBAR','29-MAR-1979','980 DALLAS, HOUSTON, TX', 'M', 25000, '987654321', 4) ; INSERT INTO EMPLOYEE VALUES ('888665555','JAMES','E','BORG','10-NOV-1947', '450 STONE, HOUSTON, TX', 'M', 55000, NULL, 1) ;
この時点で、いくつかのデータが追加されたテーブルが作成されています。これで、テーブルに対してクエリを実行できます。単純なSQLクエリを試して、部門4の従業員のemployeeテーブルのすべての列を表示します。
SELECT * FROM employee WHERE dno = 4;
クエリ結果が下の新しいウィンドウに表示されることに注意してください。構文エラーがある場合は、メッセージウィンドウに表示されます。
SQL集計関数を使用して、すべての従業員の平均給与をダウ船で処理するクエリの例をもう1つ示します。
SELECT AVG(salary) AS average_salary FROM employee;
この時点で、追加のテーブルの作成など、追加のSQLステートメントを試してください。 SSMSの使用方法については、https://msdn.microsoft.com/en-us/library/ms174173.aspx
を参照してください。
チュートリアルで使用されるSQLステートメントの完全なリスト
以下は、このチュートリアルで使用されるSQLステートメントの完全なリストです。
/* Create the employee table */ CREATE TABLE employee (employeeid VARCHAR(9) NOT NULL, fname VARCHAR(15), minit VARCHAR(2), lname VARCHAR(15), bdate DATE, street_address VARCHAR(35), gender VARCHAR(1), salary FLOAT NOT NULL, superempid VARCHAR(9), dno FLOAT NOT NULL ) ; /* Add a primary key constraint to the employee table */ ALTER TABLE employee ADD CONSTRAINT pk_employee PRIMARY KEY (employeeid); /* Insert data records into the emplpoyee table */ INSERT INTO EMPLOYEE VALUES ('123456789', 'JOHN','B','SMITH','09-JAN-1975','731 FONDREN, HOUSTON, TX', 'M', 30000, '333445555', 5) ; INSERT INTO EMPLOYEE VALUES ('333445555','FRANKLIN','T','WONG','08-DEC-1965','638 VOSS,HOUSTON TX', 'M', 40000, '888665555', 5) ; INSERT INTO EMPLOYEE VALUES ('999887777','ALICIA','J','ZELAYA','19-JUL-1978','3321 CASTLE, SPRING, TX', 'F', 25000, '987654321', 4) ; INSERT INTO EMPLOYEE VALUES ('987654321','JENNIFER','S','WALLACE','20-JUN-1951','291 BERRY, BELLAIRE, TX', 'F', 43000, '888665555', 4) ; INSERT INTO EMPLOYEE VALUES ('666884444','RAMESH','K','NARAYAN','15-SEP-1972','975 FIRE OAK, HUMBLE, TX', 'M', 38000, '333445555', 5) ; INSERT INTO EMPLOYEE VALUES ('453453453','JOYCE','A','ENGLISH','31-JUL-1982','5631 RICE, HOUSTON, TX', 'F', 25000, '333445555', 5); INSERT INTO EMPLOYEE VALUES ('987987987','AHMAD','V','JABBAR','29-MAR-1979','980 DALLAS, HOUSTON, TX', 'M', 25000, '987654321', 4) ; INSERT INTO EMPLOYEE VALUES ('888665555','JAMES','E','BORG','10-NOV-1947', '450 STONE, HOUSTON, TX', 'M', 55000, NULL, 1) ; /* Example Queries */ SELECT * FROM employee WHERE dno = 4; SELECT AVG(salary) AS average_salary FROM employee;