ユーザの作成ユーザの作成はGUIのツールでも作成可能ですが、ここではSQLを使用してユーザを作成してみましょう。GUIのツールの方がユーザを作成するのは簡単なのに、なぜわざわざSQLでユーザを作成するのでしょうか?それはSQL文をプログラムと組み合わせたり、タスクに組んで実行したりする事でユーザ作成の自動化を行えるからです。Serverではストアードプロシージャ?、sp_addloginを使用します。ユーザアカウントをロックするユーザアカウントを一時的に使用停止・データベースへのアクセス停止するには、ロックをおこないます。DISABLEロックを解除する事もできます。パスワードを期限切れにするユーザのパスワードを意図的に期限切れにする事で、ユーザの次回ログイン時にパスワードの変更を行わせる事ができます。パスワードを変更する管理者であれば、ユーザのパスワードの変更ができます。ユーザ名の変更セキュリティの観点から定期的にユーザ名を変更する場合があります。サービス用のアカウントはプログラム等で使用されているので、ユーザ名の変更は滅多に行いません。ユーザ名の変更を行う場合は、影響範囲を考えて実行しましょう。■OracleOracleではユーザ名の変更はできない。ユーザの削除ユーザを削除する場合は、以下のSQL文を実行します。TABLEでテーブルの定義を行います。column_definition)table_nameにはテーブル名を指定します。column_nameには列名、column_definitionには列の型を指定します。それでは、社員情報テーブル、tbEmpTableを作成してみましょう。必要な列は以下の通りです。社員番号:empID姓:surname名:givenname部署コード:deptCD社員情報テーブル、tbEmpTableを作成するSQL文は以下の通りです。社員番号(empID)には必ず値を入力するようにします。NULL制約を指定します。NULL制約を指定しない列はNULL値が許可されます。KEY社員番号(empID)は社員1人1人に対してユニークな番号なので、社員番号(empID)は重複しないようにする必要があります。その場合、プライマリキー制約を指定します。varchar(5))プライマリキー制約の指定により、empIDには重複する社員番号をINSERT・UPDATEできなくなります。列のデフォルト値デフォルト値を設定していれば、INSERT時に値を指定されなかった列は、そのデフォルト値でINSERTされます。部署コード(deptCD)の指定がない場合は人事付け(001)でINSERTしたいと思います。その場合は次のようにテーブルを作成します。有効な値のみINSERTもしくはUPDATEできるように、列に条件を指定する事ができます。それがCHECK制約です。指定した条件に合わない値をINSERTもしくはUPDATEすると、エラーとなり、INSERT/UPDATEできません。‘001’)len関数は文字列の長さを返す関数です。Oracleの場合はlength関数ですが、使い方は同じです。TABLEを使用します。TABLEは列の追加・削除、プライマリキーなどの制約の設定を行う事ができます。それでは、まず社員情報テーブル(tbEmpTable)にメールアドレス用の列(email)を追加してみましょう。TABLEの後にDROPと記述して使用します。TABLEを使用します。TABLEでテーブルを削除すると、インデックスなどの情報も全て削除されます。Language)にはINSERT、UPDATE、DELETEなどがあります。DMLの広い意味ではSELECTもDMLととらえられますが、SELECTに関しては別のセクションで説明します。3?1.行の挿入(INSERT)テーブルに行を挿入するにはINSERTを使用します。コード」の列に対応する値をINSERTしています。列を限定してINSERTする場合は次のように行います。‘Tanaka’);SELECTの結果をINSERTする事もできます。tbApplicantTable;この場合、SELECTで抽出する列数とINSERTで指定する列数が同じでなければなりません。3?2.行の更新(UPDATE)既存の行に対して、値を更新するにはUPDATEを使用します。一度に複数の列、複数の行を更新する事が可能です。WHERE句で更新する条件を指定しない場合は、全行に対して更新してしまいますので、注意が必要です。TABLEを使用します。TABLEはテーブルの行を全て削除します。TABLEはログやインデックスの処理は行われないので、DELETEよりも高速に削除処理が行えます。TABLEはDDL文ですので、一度削除したらROLLBACKで処理を取り消す事ができません。‘1001’4.テーブル参照(SELECT)SELECTはデータベースのテーブルからデータを選択して表示する時に使用するコマンドです。SQLには様々なコマンドがありますが、SELECTが一番良く利用されるコマンドでしょう。データベースの運用を担当する事になった場合も、SELECTの使い方から学んでいきますよね。SELECTコマンドは簡単ですが、使い方によっては複雑なデータ処理も行う事ができますので、基礎から応用まで勉強していきましょう。例題を見ながらSELECT文の使い方を学んでいきましょう。SELECT文は習うより慣れろですので、文法を覚えるよりもとにかくコンソールにSELECT文をたくさん書いてみましょう。使用例:社員テーブルの全ての列・行を表示する。tbEmpTable;*(アスタリスク)を使うと、そのテーブルの列全部を表示します。表示する列を指定したい場合は次のようにSELECT文を記入します。使用例:社員テーブルから社員番号と社員名を表示する。tbEmpTable;行全てを表示するのではなく、指定した行のみを表示する場合は、SELECT文の後ろにWHERE句を追記して、条件を記入します。使用例:社員テーブルから社員番号が1003の社員名を表示する。1003;WHERE句には複数の条件を記入することができます。次の例で社員番号が2000以上で部署コードが300の社員を表示してみましょう。使用例:社員テーブルから、社員番号が2000以上で部署コードが300の社員情報を表示する。BYはSELECT文の最後に記述する必要があります。使用例:社員情報を社員番号の昇順で表示する。ASC;昇順の場合はASCを指定しますが、省略してもかまいません。逆に降順を指定する場合はDESCを指定する必要があります。使用例:社員情報を社員番号の降順で表示する。DESC;複数の列を基にソートする事ができます。部署コードを基にソートする場合、部署には複数の社員が存在しますので、第2のソートキーとして社員の名前を基にソートしてみましょう。使用例:社員情報を部署コードと社員名を基に昇順で表示する。user_name;使用例:社員情報を部署コードと社員名を基に降順で表示する。BY句を使う場合は集計関数を利用します。コメントをキャンセルコメントを投稿するにはログインしてください。