Sql基本语法

Sql基本语法

USE (使用)

语法:USE NETBAR
功能:使用名为的NETBAR数据库

说明:代码优先级高于手动设置

CREATE (建立)

语法:CREATE DATABASE STUDENT
功能:建立名为STUDENT的数据库

说明:数据定义语法 可用于库的建立、表的建立及其它建立

DROP (删除)

语法:DROP TABLE STUDENT
功能:删除名为STUDENT的表

说明:数据定义语法 可用于库、表、约束的删除及其它删除

TRUNCATE (截断)

语法:TRUNCATE TABLE STUDENT
功能:删除名为STUDENT表下所有行

说明:数据定义语法 等同于不带条件的DELETE 不可回滚

ALTER (修改)

语法:ALTER TABLE STUDENT ADD SEX CHAR(2)
功能:修改名为STUDENT的表添加名为SEX的字段 长度为CHAR类型 2字节

语法:ALTER TABLE STUDENT DROP COLUMM SEX
功能:修改名为STUDENT的表删除名为SEX的字段

说明:数据定义语法 每条ALTER命令只能执行一次修改操作

CHECK (检查)

语法:AGE INT CHECK(AGE>0 AND AGE<100)
功能:检查AGE字段是否在1-99之间

语法:AGE INT CHECK(AGE BETWEEN 0 AND 100)
功能:同上

语法:EMAIL VARCHAR(20) CHECK(EMAIL LIKE'%@%')
功能:检查EMAIL字段是否存在@字符 %代表@前后允许有任意字符

语法:TEL VARCHAR(20) CHECK(TEL LIKE'[0-9]...[0-9]')
功能: 检查TEL字段内的数字是否都在0-9之间 …省略中间的[0-9]

语法:SEX CHAR(2) CHECK(SEX='男' OR SEX='女')
功能:检查SEX字段是否为"男"或"女"

语法:SEX BIT CHECK(SEX IN('男','女'))
功能:同上

说明:最重要的域完整性约束语法 检查约束

NOT NULL (非空 必填)

语法:NUMBER VARCHAR(20) NOT NULL
功能:NUMBER字段必须填写

说明: 域完整性约束语法 数据约束

DEFAULT (默认)

语法:PAYMENT VARCHAR(20) DEFAULT 0
功能:PAYMENT字段如不填写 默认为0

说明:域完整性约束语法 默认约束

PRIMARY KEY (主键)

语法:SID VARCHAR(20) PRIMARY KEY
功能:SID字段必填 设置为主键

语法:SID INT CLASSID VARCHAR(20)PRIMARY KEY(SID,CLASSID)
功能:把SID字段和CLASSID字段设置为复合主键

说明:实体完整性约束语法,不得为空,不得重复。复合主键尽量不要频繁使用!

UNIQUE (唯一)

语法:SID VARCHAR(20) UNIQUE
功能:SID字段为唯一值

说明:实体完整性约束语法 不得重复 但可以为空

IDENTITY (标识符)

语法:SID INT IDENTITY(1,1) PRIMARY KEY
功能:SID为标识字段 起始编号为1 每次增长为1 设置为主键

说明:实体完整性约束语法 只能用于整数 自动编号

CONSTRAINT (约束)

语法:BEGINTIME DATETIME ENDTIME DATETIME CONSTRAINT CK_BE CHECK(ENDTIME>BEGI NTIME)
功能:设置名为CK_BE的约束 检查ENDTIME是否大于BEGINTIME

语法:DROP CONSTRAINT CK_BE
功能:删除名位CK_BE的约束

语法:ALTER TABLE STUDENT ADD CONSTRAINT DEF_ADD DEFAULT'北京'FOR ADDRESS
功能:设置名为DEF_ADD的约束 把ADDRESS设置为默认为’北京’

说明:单独设置约束 可单独删除约束 不用更改字段 CONSTRAINT搭配DEFAULT需注意特别语法 具体如上示例三

FOREIGN KEY (外键)REFERENCES (关联)

语法:SID INT FOREGIN KEY REFERENCES STUDENT(SID)
功能:把SID字段设置为STUDENT表中SID字段的外键

语法:ALTER TABLE STUDENT1 ADD CONSTRAINT FK_SID FOREGIN KEY(SID) REFERENCES STUDENT(SID)
功能:把STUDETN1 表中SID字段设置为STUDENT表中SID字段的外键 在表外同样可用CONSTRAINT语法单独设立主外键关系

说明:引用完整性约束语法 插入信息时先主键表后外键表 删除信息时先外键表后主键表 删除表时先外键表后主键表

INSERT (插入)

语法:INTSERT INTO STUDENT(SNAME,AGE,ADDRESS) VALUES('XXX',18,'BEIJING')
功能:向STUDENT表中SNAME,AGE,ADDRESS字段顺次插入’XXX’,‘18’,'BEIJING’的信息

语法:INSERT INTO STUDENT VALUES('XXX',18,'BEIJING')
功能:同上 如省略原表列名 默认为整行插入 标识符字段不用输入

说明:数据操作语法 以行为单位插入

DELETE(删除)

语法:DELETE FROM STUDENT
功能: 删除STUDENT表中所有记录

语法:DELETE FROM STUDENT WHERE AGE = '18'
功能:删除STUDENT表中所有AGE为18的记录

说明:数据操作语法 以行为单位删除

UPDATE(修改)

语法:UPDATE STUDENT SET SNAME= 'XXX' WHERE AGE = '18'
功能:修改STUDENT表中所有AGE为18的记录的SNAME改为XXX

说明:数据操作语法 以行为单位修改

SELECT (查询)

语法:SELECT*FORM STUDENT
功能:查询名为 STUNDENT的表所有字段(代表所有字段)

语法:SELECT TOP 3 *FROM STUDENT WHERE C++>=80 AND C#>=80 ORDER BY C++,C#
功能:在表STUDENT查询同时满足C++>=80和C#>=80条件的列 并按C++和C#次序升序排列 最后获取前三列信息

语法:SELECT 20 PERCENT *FROM STUDENT WHERE C++<60 OR C#<60 ORDER BY C++,C# DESC
功能:在表STUDENT查询满足C++<60或C#<60条件的列 并按C++和C#的次序降序排列 最后获取总信息列的前20%

语法:SELECT SUM(C++)AS SUM FROM STUDENT
功能:查询表STUDENT中C++列之和 结果集生成在名为SUM的字段

语法:SELECT TEAM AVG(SCORE) FROM STUDENT WHERE PERJECT='C#' GROUP BY TEAM HAVING AVG(SCORE)>=60
功能:从表STUDENT中以TEAM为分组条件查询C#的SCORE平均值
并筛选出SCORE平均值大于等于60的组

说明:数据操作语法 可用于表的查询、字段的查询及其它查询,如需选择查询字段 在处替换输入要查询字段 ORDER BY语法默认为升序(即ASC)SUM( ) AVG( ) MIN( ) MAX( ) COUNT( )属于单行函数 功能分别为求和 求平均 求最小 求最大 计算行数 其中前两者仅适用数字型数据 后三者适用所有数据 COUNT(*)为统计所有行,如果采用GROUP BY分组 则SELECT子句后只能跟随分组条件(即GROUP BY后条件)和聚合函数 只有HAVING能以聚合函。数作为条件 HAVING只能跟随GROUP BY出现且只能用与分组相关条件作为后缀条件

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值