SQL server 管理表数据

Posted CG_G

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL server 管理表数据相关的知识,希望对你有一定的参考价值。

管理表数据

关系数据库的基本操作就是增删改查,即CRUD:Create、Retrieve、Update、Delete。其中,对于查询,我们已经详细讲述了SELECT语句的详细用法。

而对于增、删、改,对应的SQL语句分别是:

  • INSERT:插入新记录;
  • UPDATE:更新已有记录;
  • DELETE:删除已有记录。

我们将分别讨论这三种修改数据的语句的使用方法。

1. INSERT

当我们需要向数据库表中插入一条新记录时,就必须使用INSERT语句。

技术图片

INSERT语句的基本语法是:

INSERT INTO <表名> (字段1, 字段2, ...) 
VALUES (值1, 值2, ...);

例如,我们向students表插入一条新记录,先列举出需要插入的字段名称,然后在VALUES子句中依次写出对应字段的值:

-- 添加一条新记录
INSERT INTO students (class_id, name, gender, score) VALUES (2, ‘大牛‘, ‘M‘, 80);
-- 查询并观察结果:
SELECT * FROM students;

如果一个字段有默认值,那么在INSERT语句中可以不出现。

要注意,字段顺序不必和数据库表的字段顺序一致,但值的顺序必须和字段顺序一致。也就是说,可以写INSERT INTO students (score, gender, name, class_id) ...,但是对应的VALUES就得变成(80, ‘M‘, ‘大牛‘, 2)

还可以一次性添加多条记录,只需要在VALUES子句中指定多个记录值,每个记录是由(...)包含的一组值:

-- 一次性添加多条新记录
INSERT INTO students (class_id, name, gender, score) VALUES
  (1, ‘大宝‘, ‘M‘, 87),
  (2, ‘二宝‘, ‘M‘, 81);

SELECT * FROM students;

小结

使用INSERT,我们就可以一次向一个表中插入一条或多条记录。

2. UPDTAE

如果要更新数据库表中的记录,我们就必须使用UPDATE语句。

技术图片

UPDATE语句的基本语法是:

UPDATE <表名> SET 字段1=值1, 字段2=值2, ... WHERE ...;

例如,我们想更新studentsid=1的记录的namescore这两个字段,先写出UPDATE students SET name=‘大牛‘, score=66,然后在WHERE子句中写出需要更新的行的筛选条件id=1

-- 更新id=1的记录
UPDATE students SET name=‘大牛‘, score=66 WHERE id=1;
-- 查询并观察结果:
SELECT * FROM students WHERE id=1;

UPDATE语句的WHERE条件和SELECT语句的WHERE条件其实是一样的,因此完全可以一次更新多条记录:

-- 更新id=5,6,7的记录
UPDATE students SET name=‘小牛‘, score=77 WHERE id>=5 AND id<=7;
-- 查询并观察结果:
SELECT * FROM students;

UPDATE语句中,更新字段时可以使用表达式。例如,把所有80分以下的同学的成绩加10分:

-- 更新score<80的记录
UPDATE students SET score=score+10 WHERE score<80;
-- 查询并观察结果:
SELECT * FROM students;

其中,SET score=score+10就是给当前行的score字段的值加上了10。

如果WHERE条件没有匹配到任何记录,UPDATE语句不会报错,也不会有任何记录被更新。

最后,要特别小心的是,UPDATE语句可以没有WHERE条件,例如:

UPDATE students SET score=60;

这时,整个表的所有记录都会被更新。所以,在执行UPDATE语句时要非常小心,最好先用SELECT语句来测试WHERE条件是否筛选出了期望的记录集,然后再用UPDATE更新。

小结

使用UPDATE,我们就可以一次更新表中的一条或多条记录。

3.DELETE

如果要删除数据库表中的记录,我们可以使用DELETE语句。

技术图片

DELETE语句的基本语法是:

DELETE FROM <表名> WHERE ...;

例如,我们想删除students表中id=1的记录,就需要这么写:

-- 删除id=1的记录
DELETE FROM students WHERE id=1;
-- 查询并观察结果:
SELECT * FROM students;

DELETE语句的WHERE条件也是用来筛选需要删除的行,因此和UPDATE类似,DELETE语句也可以一次删除多条记录:

-- 删除id=5,6,7的记录
DELETE FROM students WHERE id>=5 AND id<=7;
-- 查询并观察结果:
SELECT * FROM students;

如果WHERE条件没有匹配到任何记录,DELETE语句不会报错,也不会有任何记录被删除。

最后,要特别小心的是,和UPDATE类似,不带WHERE条件的DELETE语句会删除整个表的数据:

DELETE FROM students;

这时,整个表的所有记录都会被删除。所以,在执行DELETE语句时也要非常小心,最好先用SELECT语句来测试WHERE条件是否筛选出了期望的记录集,然后再用DELETE删除

小结

使用DELETE,我们就可以一次删除表中的一条或多条记录。

以上是关于SQL server 管理表数据的主要内容,如果未能解决你的问题,请参考以下文章

SQL server 管理表数据

sqlserver用管理器建表后如何查看创建表的语句?谢谢!!

sqlserver用管理器建表后如何查看创建表的语句?谢谢!!

缺少 SQL SERVER 2014 代码片段

用sql server 建了一个表,可是查询此表时怎莫说不存在呢?

如何利用SQLserver创建表