SQL概述,数据库的创建,删除以及表的创建

SQL server 提供的结构化查询语言称为T-SQL是对SQL的高效集成与应用,与SQL Sever通信的所有应用程序都可以通过向服务器发送T-SQL语句来实现,而与应用程序的用户界面无关。
一、T-SQL的组成

  • 数据定义语言(Data Defination Language,DDL):主要有CREATE和DROP语句
  • 数据操纵语言(Dara Manipulation Language,DML):其语句包括动词INSERT,UPDATE和DELETE.它们分别用于添加、修改和删除表中的记录,也称为动作查询语言。
  • 数据查询语言(Data Query Language,DQL):用于从表中获取数据,确定数据怎样在应用程序给出。其保留字有SELECT,FROM,WHERE,OREDER BY,GROUP BY 和HAVING等。这些保留字常与其他类型的SQL语句一起使用
  • 数据控制语言(Data Control Language,DCL):主要有CRANT或REVOKE语句,用于对数据库对象授权或撤销权限。
  • 事务处理语言(Transaction Process Language)和游标控制语言(Cursor Control Language,CCL)

二,数据库的数据定义语句
1,删除数据库
CREATE DATABASE 数据库名
[
[ ON [ filespec ] ]
[ LOG ON [ filespec ] ]
]
其中,filespec定义为
( [ NAME = logical_file_name , ]
FILENAME = ‘os_file_name’
[ ,SIZE = size ]
[ ,MAXSIZE = { max_size | UNLIMTED } ]
[ ,FILEGROUP = growth_increament ]

其中,各参数和子句的说明如下:
(1)ON子句显示定义用来存储数据库数据部分的磁盘文件(数据文件)。该关键字后跟以逗号分隔的filespec项列表,filespec参数用以定义主文件组中的数据文件
(2)LOG ON子句指定显示定义用来存储数据库日志的磁盘文件(日志文件)。该关键字后跟以逗号为分隔的filespec参数用以定义日志文件。如果没有指定LOG ON,将自动创建一个日志文件
(3)FILENAME子句中os_file_name参数指出操作系统创建filespec定义的物理文件时使用的路径名和文件名。如FILENAME=‘D:\C#和数据库\CH10\DB\ABC.mdf’
(4)SIZE子句中size参数指定filename中定义的文件的大小。如果主文件的filespec中没有提供SIZE参数,那么SQL Server将使用model数据库中的主文件大小
(5)FILEFGROWTH子句中growth_increment参数指定每次需要新的空间时为文件添加的空间大小,指定一个整数,不要包含小数位,0值表示不增长。如果指定%,则增量大小为发生增长时文件的指定百分比。

【说明】在语法格式中,约定 [ a ] 表示a是可选的,{a}表示a是必选的,|表示单选的,[…n]表示前面的项可以重复使用。
如果仅指定CREATE DATABASE 数据库名称的语句而不带其他参数,那么数据库的大小将于model数据库的大小相等

例如,创建一个名称为test1的数据库,并设定数据文件为“D:\C#和数据库\CH10\DB\测试数据1日志.MDF”,大小为10MB,每次增长为5MB,对应的程序如下:

CREATE DATABASE test1
ON(
       NAME = 测试数据1,FILENAME = 'D:\C#和数据库\CH10\DB\测试数据1.mdf',
       SIZE = 10MB,MAXSIZE = 50MB,FILEGROWTH = 5MB
)
LOG ON(
       NAME =测试数据1日志,FILENAME = 'D:\C#和数据库\CH10\DB\测试数据1日志.ldf',
       SIZE = 10MB,MAXSIZE = 20MB,FILEGROWTH = 5MB
)

2,修改数据库
ALTER DATABASE 数据库名
{
ADD FILE filespec
|ADD LOG FILE filespec
|REMOVE FILE logical_file_name
|MODIFY FILE filespec
|MODIFY NAME = new_dbname
}

其中,filespec 定义为
(
[ NAME = logical_file_name, ]
[ , SIZE = size ]
[ , MAXSIZE = {max-size | UNLIMITED } ]
[ , FILEGROWTH = growth_increment ]
)

其中,各参数和子句的说明如下。

  • (1)ADD FILE子句指定要添加的文件
  • (2)ADD LOG FILE子句指定要添加的日志文件
  • (3)REMOVE FILE指出从数据库系统表中删除文件描述并删除物理文件。只有在文件为空时才能删除
  • (4)MODIFY FILE指要更改的文件,更改选项包括FILENAME,SIZE,FILEGROWTH和MAXSIZE.一次只能更改这些属性中的一种
  • (5)MODIFY NAME = new_dbname,用于重命名数据库

例如,为test1数据库增加一个逻辑名为“测试数据”的数据文件,其大小及其最大值分别为10MB和50MB。对应的T-SQL语句如下:

ALTER DATABASE tset1
ADD FILE(
         NAME = 测试数据,FILENAME = ‘D:\C# 和数据库\CH10\DB\测试数据.mdf’,
         SIZE = 10MB,MAXSIZE = 50MB, FILEGROWTH = 5MB
)

3,使用和删除数据库
使用数据库需要使用USE语句,其语法如下。

USE database 数据库名

删除数据库使用DROP语句,其语法如下:

DROP DATABASE 数据库名

例如,以下SQL语句用于删除test1数据库

DROP DATABASE test1

上述语句执行成功后,“D:\C#数据库\CH10\DB”文件夹中test1数据库对应于的三个文件同时被删除了
【提示】如果不知道 目前的SQL Server 服务器中包含哪些数据库,可以执行sp_helpdb存储过程,使用方式为:
EXEC sp-helpdb
如果后面再加上数据库名,则表示查询特定的数据库,其中,EXEC是执行存储过程或函数的关键字

三、表的数据定义语句
1,表的创建
使用CREATE TABLE语句来建立表,其基本语法格式如下:

CREATE TABLE 表名
(
     列名 1 数据类型 [NULL | NOT NULL ][ PRIMARY | UNIQUE ]
     [FOREIFN KEY [ (列名)] ] REFERENCES 关联表名称 [ ( 关联列名) ]
     [列名 2 数据类型 ....]
     ....
     [ CONSTRAINT 约束名 ] {  PRIMARY KEY | UNIQUE } 约束 ]
     ...
)

1,表的创建
使用CREATE TABLE语句来建立表,其基本语法如下:

CREATE TABLE 表名
(
列名 1 数据类型  [NULL |  NOT NULL][ PRIMARY | UNIQUE ]
     [FOR]EIGN KEY[  ( 列名 ) ] ] REFERENCES 关联表名称 [ ( 关联列名 ) ]
[ 列名 2 数据类型 ... ]
...
[ CONSTRAINT 约束名 ]{ PRIMAARY KEY | UNIQUE  } 约束 ]
...
)

例如,在test1数据库中创建一个Emp表。它应包含三个列:职工号,姓名和地址。数据类型分别为整形、字符型(长度为8)和字符型(长度为50)
代码如下

    USE test
    CREATE TABLE Emp
    (
      职工号  int,
      姓名    char(8),
      地址    char(50)
    )

【提示】:USE 语句只要在第一次使用即可,后续的T-SQL语句都是作用在该数据库中。若要使用其他的数据库,才需要再次执行USE语句,如果不用USE指出当前的数据库,可以在工具栏的数据库列表中选择当前数据库,表示当前对SMK数据库操作

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值