SQL Server中用T-SQL语句实现(插入数据、删除数据、修改数据)

前言

     数据库的原理就是增删改查,本次将用T-SQL 实现对数据库的增删改。查询会在下一篇博客详细的讲解。

一. 插入数据

  1.1 插入一条数据

	
	/* 
	 *	注意事项: 1. [中括号]中是可选项,可以省略不写		 
	 *			  2. 标识列不可以添加数据,系统会自动生成数据 
	 */
	 	 
	--1.使用 insert values 插入一行数据 
	语法:
	insert [into] 表名[字段,字段,字段,...] 
	values('值','值''值',...)
	例如:
	insert into Student(StudentNo,StudentName,Age)
	value('S122020','小源',19)
	
	--2.简写 省略列名,列表数量和表中的值以及数据类型必须一致,自增列除外
	语法:
	insert 表名
	values('值','值','值',...)
	例如:
	insert Student
	value('S122020','小源',19)
	

  1.2 插入多条数据

	
	--1.使用 insert union 插入多行数据 (多行插入)
	--最后一行不用写 union
	语法:
	insert [into] 表名[字段,字段,字段,...]
	select '字段','字段','字段',... union
	select '字段','字段','字段',... union
	select '字段','字段','字段',... 			
	例如:
	insert into Student(StudentNo,StudentName,Age)
	select 'S122020','小源',19 union
	select 'S122021','小红',18 union
	select 'S122022','小洋',18 				
	
	--2.使用 insert select 插入多行数据 (选择插入)
	--从指定表中选出指定数据,插入到新表中,新表必须提前创建好,并且数据类型必须一直
	语法: 
	insert [into] 新表名[字段,字段,字段,...]
	select 字段,字段,字段,...	-			
	from 原表名								
	例如:
	insert into Address_IS(SName,Phone,Address)
	select StudentName,Phone,Address
	from Student
	
	--3.使用 select into 插入多行数据 (生成表插入)
	--从指定表中选择指定数据,不需要创建表,系统会自动生成一个新表
	语法:
	select 字段,字段,字段,...				
	into 新表名								
	from 原表名							
	例如:
	select StudentName,Phone
	into Address_SI
	from Student
	

二. 删除数据

	两种删除方式的区别:
	1.truncate删除数据后,标识列会从新标记
	  delete删除数据后,标识列不会从新标记
	2.truncatedelete删除时运行数据快
	3.truncate删除数据后不能恢复,一般情况下不会使用

  2.1 使用delete删除数据

	
	/*
	 * 注意事项:1.不带where条件,会删除所有数据
	 * 			 2.删除时须遵循,先删除从表中数据,在删除主表主数据
	 */
	
	--使用delete from 删除数据
	语法:
	delete from 表名
	[where 删除条件]
	例如:
	--带条件删除一行数据
	delete from Student
	where StudentName='小源'
	--不带条件删除所有数据
	delete from Student
	

  2.2 使用truncate结构删除

	
	/*
 	 * 注意事项:1.不能用于有外键约束引用的表
 	 * 			2.结构删除不能带条件
 	 */
	--使用truncate table 删除所有数据
	语法:
	truncate table 表名
	例如:
	truncate table Student

三. 更新数据

  3.1 使用update更新数据

	
	/*
	 * 注意事项: 1.如果不添加条件会更新所有数据
	 * 			 2.在更新数据时,最好添加上where条件
	 * 底层原理: 底层有个临时表 inserted、deleted分别存储临时的更新删除信息 
	 * 修改原理 == 先删除后添加 
	*/
	
	--使用 update 更新数据
	语句: 
	update 表名
	set=更新值,=更新值,...
	[where 更新条件]
	例如:
	--不带条件会更新所有数据
	update Student
	set Sex='男'
	--待条件会更新满足条件的数据
	update Student
	set Sex='女'
	where StudentName='小源'
	
发布了25 篇原创文章 · 获赞 24 · 访问量 4583

猜你喜欢

转载自blog.csdn.net/qq_43636251/article/details/105477136