T-SQLデータベース言語の操作(T-SQLステートメント、データベース、テーブル、ビュー、インデックス)

 

T-SQL言語

四つの部分を使用することにより

  1. データ定義言語(CREATE、DROP、ALTER)
  2. データ操作言語(INSERT、DELETE、UPDATE)
  3. データクエリ言語(SELECT)
  4. データ制御言語(GRANT、REVOKE、DENY)

 

データの種類

  1. システムデータ型
  2. ユーザ定義のデータ型(セットアップモード:.コマンドモードグラフィカルbで)。
1  使用TEST
 2  のEXECにsp_addtypeのSNO、' VARCHAR(10)'' nonull ' 
3  EXEC sp_droptype SNO

 

変数

命名規則:

手紙、アンダースコア、@や#始まり、すべてではありませんが、アンダースコア、@や#

「キー」にすることはできません、埋め込みスペースや他の特殊文字にすることはできません、それは二重引用符または角カッコの使用のために必要です

1.ローカル変数:

ユーザーが宣言し、それが必要である@に始まるだけプロセス変数の定義に有効な、ローカル変数は、使用後に宣言する必要があります

注意:

  • あなたは変数を宣言する最初の時間は、その値はNULLに設定されています。
  • ローカル変数は、フォーマット「変数=変数値が」されるように初期化されている使用することはできません、その初期値を設定するために使用されるか、またはSET SELECTステートメント
  • あなたが宣言すると、文字のローカル変数のを、変数の型の最大長を指定してください、システムは、長さが1であることを前提としています。
  • する複数の宣言、ローカル変数を最初のローカル変数が定義された後にコンマを使用し、ローカル変数の名前とデータ型を指定します。

 

1  USEの学生
 2  DECLARE  @ VAR1  CHAR10)、@ VAR2  INT 
3  SET  @ VAR1 = ' 番号' 
4  選択 @ VAR2 = cgrade
 5  からSC
 6  SNO = ' 201810010 ' 7 8 プリントVAR1 @ + "S"
 
  

 

 

 

2.グローバル変数:

システムによって定義され、システムが使用する変数の内部SQLサーバーのために、任意のプログラムは、いつでも呼び出すことができます。通常は「@@」で始まります

 

 

 

T-SQLステートメント

1.ノート声明

(1) - 

(2)/ * ... * /

2.バッチ--go

 

3.制御フロー文

(1)BEGIN ... ENDステートメント(C言語に対応します{})

(2)の場合... else文(ネスト可能)

(3)ケースステートメント(多基準選択ステートメント)

          

 

 

(4)print文(画面出力文)

(5)ステートメント一方(条件付きのループ)

(6)goto文(無条件ジャンプ声明)

(7)break文

(8)は声明を続けます

 

4.一般的な機能(システム関数、ユーザ定義関数)

 

いくつかのシステム機能:

(1)文字列関数 

(2)数学関数 

   

 

 

(3)日付と時刻関数 

(4)集計関数 

 

 

注意:

 

 

 

 

 

 

ユーザー定義関数:

1.カテゴリー:

スカラ値関数は:単一の値を返します。

インライン表関数:テーブルの更新可能なを返します

マルチステートメントテーブル値関数:リターンテーブルを更新することはできません

 

スカラー値関数のコマンドモードを作成します。2.

 1 CREATE FUNCTION f2(@a real,@b real)  
 2 RETURNS real  
 3 AS  
 4 BEGIN  
 5     IF @a>=@b  
 6         RETURN @a  
 7     RETURN @b  
 8 END  
 9  
10 PRINT '最大值为'  
11 PRINT dbo.f2(77,56) 

 

 1 CREATE FUNCTION f3(@n real)  
 2 RETURNS real  
 3 AS  
 4 BEGIN  
 5     DECLARE @i real,@sum real  
 6     SET @i=0  
 7     SET @sum=0  
 8     WHILE @i<@n  
 9         BEGIN  
10             SET @i=@i+1  
11             SET @sum=@sum+@i  
12         END  
13     RETURN @sum  
14 END  
15   
16 PRINT dbo.f3(10) 

 

3.自定义函数的调用

(1)标量值函数可以使用select、print、exec调用

(2)表值函数只能用select调用

 

4.删除方式

drop function 函数名

 

 

数据库与表

数据库概述

1.数据库常用对象:

表、数据类型、视图、索引、存储过程、触发器

系统数据库:

master、model、tempdb、msdb

 

2.数据库存储结构(数据库文件、数据库文件组):

数据库文件:

存放数据库数据和数据库对象的文件。一个数据库文件只属于一个数据库。

(1)主数据文件

是数据库的起点,指向数据库中文件的其他部分。每个数据库都有一个主数据文件。主数据文件的扩展名是 .mdf

