記事のディレクトリ
2.2.1データベースの構造
データベースストレージモード:ファイルとファイルグループ
ファイルの種類:
- メインデータベースファイル
- 二次データベースファイル
- トランザクションログファイル
デフォルトのストレージパス: "X" \ program Files \ Microsoft SQL Serve \ MSSQL.1 \ MSSQL \ Data "
メイン・データベース・ファイル(PRIのM進DデータベースF.イル)
キー・データベース・ファイルは、各データベースには唯一つの一次データファイルを有しています。
-
効果:
- データベースの起動情報を保存します。
- 一部またはすべてのデータを保存します。
- データベース内の他のファイルへのポインタが含まれています。
-
推奨されるファイル拡張子:mdf
二次データベースファイル(セコN- DARY DデータベースF.二次ファイルと呼ばれるイルは、) :セカンダリデータファイルが複数存在してもよいことはできません。
- 機能:メインデータファイルに保存されていない残りのデータとデータベースオブジェクトを保存します。
- 推奨されるファイル拡張子:.ndf
トランザクションログファイル(L OG D ATA F Ile):各データベースには1つ以上のログファイルが必要です。
- 役割:データベースの復元に必要なトランザクションログ情報を保存します。
- 推奨されるファイル拡張子:.ldf
ファイルグループ
- 定義:ファイルの名前付きコレクション。
- 機能:ユーザーがデータを管理、配布/配置するのに便利です。
- タイプ:
- ※メインファイルグループ(1つのみ)には、他のファイルグループに割り当てられていないメインデータファイルとセカンダリデータファイルが含まれます。
- ユーザー定義のファイルグループ(存在しない場合もあれば、複数存在する場合もあります):セカンダリデータファイルのみが含まれます。
- 使用規則:
(1)ファイルとファイルグループは1つのデータベースでのみ使用できます。
(2)ファイルは1つのファイルグループにのみ属することができます。
(3)ログファイルはファイルグループに属することはできません。
ファイルグループ管理を使用してデータを配布する利点:
- データベース構造を明確にする
- 便利なユーザー管理
- 効率を向上させる
データベースオブジェクト
- の種類:
- テーブル
- 見る
- ストアドプロシージャ
- トリガー
- ユーザー定義のデータ型
- ユーザー定義関数
- インデックス
- 制約
- 表現方法:
サーバー名。データベース名。所有者名。オブジェクト名
serve.database.owner.object
2.2.2システムデータベース
SQL Server2005のシステムデータベースは次のとおりです。
-
マスターデータベース
-
モデルデータベース
-
msdbデータベース
-
tempdbデータベース
-
マスターデータベース
- 機能:SQL Serverのすべてのシステムレベルの情報を記録します。マスターデータベースが使用できない場合、SQLServerを起動できません。
-
モデルデータベース
- 役割:すべてのデータベースのテンプレート。他のデータベースオブジェクトをモデルデータベースに追加することができ、これらのオブジェクトは後で作成されるデータベースに継承できます。
-
msdbデータベース
- 役割:アラームとジョブを計画するSQL Serverエージェント(SQL Serverエージェント)。
-
tempdbデータベース
- ロール:グローバルリソースのすべてのユーザーが利用できるSQL Serverインスタンスへの接続であり、すべての一時テーブルと一時ストアドプロシージャを保持します。
2.2.3データベースを作成する
方法:
- SQL Server ManagementStudioを使用する
- SQLステートメントを使用する
「完全な」データベースを作成するための一連の操作:
1。データベースに名前を付け、データベースの所有者を設定します。
2.ファイルグループを定義します。
3.データファイルをファイルグループに割り当てます
。4。テーブルを作成し、テーブルに関連するオプションと制約ルールを設定します
。5。テーブルをファイルグループに配置し
ます。6。他のデータベースオブジェクトを作成します。
1. SQL Server Management Studio 1を使用します
。手順
(1)データベースに名前を付けます
(2)ファイルグループを定義します
- 「ファイルグループ」タブ→「追加」
- 「一般」タブ→「ファイルグループ」→「新規ファイルグループ」
(3)データファイルをファイルグループに割り当てます
- データベースファイルの構成:
- ファイル名(論理名)
- ファイルの種類
- ファイルグループ
- 初期サイズ
- 自動成長
- 道
2. [オプション]タブの設定
- リカバリモード:
- シンプル
- コンプリート
- バルクログ
- 互換性レベル:SQL Server7.0、2000、2005
- 自動シャットダウン:前のユーザーが終了した後にデータベースを完全に閉じてリソースを解放するかどうかを指定します。選択後、データベースファイルは通常のファイル(コピーなど)のように扱うことができます。
- アクセスの制限:データベースにアクセスできるユーザーを指定します。可能な値は次のとおりです:
- 複数:データベースの通常の状態。複数のユーザーが同時にデータベースにアクセスできます。
- シングル:メンテナンス操作に使用されます。一度に1人のユーザーのみがデータベースにアクセスできます。
- 制限付き:db_owner、dbcreate、またはsysadminロールのメンバーのみがデータベースを使用できます。
3.データベース情報の表示
2.SQLステートメントの使用1.SQLの
概要: SQLは1974年にBoyceとChamberlinによって提案され、リレーショナルデータベースの標準言語です。
-
SQL機能:
- 機能は包括的であり、データベース内のすべての作業を完了することができます。
- ユーザーは、「何をすべきか」を提案するだけで、その方法を指定する必要はありません。SQL言語は、ユーザーの要件をシステムに送信し、すべての作業を自動的に完了します。
- SQL言語は非常に簡潔でシンプルで、英語の自然言語に非常に近いものです。
- SQL言語は、コマンドモードでインタラクティブに直接使用することも、プログラミング言語に埋め込んでプログラムで使用することもできます。
- SQLは環境によって使用方法が異なりますが、SQL言語の構文は基本的に同じです。
-
SQLの主な機能:
2.データベースを作成します
- 文法:
create database database_name
[on
[[primary]<filespec>[,...n]
[,<filegroup>[,...n]]]
[log on {
<filespec>[,...n]}]
[collate<collation_name>]
[for attach]
<filespec>::=
(name='逻辑文件名',
filename = '存放数据库的物理路径和文件名'
[,size = 数据文件的初始大小]
[,maxsize = 指定文件的最大大小]
[,filegrowth = 指出文件每次的增量])
<filegroup>::=
{
filegroup filegroup_name[default]
<filespec>[,...n]
}
対応する構造はコードに対応します:
2.2.4データベース情報の表示
1
1
1
1
1.sp_helpdb [データベース名]
- 特徴:
- データベースパラメータが指定されていない場合、サーバー内のすべてのデータベースの情報が表示されます。
- 特定のデータベースパラメータを指定すると、指定したデータベースの情報が表示されます。
2.sp_databases
- 特徴:
- サーバーで使用可能なすべてのデータベースの情報を表示します。
3.sp_helpfile [論理ファイル名]
- 機能:現在のデータベース内のファイルの情報を表示します
- ファイル名パラメータが指定されていない場合、現在のデータベース内のすべてのファイルの情報が表示されます。
- 特定のファイル名パラメータを指定すると、データベース内の指定したファイルの情報が表示されます。
4.sp_helpfilegroup [ファイルグループ名]
- 特徴:
- ファイルグループ名パラメータを指定しない場合、データベース内のすべてのファイルグループの情報が表示されます。
- 特定のファイルグループ名パラメータを指定すると、データベース内の指定したファイルグループの情報が表示されます。
2.2.5データベースを変更する
方法:
- SQL Server ManagementStudioを使用する
- SQLステートメントを使用する
変更されたコンテンツ:
- データベース構成
- データベースオプション
※SQL文を使用する
- (1)データベース構成の変更
構文:
alter database database_name
{
add file <filespec>[,...n]
[to filefoup filegroup_name] /*在文件组中增加数据文件*/
| add log file <filespec>[,...n] /* 增加事务日志文件*/
| remove file logical_file_name /*删除数据文件*/
| add filegroup filegroup_name /*增加文件组*/
| remove filegroup filegroup_name /*删除文件组*/
| modify file <filespec>[,...n] /*修改文件属性*/
| modify name = new_dbname /* 更新数据库名称*/
- (2)データベースオプションの変更
方法1:
alter database database_name
set database_options[value]
'value':オプション値。true、false、on、またはoffのいずれかです。
2.2.6データベースの削除
方法:
- SQL Server ManagementStudioを使用する
- SQLステートメントを使用する
文法:drop database database_name[,...n]