SQLSERVER:插入、更新、删除操作

示例数据表 – Employees假设我们有一个名为 Employees 的表,它包含了员工的ID、姓名、职位和薪资信息。表的结构和初始内容如下:Employe

大家好,感谢邀请,今天来为大家分享一下SQLSERVER:插入、更新、删除操作的问题,以及和的一些困惑,大家要是还不太明白的话,也没有关系,因为接下来将为大家分享,希望可以帮助到大家,解决大家的问题,下面就开始吧!

姓名

位置

薪水

1

约翰

开发商

55000

2

设计师

62000

3

罗伯特

经理

48000

表结构

CREATE TABLE Members (EmployeeID INT PRIMARY KEY, Name NVARCHAR(100), Position NVARCHAR(100), Salary DECIMAL(10, 2));测试数据

INSERT INTO 员工(员工ID、姓名、职位、薪资)VALUES(1, ‘John’, ‘开发人员’, 55000),(2, ‘Jane’, ‘设计师’, 62000),(3, ‘Robert’, ‘经理’, 48000);

INSERT操作

INSERT 语句用于向表中添加新记录。其基本语法如下:

INSERT INTO table_name (列1, 列2, 列3,)VALUES (值1, 值2, 值3,);

添加新记录

假设我们要向Employees 表中添加一个新员工,名为Alice,职位为Analyst。工资是5万。

INSERT INTO 员工(员工ID、姓名、职位、薪水)VALUES (4, ‘Alice’, ‘Analyst’, 50000);执行后,Employees表的内容将变为:

员工编号

姓名

位置

薪水

1

约翰

开发商

55000

2

设计师

62000

3

罗伯特

经理

48000

4

爱丽丝

分析师

50000

Insert 备份数据

您需要先创建EmployeeBackup表

INSERT INTO EmployeeBackup (EmployeeID, Name, Position, Salary)SELECT EmployeeID, Name, Position, SalaryFROM Members;

UPDATE操作

UPDATE 语句用于修改表中的现有记录。其基本语法如下:

UPDATE table_nameSET 列1=值1,列2=值2,WHERE 条件;

更新记录

假设我们需要给所有工资低于55,000的员工加薪5,000。我们可以使用UPDATE 语句来实现这一点。

UPDATE MembersSET Salary=Salary + 5000WHERE Salary 55000;执行后,Employees表的内容将更新为:

SQLSERVER:插入、更新、删除操作

员工编号

姓名

位置

薪水

1

约翰

开发商

55000

2

设计师

62000

3

罗伯特

经理

53000

4

爱丽丝

分析师

55000

跨表更新

测试数据

— 创建Employees表CREATE TABLEEmployees ( EmployeeID INT PRIMARY KEY, Name NVARCHAR(100), DepartmentID INT, Salary DECIMAL(10, 2)); — 创建Departments表CREATE TABLE Departments ( DepartmentID INT PRIMARY KEY, DepartmentName NVARCHAR(100 ), SalaryIncreasePercentage DECIMAL(5, 2));–将测试数据插入到Employees表中INSERT INTOEmployees (EmployeeID, Name, DepartmentID, Salary ) VALUES(1, ‘约翰·多伊’, 101, 50000.00),(2, ‘简·史密斯’, 102, 60000.00),(3, ‘爱丽丝·琼斯’, 101, 55000.00),(4, ‘布鲁斯·韦恩’, 103 , 70000.00);– 将测试数据插入到Departments 表中INSERT INTO Departments (DepartmentID, DepartmentName, SalaryIncreasePercentage) VALUES(101, ‘IT’, 5),(102, ‘HR’, 3),(103, ‘Finance’ , 4);现在,我们有两个表,其中包含员工和部门信息,以及我们想要应用的工资增长百分比。接下来,我们将执行跨表更新来增加IT 部门员工的工资。

— 更新IT 部门员工的工资UPDATEEmployeesSET Salary=Salary + (Salary * d.SalaryIncreasePercentage/100)FROMEmployees eINNER JOIN Departments d ON e.DepartmentID=d.DepartmentIDWHERE d.DepartmentName=’IT’;– 查询后更新员工表以查看更改SELECT * FROM 员工;在这个跨表更新操作中,我们首先指定要更新的表Employees,然后设置新的Salary值。该值是通过将原始工资与Departments 表中相应工资进行比较得到的。 SalaryIncreasePercentage 的计算方法是乘以并除以100。我们使用INNER JOIN 基于公共DepartmentID 字段来连接Members 表(使用别名e)和Departments 表(使用别名d)。 WHERE 子句确保仅更新DepartmentName 为IT 的部门员工的工资。

最后,我们执行SELECT 查询来检查员工表中的数据,以确保更新按预期进行。

DELETE操作

DELETE 语句用于从表中删除记录。其基本语法如下:

DELETE FROM table_nameWHERE 条件;

删除记录

假设罗伯特已经辞职,我们需要从员工表中删除他的记录。

DELETE FROMEmployeesWHEREName=’Robert’;执行后,Employees表的内容将变成:

员工编号

姓名

位置

薪水

1

约翰