(2)次数据文件

包含除主数据文件外的其他数据文件。有些数据库可能没有次数据文件,而有些数据库则有多个次数据文件。次数据文件的扩展名是 .ndf

(3)日志文件

包含恢复数据库所需的所有日志信息。每个数据库必须至少有一个日志文件,但可以不止一个。日志文件的扩展名是 .ldf

 

数据库文件组:

文件组允许多个数据库文件组成一个组,并对它们整体进行管理。

文件组是将多个数据文件集合起来形成的一个整体(主文件组+次文件组)

一个数据文件只能存在于一个文件组中,一个文件组也只能被一个数据库使用

日志文件不分组,他不属于任何文件组

 

创建数据库

 

 

 1 CREATE DATABASE student    
 2 ON PRIMARY    
 3 (    
 4     NAME=student_data,    
 5     FILENAME='d:\student_mdf.mdf',    
 6     SIZE=20,    
 7     MAXSIZE=unlimited,    
 8     FILEGROWTH=25%    
 9 ),    
10 (    
11     NAME=student_data1,    
12     FILENAME='d:\student_ndf.ndf',    
13     SIZE=20,    
14     MAXSIZE=25,    
15     FILEGROWTH=25%    
16 )    
17 LOG ON    
18 (    
19     NAME=student_log1,    
20     FILENAME='d:\student_ldf1.ldf',    
21     SIZE=3,    
22     MAXSIZE=10,    
23     FILEGROWTH=1    
24 ),   
25 (    
26     NAME=student_log2,    
27     FILENAME='d:\student_ldf2.ldf',    
28     SIZE=3,    
29     MAXSIZE=10,    
30     FILEGROWTH=1    
31 )   

 

修改数据库

 

 ALTER DATABASE 语句的选项较多,但一次只能选择其中一项,所以还是比较简单的。

 

 

 

 

 

 

 

 

 

 

删除数据库

对于不再使用的数据库应该删除它以释放数据库所占用的存储空间。

只有处于正常状态下的数据库,才能使用drop语句删除(当数据库正在使用或正在恢复等不能删除)

 

DROP DATABASE tsg1,tsg2,tsg3

 

表的概述

数据表也简称为表,它是数据库中唯一用来存储数据的对象,是整个数据库的核心和基础。

 

1.数据库与数据表的关系

  • 数据库包含数据表,一个数据库可以包含多个数据表。数据表是数据库的对象。
  • 一个数据库对应一个文件。一个数据库对应一个主题。
  • 先创建数据库,再创建数据表。先打开数据库,再打开数据表。

2.数据表的组织

不同的数据模型组织表的方式不同,在基于关系模型创建的数据表中,数据是以行和列的形式进行组织和保存的,我们也称为“二维表”。

3.数据表的组成

数据表一般由以下三部分组成

(1)表名

表名既用于概括表中的信息,也方便引用。可以根据需要对表重新命名,但重新命名前,需要将数据表关闭。

(2)表结构

所谓表结构就是不包括任何记录的数据表,也称为“空表”。空表通常只有字段名及其属性,没有任何数据。

(3)表记录

数据表中除字段名外的每行称为一条“记录”。

每一条记录的内容由其对应的数据项组成,反应某个事物相关信息的原始数据。

只有在建立了表结构后才能向表中输入记录。记录的内容随时可以根据需要更改。

4.数据表的创建与修改

创建表的过程,实际上是定义表的结构,确定表的组织形式的过程。

具体讲就是定义表中属性的个数、属性名、属性的数据类型、属性大小、定义索引、主键以及完整性等。

在创建表之前要设计号表的结构,确定上述内容,并确定无误才开始具体的建表操作。

 

SQL语句创建表

 

 

 1 USE stu  
 2 CREATE TABLE student   
 3 (  
 4     sno varchar(10) not null primary key,  
 5     sname varchar(20) ,  
 6     sgender char(2) ,  
 7     sage int ,  
 8     sdept varchar(20)  
 9 )  
10 
11 USE stu  
12 CREATE TABLE course  
13 (  
14     cno varchar(10) not null primary key,  
15     cname varchar(20) ,  
16     ccredit smallint17 )  
18 
19 USE stu  
20 CREATE TABLE sc  
21 (  
22     sno varchar(10) not null,  
23     cno varchar(10) not null,  
24     cgrade smallint ,  
25     primary key(sno,cno),  
26     foreign key (sno) references student(sno),  
27     foreign key (cno) references course(cno)  
28 )  

 

SQL语句修改表结构

 

 

SQL语句删除表

 

 

SQL语句插入元组

      

 

 

SQL语句修改表

 

 

 

SQL语句删除元组

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

おすすめ

転載: www.cnblogs.com/jiamian/p/11874761.html