许漫
摘 要:虽然SSMS提供的可视化方式很容易操纵数据库中的各种对象,可当应用程序访问数据库时,就只能借助T-SQL语言。T-SQL语言是SQL程序设计语言的增强片,它是应用程序与SQL Server沟通的主要语言。本文介绍T-SQL语言的相关语法,如创建、修改和删除等。
关键词:T-SQL语句;数据库;数据表
SQL,即Structured Query Language,结构化查询语句,是关系型数据库的标准。Oracle使用的SQL被称为PL-SQL,而SQL Server使用的则被称为T-SQ(Transact-SQL)。T-SQL语言包括数据定义语言、数据控制语言和数据操纵语言等三种类型。
一、T-SQL语言简介
1.数据定义语言
数据定义语言(Data Definition Language,DDL)用于创建数据库和数据库对象,为数据库操作提供对象。常用的数据定义语言有:
(1)CREATE TABLE,用于建立数据表;
(2)DROP TABLE,用于删除数据表;
(3)ALTER TABLE,用于修改数据表。
例如,使用T-SQL语言,在StuSelDB数据库中创建名为CourseType的表,该表包含CourseTypeID、CourseTypeName两列,可以利用以下命令实现:
USE StuSelDB
CREATE TABLE CourseType
(CourseTypeID int NOT NULL,
CourseTypeName varchar(10) NOT NULL)
GO
2.数据控制语言
数据控制语言(Data Control Language ,DCL)用来执行有关安全管理的操作,包括对表和视图的访问权限及对数据库操作事务的控制。
GRANT:将指定的安全对象的权限授予相应的主体。
DENY:拒绝授予主体权限,并且防止主体通过组或角色成品继承权限。
REVOKE:删除授予的权限。
例如,将CourseType表的查询权限授予public角色,可以利用以下命令实现:
GRANT SELECT ON CourseType TO public
GO
3.数据操纵语言
数据操纵语言(Data Manipulation Language,DML)用于操纵表和视图中的数据。其中,
SELECT命令,用于查询;
INSERT命令,用于插入;
DELETE命令,用于删除;
UPDATE命令,用于更新。
例如,查询CourseType表中CourseTypeID和CourseTypeName两列数据,编辑两行数据,可以利用以下命令实现:
SELECT CourseTypeID,CourseTypeName
FROM CourseType
二、使用T-SQL操作数据库
1.创建数据库
命令格式为:
CREATE DATABASE database_name
[
ON[PRIMARY]
[(NAME=logical_name,FILENAME=path
[,SIZE=database_size]
[,MAXSIZE=database_maxsize]
[,FILEGROWTH=growth_increment])
[,FILEGROUP filegroup_name
[(NAME=datafile_name FILENAME=path
[,SIZE=datafile_size]
[,MAXSIZE=datafile_maxsize]
[,FILEGROWTH=growth_increment])]]
]
[LOGON
[(NAME=logfile_name FILENAME=path
[,SIZE=datafile_size]
[,MAXSIZE=database_maxsize]
[,FILEGROWTH=growth_increment])]
]
例如,创建名为StuSelDBXL的数据库,该数据库包含主数据文件、辅助数据文件和日志文件各一个,均放在“D:\DATA”目录下。……