开发商

55000

2

设计师

62000

4

爱丽丝

分析师

55000

Truncate 操作

— 创建示例表CREATE TABLE SampleData (ID INT PRIMARY KEY, Data NVARCHAR(100)); — 插入测试数据INSERT INTO SampleData (ID, Data) VALUES(1, ‘数据1’),(2 , ‘数据2’),(3, ‘数据3’);–使用TRUNCATE TABLE 清表TRUNCATE TABLE SampleData;–查询表中的数据,确认已被清除SELECT * FROM SampleData;执行TRUNCATE TABLE SampleData;之后,SampleData 表中的所有行都将被删除,并且该表将重置为空表状态。

用户评论

SQLSERVER:插入、更新、删除操作
爱到伤肺i

这篇博文讲解得很到位!插入、更新和删除数据是数据库中最基本的 CRUD 操作,掌握了这些技巧,做开发就变得更轻松了!

    有9位网友表示赞同!

SQLSERVER:插入、更新、删除操作
素婉纤尘

我觉得可以加入一些实际应用案例,比如结合具体的业务场景来说明如何使用 INSERT、UPDATE 和 DELETE 操作,会更生动形象。

    有18位网友表示赞同!

SQLSERVER:插入、更新、删除操作
凉笙墨染

我一直不太明白事务的概念,这篇博文中提到过,能详细解释一下吗?如果没理解,操作可能会出现问题吧。

    有15位网友表示赞同!

SQLSERVER:插入、更新、删除操作
孤街浪途

这篇文章写的简单易懂,即使是SQL SERVER新手也能看懂。对入门小伙伴来说非常有用!

    有16位网友表示赞同!

SQLSERVER:插入、更新、删除操作
┲﹊怅惘。

我之前用的 MySQL,现在要换成 SQL SERVER,感觉有些操作不太一样。还好这篇博文把 INSERT、UPDATE 和 DELETE 的区别说得清清楚楚。

    有17位网友表示赞同!

SQLSERVER:插入、更新、删除操作
有阳光还感觉冷

讲道理数据库操作这块挺重要的,特别是针对更新数据的方案,有时候没做好谨慎修改会造成数据丢失风险,这篇博文提醒了这一点。

    有14位网友表示赞同!

SQLSERVER:插入、更新、删除操作
我家的爱豆是怪比i

我觉得用代码示例来详细说明每个操作的语法,以及一些注意事项,比如插入失败的处理,更能提升这篇博文的实用性。

    有15位网友表示赞同!

SQLSERVER:插入、更新、删除操作
旧爱剩女

我感觉作者可能没有提到 SQL SERVER 的索引优化,这对于 INSERT、UPDATE 和 DELETE 操作效率非常重要呀!

    有18位网友表示赞同!

SQLSERVER:插入、更新、删除操作
坠入深海i

这段时间的项目里用了很多这些操作,这篇文章就挺时候的,让我回顾一下这些基本的概念。

    有17位网友表示赞同!

SQLSERVER:插入、更新、删除操作
你的眸中有星辰

这个标题写的有点简单啊,应该更直白清晰一些,比如 “深入浅出 SQL SERVER:INSERT、UPDATE 和 DELETE 操作指南”。

    有20位网友表示赞同!

SQLSERVER:插入、更新、删除操作
七级床震

虽然博文解释了三种操作,但能不能再详细一点数据库事务的操作呢?尤其是在批量更新数据的时候要注意的事项。

    有13位网友表示赞同!

SQLSERVER:插入、更新、删除操作
幸好是你

对于大型数据库来说,优化这些操作的效率是关键,这篇 博文应该多分享一些性能调优技巧。

    有10位网友表示赞同!

SQLSERVER:插入、更新、删除操作
嗯咯

作者讲 INSERT 操作的时候,可以再多加一些关于约束的讲解吗?比如唯一约束和外键约束对插入数据的限制。

    有15位网友表示赞同!

SQLSERVER:插入、更新、删除操作
三年约

我感觉这篇文章只是局限于 SQL 的语法,没有谈及其他数据库设计或管理方面的知识,希望下次博主能更全面点。

    有13位网友表示赞同!

SQLSERVER:插入、更新、删除操作
百合的盛世恋

这篇博文挺好用的,正好我在学习 SQL SERVER,帮我对基础操作有了一定的了解。建议作者在未来更新更多高级技巧!

    有19位网友表示赞同!

SQLSERVER:插入、更新、删除操作
眉黛如画

我一直觉得 INSERT 这样的操作代码写起来看着太简单了,实际应用中复杂性很大,比如需要插入很多数据的时候该如何去优化…

    有7位网友表示赞同!

SQLSERVER:插入、更新、删除操作
龙吟凤

博文说的INSERT ,UPDATE, DELETE 都说得不错。但我更关心的是如何测试这些操作的正确性和可靠性?

    有5位网友表示赞同!

原创文章,作者:小su,如若转载,请注明出处:https://www.sudun.com/ask/120609.html

(0)
小su's avatar小su
上一篇 2024年9月1日 下午1:16
下一篇 2024年9月1日 下午1:20

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注