行业知识
【SQL Server】入门教程-基础篇(一)
���录
前言
SQL Server介绍
SQL Server数据库简介
数据库的常见分类
SQL语言的分类
SQL Server基础语言学习
CREATE DATABASE - 创建数据库
ALTER DATABASE-修改数据库
DROP DATABASE - 删除数据库
CREATE TABLE – 创建表
INSERT – 插入数据
SELECT – 查询数据
DISTINCT – 去除重复值
WHERE – 条件查询
AND & OR – 运算符
ORDER BY – 排序
Group by – 分组查询
Having – 过滤条件查询
UPDATE – 更新数据
DELETE – 删除数据
️TRUNCATE TABLE – 清除表数据
DROP TABLE – 删除表
总结
前言
SQL Server介绍
SQL Server数据库简介
SQL Server数据库是Microsoft开发设计的一个关系数据库智能管理系统(RDBMS),现在是全世界主流数据库之一;
SQL Server数据库具备方便使用、可伸缩性好、相关软件集成程度高等优势,能够从单一的笔记本上运行或以高倍云服务器集群为基础,或在这两者之间任何东西上运行。尽管说成“任何东西”,可是依然要考虑有关的软件和硬件配置;
数据库的常见分类
- 关系型数据库:MySQL、Oracle、DB2、SQL Server
- 非关系型数据库:Redis、HBase等等
SQL语言的分类
- DQL:数据查询语言:select、from、where
- DCL:数据控制语言:grant、revoke
- DDL:数据定义语言:create、alter、drop、truncate
- DML:数据操作语言:insert、update、delete
- TCL:事务控制语言:commit、rollback
SQL Server基础语言学习
CREATE DATABASE - 创建数据库
--判断数据库文件是否存在,如果存在就删除 exits是判断()语句是否返回值,如果有就返回true,否则就是falseIF EXISTS(SELECT * FROM sysdatabases WHERE name='StudentDB ')--删除数据库DROP DATABASE StudentDB GOCREATE DATABASE StudentDB --创建数据库ON PRIMARY --定义在主文件组上的文件( NAME=stu_date, --逻辑名称 FILENAME='C:\sql\StudentDB.mdf', --物理名称 SIZE=10, --初始大小为10mb MAXSIZE=unlimited, --最大限制为无限大 FILEGROWTH=10%) --主数据文件增长幅度为10% LOG ON --定义事务日志文件( NAME=stu_log, --逻辑名称 FILENAME='C:\sql\StudentDB.ldf', --物理名称 SIZE=1, --初始大小为1mb MAXSIZE=5, --最大限制为5mb FILEGROWTH=1--事务日志增长幅度为1mb`)
ALTER DATABASE-修改数据库
ALTER DATABASE database_name{ADD FILE [,…n][ TO FILEGROUP filegroup_name ]/*在文件组中增加数据文件*/| ADD LOG FILE [,…n] /*增加日志文件*/| REMOVE FILE logical_file_name /*删除数据文件*/| ADD FILEGROUP filegroup_name /*增加文件组*/| REMOVE FILEGROUP filegroup_name /*删除文件组*/| MODIFY FILE /*更改文件属性*/| MODIFY NAME = new_dbname /*数据库更名*/| MODIFY FILEGROUP filegroup_name {filegroup_property | NAME = new_filegroup_name }| SET [ ,...n ] [ WITH ] /*设置数据库属性*/| COLLATE /*指定数据库排序规则*/}GO DROP DATABASE - 删除数据库
删除 StudentDB 数据库
DROP DATABASE StudentDB GO
CREATE TABLE – 创建表
Student(学生表)的表结构:
| 列 名 | 数 据 类 型 | 长度 | 可空 | 默认值 | 说 明 |
|---|---|---|---|---|---|
| 学号 | int | × | 无 | 主键,自增为1 | |
| 姓名 | nvarchar | 50 | × | 无 | |
| 性别 | nvarchar | 50 | √ | 1 | 1:男;0:女 |
| 出生时间 | 日期型(datetime) | 系统默认 | √ | 无 | |
| 数学 | varchar | 50 | √ | 无 | |
| 英语 | varchar | 50 | √ | 无 | |
| 语文 | varchar | 50 | √ | 无 | |
| 班级 | nvarchar | 50 | √ | 无 |
实例:
本代码演示如何创建“Student”的表和表中的结构。
该表包含8个列,列名分别是:“StuNo”、“StuName”、“StuSex”、“StuBir”、Math 、English 、Chinese 以及Classes ;
CREATE TABLE Student( StuNo int NOT NULL identity(1,1) not null PRIMARY key , StuName char(8) NOT NULL , StuSex bit NULL DEFAULT (1) , StuBir datetime NULL , Math varchar(50), English varchar(50), Chinese varchar(50), Classes nvarchar(50))GO
这就是创建表的sql命令,成功后即可添加数据。
INSERT – 插入数据
语法格式:
insert into 表名(字段名,...) values(值,...);
我们也可以指定所要插入数据的列:
INSERT INTO table_name (列1, 列2,...) VALUES (值1, 值2,....);
实例:
本例演示 “Student” 表插入记录的两种方式:
1、插入新的行
insert into Student values('张三','男','1999/01/02','80','75','90','2001班') 2、在指定的列中插入数据
INSERT INTO Student (StuName, StuSex) VALUES ('李四', '女'); 当下面的消息提示栏这出现上面这样的就是插入成功了。
数据表里就会出现你刚才插入的数据。下面就是查询出来结果。
温馨提示:当第一列是主键自增列的时候,不用插入,但第一列不是主键和自增列时,必须插入,否则会提示列数目不匹配的错误。
SELECT – 查询数据
SELECT 语句用于从表中选取数据,结果被存储在一个结果表中(称为结果集)。
语法:
SELECT * FROM 表名称;
我们也可以指定所要查询数据的列:
SELECT 列名称 FROM 表名称;
温馨提示:SQL 语句不区分大小写,SELECT 等效于 select。
实例:
SQL SELECT * 实例:
SELECT * FROM Student;
就会查询出表中所有的数据。
温馨提示:星号(*)是选取所有列的方法。
如需获取表中的其中某列的数据,请使用类似这样的 SELECT 语句:
SELECT StuNo,StuName FROM Student;
这样查询出来的结果就是查询你指定的字段。
DISTINCT – 去除重复值
如果一张表中有多行重复数据,如何去重显示呢?可以了解下 DISTINCT 。
语法:
SELECT DISTINCT 列名称 FROM 表名称;
实例:
如果要从 “StuName” 列中选取所有的值,我们需要使用 SELECT 语句:
SELECT DISTINCT StuName FROM Student;
就会发现,重名的都没显示,只显示唯一的名字。
WHERE – 条件查询
WHERE 子句是从表中查询出需要特定条件的语法。
语法:
SELECT 列名称 FROM 表名称 WHERE 列 运算符 值;
下面的运算符可在 WHERE 子句中使用:
| 操作符 | 描述 |
|---|---|
| = | 等于 |
| 不等于 | |
| > | 大于 |
| = | 大于等于 |
| 75; 温馨提示:having必须跟在group by的后面,不能单独使用。group by后面必须跟的是非聚合函数。 UPDATE – 更新数据UPDATE用于修改表中的数据 语法: UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值; 实例: 更新某一行中的一个列: 更新Student表中张三的数学成绩 UPDATE Studnet SET Math= '80' WHERE StuName= '张三'; 出现(一行受影响)代表更新成功。 温馨提示:SET后边是要更新的内容,WHERE后边是条件。 DELETE – 删除数据DELETE 语句用于删除表中的行。 语法: DELETE FROM 表名称 WHERE 列名称 = 值; 实例: 删除某行: 删除 Student表中 StuName为 “张三” 的行: DELETE FROM Studnet WHERE StuName= '张三';
出现(一行受影响)代表删除成功。 删除所有行: 可以在不删除表的情况下删除所有的行: DELETE FROM Student; 温馨提示:删除的时候一定要有条件,不然的话表里的数据就都没有了。 ️TRUNCATE TABLE – 清除表数据TRUNCATE TABLE命令是只删除表中的所有数据,对表的结构不影响。 语法: TRUNCATE TABLE 表名称; 实例: 如何删除名为 “Student” 表中的数据。 TRUNCATE TABLE Student; DROP TABLE – 删除表最后要是不想要这张表的话,直接把整个表删除即可。 语法: DROP TABLE 表名称; 实例: 删除名为 "Student" 的表。 drop table persons; 总结 |
下一篇:双生幻想服务器怎么看?