T-SQL语句简易入门(第一课)

在微软官方,有一篇介绍T-SQL语句的教程,非常好理解,完全可以帮助新手入门,了解常用SQL语句的使用语法,而且又不涉及较为复杂的操作、不用安装示例数据库AdventureWorks。下面是教程里内容的摘录。

T-SQL,也就是Transact-SQL,是微软对SQL标准的实现。(说明:以下的T-SQL语句均在查询编辑器中书写、执行)
 
1. 创建数据库TestData

CREATE DATABASE TestData
GO

鼠标选中“CREATE DATABASE”,按F1,会调出“CREATE DATABASE”语句的在线帮助文档;鼠标选中“CREATE DATABASE TestData”语句,按F5,会执行这条语句。

创建的数据库,其实是model数据库的拷贝、名字换成TestData的结果。

注意:当执行的语句不止一条时,GO用来分隔语句;只有一条语句时,GO可以省略。

2. 创建表Products

表有名字,列有数据类型。创建表时,一般都会有主键,主键的值在表中是唯一的,可以是一列或多列的组合;为每列指定是否可以为null是个好习惯。
数据库引擎默认安装是大小写不敏感的,也就是说“OrderData”与“ORDERDATA”是一样的。

2.1. 创建容纳表的数据库

USE master;

-- Delete the TestData database if it exists.
IF EXISTS(SELECT * FROM sys.databases WHERE name='TestData')
BEGIN
    DROP DATABASE TestData;
END

-- Create a new database called TestData.
CREATE DATABASE TestData;

按F5执行语句。

2.2. 切换连接的数据库
使用TestData数据库

USE TestData
GO


2.3. 创建表Products

CREATE TABLE dbo.Products
   (ProductID int PRIMARY KEY NOT NULL,
    ProductName varchar(25) NOT NULL,
    Price money NULL,
    ProductDescription text NULL)
GO

执行语句。创建了一张名为Products的表,有4列:ProductID、ProductName、Price和ProductDescription,数据类型分别是int、varchar(25)、money和text。Price和ProductDescription列的数据可以为空。这条语句也包含了一个可选元素(dbo.),称为架构,架构指拥有表格的数据库对象。如果你是管理员,默认架构就是dbo,它表示数据库拥有者(Database Owner)。

 

3. 插入和修改表数据

通过INSERT语句插入数据;通过UPDATE语句修改数据。接下来执行四条插入语句,插入数据在这里

ProductID ProductName Price PrductDescription
1 Clamp 12.48 Workbench clamp
50 Screwdriver 3.17 Flat head
75 Tire Bar   Tool for changing tires.
3000 3mm Bracket .52  

插入语句的基本语法:INSERT、表名、列列表、VALUES、值列表。"--"后面跟着的文字是注释。

 

3.1. 向表中插入数据

1)执行下面的语句,插入数据

-- 基本的插入语句
INSERT dbo.Products (ProductID, ProductName, Price, ProductDescription)
VALUES (1, 'Clamp', 12.48, 'Workbench clamp')
GO


2)将ProductID和ProductName字段调换位置

-- 改变插入列的顺序
INSERT dbo.Products (ProductName, ProductID, Price, ProductDescription)
VALUES ('Screwdriver', 50, 3.17, 'Flat head')
GO


3)列列表是可选的,但值必须按照正确的顺序列出。

-- 忽略列列表,但值列表必须按照正确的顺序
INSERT dbo.Products
VALUES (75, 'Tire Bar', NULL, 'Tool for changing tires.')
GO

这条语句常见但不推荐,Price列的值指定为NULL,因为还不知道价儿。


4)架构可以省略,因为ProductDescription列的值可以为空,所以插入时可以不指定它

-- 忽略架构名dbo,未指定ProductDescription列
INSERT Products (ProductID, ProductName, Price)
VALUES (3000, '3mm Bracket', .52)
GO

 

3.2 修改Products表数据
用UPDATE语句修改第二个产品的名字(ProductName),修改为“Flat Head Screwdriver”,原来名字是“Screwdriver”。

UPDATE dbo.Products
SET ProductName = 'Flat Head Screwdriver'
WHERE ProductID = 50
GO

 

(完)

posted @ 2016-09-14 22:31  Hi!张宝  阅读(257)  评论(0编辑  收藏  举报