【SQL Server学习笔记】5:使用INSERT语句插入数据

本文介绍了SQL语句的基本组成部分,包括数据操作语言(DML)、数据控制语言(DCL)、数据查询语言(DQL)和数据定义语言(DDL)。详细解释了如何使用INSERT语句向表中插入数据,通过SELECT语句查询数据,以及利用INSERT-SELECT-FROM和SELECT-INTO-FROM语句实现数据的复制和转移。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

使用SQL语句的意义是,要开发的DBAS应用程序不能像人一样通过SSMS工具来操作数据,SQL语句是应用程序和数据库通信的桥梁。而且相比手动图形化操作,SQL语句更加方便和强大。

SQL(结构化查询语言)的组成

①DML(数据操作语言)
插入、删除和修改数据库中的数据

INSERTUPDATEDELETE

②DCL(数据控制语言)
用来控制存储许可,存取权限等

GRANTREVOKE

③DQL(数据查询语言)
用来查询数据库中的数据

SELECT

④DDL(数据定义语言)
用来建立数据库、数据库对象和定义表的列

CREATE TABLEDROP TABLE

[1]INSERT语句向表中插入一行数据

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

本节新建一个数据库和表作为测试:
这里写图片描述
点击新建查询,并确认是在要查的数据库下:
这里写图片描述
SCode列作为标识列,是在列入数据时数据库自动赋值的,在INSERT时就不用写它了:

insert into students (SName,SAddress,SGrade,SEmail,SSex)
values ('刘知昊','China','3','no@no.com','1')

选中并执行(不选中的话会执行所有的,在这个例子里也一样):
这里写图片描述
查看那张表:
这里写图片描述
注意用INSERT语句插入行时,每个列的数据类型、精度等必须与相应的列匹配,而且应符合各个约束的要求。
如果在设计表时设计了某列不能为空,就必须插入数据。
具有缺省值(默认约束)的列,可以用关键字DEFAULT来选择使用默认值。

[2]INSERT-SELECT-FROM语句将存在表中的列插入到其它存在表的存在列中去

INSERT INTO 目标表(目标表列名表)
SELECT 源表列名表
FROM 源表

如在原来表中有这些数据:
这里写图片描述
新建一个有三个列(名字,地址,电子邮件的列),并执行下面语句:

insert into Test(名字,地址,电子邮件)
select SName,SAddress,SEmail
from students

查看一下新表:
这里写图片描述

[3]SELECT-INTO-FROM语句将现有表中的数据插入到新表中

SELECT 源表列名表
INTO 目标表
FROM 源表

如执行:

select SName,SEmail
into newTab
from students

刷新一下,查看新产生的表:
这里写图片描述
因为表名不能重复,所以这条语句只能成功执行一次。

[4]INSERT-SELECT-UNION语句合并数据进行多行插入

INSERT INTO 目标表(目标表列名表)
SELECT 列名表1 UNION
SELECT 列名表2 UNION
......
SELECT 列名表n

如执行:

insert into students(SName,SAddress,SGrade,SEmail,SSex)
select 'AROLF','China','7','fo@lo.com','0' union
select '随便名字','US','2','ao@lo.com','1' union
select '大傻','地球','8','fp@lo.com','1'

刷新一下,查看students表:
这里写图片描述

此外,这些写入Query的语句可以保存为文件,以便以后查看和使用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值