SQL Server 学习笔记

环境

  • SQL Server 2019

创建数据库

基本格式如下:

create database [数据库名称]
create database GradeManager;

生成了一个新创建的数据库 GradeManager
在这里插入图片描述

切换数据库

基本格式如下:

use  [数据库名称]
use GradeManager;

切换以后,左上角显示已经切换到 自己创建的 GradeManager 数据库。
在这里插入图片描述
创建表

基本格式如下:

CREATE TABLE [表名]
([列定义]);

例如:

CREATE TABLE Employee
(Eno CHAR(4)NOT NULL UNIQUE,
Ename CHAR(8) NOT NULL,
Sex CHAR(2) NOT NULL DEFAULT('男'),
Age INT NULL,
Is_Marry CHAR(1) NULL,
Title CHAR(6) NULL,
Dno CHAR(2) NULL);
  • NULL :该列值可以为空
  • NOT NULL:该列值不可以为空
  • Eno:取唯一值,该值在数据表中不会重复。
  • DEFAULT:设置默认值

注意:数据库下的表名是唯一的,不可以有同名表出现。

创建的数据库Employee表如下图:
在这里插入图片描述

在表中插入数据

基本格式如下:

INSERT INTO [表名] ( field1, field2,...fieldN )
VALUES ([alue1, value2, ... valueN)

添加一条数据:

INSERT INTO Employee
VALUES ('1000', '小明', '男', 22, '1', '工程师', '02');
EnoEnameSexAgeIs_MarryTitleDno
1000小明221工程师02

通过设置字段添加一条数据:

INSERT INTO Employee(Eno, Ename, Sex)
VALUES ('1001', 'vvcat', '男');
EnoEnameSexAgeIs_MarryTitleDno
1000小明221工程师02
1001vvcatNULLNULLNULLNULL

批量添加十条数据:
添加结果如下:

INSERT INTO Employee
VALUES('1002', '刘一', '男', 20, '1', '工程师', '01'),
('1003', '陈二', '女', 21, '1', '实习', '03'),
('1005', '李四', '男', 63, '1', '实习', '01'),
('1006', '王五', '女', 24, '1', '工程师', '01'),
('1007', '赵六', '男', 25, '1', '助工', '03'),
('1008', '孙七', '男', 46, '0', '助工', '02'),
('1009', '周八', '女', 37, '1', '助工', '02'),
('1010', '吴九', '男', 50, '0', '经理', '01'),
('1015', '郑十', '男', 40, '0', '经理', '01');
EnoEnameSexAgeIs_MarryTitleDno
1000小明221工程师02
1001vvcatNULLNULLNULLNULL
1002刘一201工程师01
1003陈二211实习03
1004张三221工程师02
1005李四631实习01
1006王五241工程师01
1007赵六251助工03
1008孙七460助工02
1009周八371助工02
1010吴九500经理01
1015郑十400经理01
在表中查询数据
无条件查询

查询 Employee 表的所有的行和列。

SELECT Eno, Ename, Sex, Age, Is_Marry, Title, Dno
FROM Employee

以上查询方式可通过 * 替换。

SELECT *
FROM Employee

查询结果如下:

EnoEnameSexAgeIs_MarryTitleDno
1000小明221工程师02
1001vvcatNULLNULLNULLNULL
1002刘一201工程师01
1003陈二211实习03
1004张三221工程师02
1005李四631实习01
1006王五241工程师01
1007赵六251助工03
1008孙七460助工02
1009周八371助工02
1010吴九500经理01
1015郑十400经理01

注:*代替表中的所有列。

查询 Employee 表中的所有的姓名

SELECT Ename
FROM Employee

查询结果如下:

Ename
1小明
2vvcat
3刘一
4陈二
5张三
6李四
7王五
8赵六
9孙七
10周八
11吴九
12郑十
取消结果集中的重复行

注:使用 DISTINCT 关键字可去掉结果集中的重复行。

SELECT DISTINCT Sex
FROM Employee
Sex
1
2
在表中修改数据

基本语句格式如下:

UPDATE [表名]
SET column1=value1,column2=value2,...
WHERE [条件];

将 Ename 为小明的数据,修改成 Ename 为小刚

UPDATE Employee
SET Ename='小刚'
WHERE Ename='小明';
EnoEnameSexAgeIs_MarryTitleDno
1000小刚221工程师02
1001vvcatNULLNULLNULLNULL
1002刘一201工程师01
1003陈二211实习03
1004张三221工程师02
1005李四631实习01
1006王五241工程师01
1007赵六251助工03
1008孙七460助工02
1009周八371助工02
1010吴九500经理01
1015郑十400经理01

将所有的 Eno 加 100

UPDATE Employee
SET Eno = Eno + 100;
EnoEnameSexAgeIs_MarryTitleDno
1100小刚221工程师02
1101vvcatNULLNULLNULLNULL
1102刘一201工程师01
1103陈二211实习03
1104张三221工程师02
1105李四631实习01
1106王五241工程师01
1107赵六251助工03
1108孙七460助工02
1109周八371助工02
1110吴九500经理01
1115郑十400经理01
在表中删除数据

基本语句格式如下:

DELETE FROM [表名]
WHERE [条件];

删除某条指定数据

DELETE FROM Employee
WHERE Eno='1100';  /*删除 Eno=1000 的数据*/
EnoEnameSexAgeIs_MarryTitleDno
1001vvcatNULLNULLNULLNULL
1002刘一201工程师01
1003陈二211实习03
1004张三221工程师02
1005李四631实习01
1006王五241工程师01
1007赵六251助工03
1008孙七460助工02
1009周八371助工02
1010吴九500经理01
1015郑十400经理01

删除表中所有数据

DELETE FROM Employee;
表结构的修改

基本语句格式如下:

添加列
ALTER TABLE [表名]
[ADD [列名] [数据类型] [约束名]]
修改列
ALTER TABLE [表名]
[ALTER COLUMN [列名] [新的数据类型]]

在 Employee 表中添加一列 Address

ALTER TABLE Employee
ADD Address CHAR(50) NULL; 

在这里插入图片描述

修改Employee 表的 Address 数据类型为CHAR(100)

ALTER TABLE Employee
ALTER COLUMN Address CHAR(100) NULL; 

在这里插入图片描述

后续继续更新…

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值