回忆数据库的知识

第三章 TSQL入门

一、创建数据库

    1、新建一个数据库

       语法:CREATE DATABASE 数据库名(注意命名规范 

:SellDB)

       还可以用  CREATE DATABASE 数据库名

                 ON PRIMARY   注:主数据文件必要,且只能有一个

                 (

主文件的名字,

                        主文件的物理名,

                        初始大小,

                        最大的尺寸,

                        增长量(超果超过超始尺寸,每次重新增长的尺寸)

                        注意:增长量可以写尺寸,也可以写百分比)

,       注:次要文件可以没有,也可以有多个

                 (

次要文件的名字,

                        次要文件的物理名,

                        初始大小,

                        最大的尺寸,

                        增长量(超果超过超始尺寸,每次重新

增长的尺寸)

                        注意:增长量可以写尺寸,也可以写百

分比

                 )

   LOG ON

                 (

                        日志文件的名字,

                        日志文件的物理名,

                        初始大小,

                        增长量(超果超过超始尺寸,每次重新

增长的尺寸)

                        注意:增长量可以写尺寸,也可以写百

分比

)

    2、删除一个已经存在的数据库

语法:   DROP DATABASE 数据库名(注意:在master

据库下进行,数据库一定要存在)

    3.判断:

IF EXISTS(SELECT * FROM sysdatabases WHERE name='库名' )

BEGIN

    DROP DATABASE 库名

END

IF EXISTS(SELECT * FROM sysobjects WHERE name='表名|存储

过程名|视图名')

DROP TABLE|procedure|view 表名|存储过程名|视图名

GO

二、创建表

    CREATE TABLE 表名

    (

        字段名 数据类型 [约束],

        ..........

    )

三、创建约束

    两种方式

    1、在建表的同时创建约束

    2、先创建表,完成后再创建约束

       ALTER TABLE 表名 

       ADD CONSTRAINT 约束名

       约束类型(列名)

       主键约束

       ALTER TABLE 表名

       ADD CONSTRAINT PK_表名_列名

       PRIMARY KEY(列名)

       检查约束

       ALTER TABLE 表名

       ADD CONSTRAINT CK_表名_列名

       CHECK(表达式)

       默认值

       ALTER TABLE 表名

       ADD CONSTRAINT DF_表名_列名

       DEFAULT() FOR 列名

       外键约束

       ALTER TABLE 表名

       ADD CONSTRAINT FK_表名_列名

       FOREIGN KEY(列名) REFERENCES 主表(列名)

四:插入修改查询删除数据

1.插入

INSERT [INTO] 表名 [(列名)] VALUES()

插入多条数据:

将表2中的条件的信息插入到表1,表1必须是原数据库中不存在的新

表:

SELECT * INTO 1 FROM 2 [WHERE 条件表达式]

完成一次插入多行:这个表必须是原数据库已经存在的表

INSERT INTO 表名[列名列表] SELECT 语句

例:INSERT INTO 2(列名) SELECT 列名 FROM 1 --将表1

的所有数据一次性的添加到表

INSERT INTO (列名) select 值 union select 值 union select 

值 union ....select 值 --union 表示联合查询

2.修改

UPDATE 表名 SET 列名=新值 [WHERE 条件表达式]

3.查询

SELECT 列名或* FROM 表名[WHERE 条件表达式]

关联查询:

内连接:连接两个表中只要数据存在不匹配就都不显示

示例1SELECT 字段.... FROM 1 JOIN 2 ON 1.字段0 = 2.字段0 ORDER BY 字段0

示例2SELECT 字段.... FROM 1 INNER JOIN 2 ON 1.字段0 = 2.字段0  ORDER BY 字段0

示例3SELECT 字段.... FROM 1,表2 WHERE 1.字段0 = 2.字段0 ORDER BY 字段0

外连接:在两个表连接查询时,两个表中都存在空匹配的记录,这些记录都显示出   来,空匹配的字段用Null表示。

示例1SELECT 字段.... FROM 1  FULL OUTER JOIN 2 ON 1.字段0 = 2.字段0

示例2SELECT 字段.... FROM 1  FULL  JOIN 2 ON 1.字段0 = 2.字段0

左连接:连接两个表的左表为主显示表,空匹配用Null

示例1SELECT 字段 FROM 1 LEFT JOIN 2 ON 1.字段0 = 2.字段0

示例2SELECT 字段 FROM 1 LEFT OUTER JOIN 2 ON 1.字段0 = 2.字段0

示例3SELECT 字段 FROM 1 , 2 WHERE 1.字段0 = 2.字段0(+)

右连接:类似于左连接,但是以右表为基表

示例1SELECT 字段 FROM 1 RIGHT JOIN 2 ON 1.字段0 = 2.字段0

示例2SELECT 字段 FROM 1 RIGHT OUTER JOIN 2 ON 1.字段0 = 2.字段0

示例3SELECT 字段 FROM 1 , 2 WHERE 1.字段0(+) = 2.字段0

4.删除

DELECT FROM 表名 [WHERE 条件表达式]

删除所有记录:TRUNCATE TABLE 表名

5.回忆:

Group by having

Select后的 非计算列 一定要出现在group by 的后面

过程:Where 是挑选行然后分组,在然后having挑选组

having 就一定有group by 

Order by: 排序

五、ddl 和 dml

DML:数据操作语言,对表中的数据进行增加删除修改操作 insert  update  delete

DDL:数据定义语言,对数据库对象的定义,包括删除.新建.修改create  alter  drop


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值