当前位置: 首页 > article >正文

数据表记录

目录

一、数据表记录的插入

(1)向数据表中插入单条记录

(2)向数据表中插入多条记录

二、数据表记录的修改

三、数据表记录的删除

(1)使用DELETE删除数据

(2)使用TRUNCATE清空数据


一、数据表记录的插入

通过SQL语句向数据表中插入新的数据可以使用INSERT语句,语法格式如下:
INSERT [INTO]表名[(字段名列表)]
VALUES ( { DEFAULT | NULL | 值 }[,…n] );

①INTO:用在INSERT关键字与要插入数据的表名之间的关键字,可写可不写。
②字段名列表:指定要插入数据的字段名,可写可不写。如果不写字段名,表示要向表中的所有字段插入数据;如果写部分字段名,表示只为指定的字段插入数据,多个字段名之间用逗号隔开。
③{DEFAULT | NULL | 值}:大括号括起来的多个选项,表示必须选择其中之一。其中:
DEFAULT:表示为某字段插入指定的默认值。NULL:表示为某字段插入空值。值:表示为某
字段指定一个具有数据值的变量或表达式。

注意
向CHAR、VARCHAR、DATE类型的字段插入数据时,字段值要用英文半角单引
号括起来。

(1)向数据表中插入单条记录

 

【例4-1】用INSERT语句为“学生选课”数据库中的studentinfo表添加一条记录:学号是10101001,姓名是张永峰,性别是男,出生年月是1993年8月1日,所在班级是电子商务101。
SQL语句:
INSERT INTO studentinfo (sno, sname, sgender, sbirth, sclass)
VALUES('10101001','张永峰’,’男’,’1993-8-1’,’电子商务101');

注意上述语句为数据表studentinfo的所有字段都指定了值,所以可以简写为如下语句:
INSERT INTO studentinfo
VALUES('10101001',’张永峰’,’男’,’1993-8-1’,’电子商务101');

【例4-2】用INSERT语句向“学生选课”数据库中studentinfo表添加另一条记录;学号是
10101002,姓名是何小丽,性别是女。SQL语句如下:
INSERT INTO studentinfo (sno, sname, sgender)
VALUES('10101002’,’何小丽’,’女’);

注意使用INSERT语句为部分字段添加值时,必须要在表名后写明为哪些字段添加值。表名后的字段名顺序可以与表中定义的字段顺序不一致,但需要与VALUES语句后面值的顺序一致。

(2)向数据表中插入多条记录

有的时候,需要一次性向表中插入多条记录。MySQL提供了使用一条INSERT语句
同时添加多条记录的功能。其语法格式如下:
INSERT [INTO]表名[(字段名列表)]
VALUES(值列表),(值列表).......,(值列表);

【例4-3】用INSERT语句为“学生选课”数据库中的studentinfo表添加两条记录:第一条记录学号是10102001,姓名是王斌,性别是男,出生日期是“1991-7-14"所在班级是“网络技术101”;第二条记录学号是10102003,姓名是孙平平,性别是女,出生日期是“1992-2-27”,所在班级是“网络技术101”。SQL语句如下:
INSERT INTO studentinfo
VALUES('10102001',’王斌’,’男’,’1991-7-14’,’网络技术101'),('1010
2003',孙平’,’女’,’1992-2-27',’网络技术101');

注意:
·INSERT语句成功执行后,可以通过查询语句查看数据是否添加成功。
·在添加多条记录时,可以不指定字段名列表,只需要保证VALUES语句后面的值是依照字段在表中定义的顺序排列的即可。

·和添加单条记录一样,如果不指定字段名,必须为所有字段添加数据,如果指定了字段名,只需要为指定的字段添加数据即可。

二、数据表记录的修改

MySQL中可以使用UPDATE语句来实现数据表记录的修改,语法格式如下:
UPDATE 表名
SET 字段名=value [,…]
[WHERE条件表达式];

①value:为指定的字段赋予新值。新值可以是表达式或数据。
②WHERE条件表达式:指定要修改记录的条件,可写可不写。如果不写条件,则表示要将所
有记录指定字段的值修改成新的值;若写了条件,则只修改满足条件的记录的指定字段。
注意:修改表记录时,需要注意表的唯一性约束和表与表之间的外键约束,否则
可能会出现修改时报错的情况。

【例4-4】在“学生选课”数据库中,把studentinfo表中sclass字段的值改为计算机。
SQL语句如下:
UPDATE studentinfo
SET sclass='计算机’;

【例4-5】在“学生选课”数据库中,把studentinfo表中孙平的出生日期改为1993年
8月21日。SQL语句如下:
UPDATE studentinfo SET sbirth='1993-8-21 WHERE sname='孙平’;

三、数据表记录的删除


(1)使用DELETE删除数据

MySQL中可以使用DELETE语句来实现数据表记录的删除,其语法格式如下:
DELETE [FROM]表名
[WHERE条件表达式];

注意删除表记录的时候,需要注意表与表之间的外键约束,否则可能会出现删除时报错的情况。·
WHERE条件表达式:指定表中要删除记录的条件,可写可不写。如果不写条件,则
表示要清空指定的数据表;若写了条件,则只将满足条件的记录删除

【例4-6】在“学生选课”数据库中,删除张永峰同学的基本信息。SQL语句如下:
DELETE FROM studentinfo
WHERE sname='张永峰’;

【例4-7】在“学生选课”数据库中,删除数据表studentinfo中的所有记录。SQL语句
如下:
DELETE FRON studentinfo;


(2)使用TRUNCATE清空数据


在MySQL数据库中,还有一种方式可以删除表中所有的记录,这种方式需要用到
TRUNCATE语句,其语法格式如下:
TRUNCATE [TABLE]表名;
使用TRUNCATE语句清空数据表非常简单。例4-7也可以使用TRUNCATE语句来实
现。SQL语句如下:
TRUNCATE TABLE studentinfo;

注意:
TRUNCATE语句和DETELE语句都能删除表中的所有数据,但两者也有一定的区别,
下面对两者的区别进行说明:
①DELETE语句是DML语句,TRUNCATE语句通常被认为是DDL语句。
②DELETE语句后面可以跟WHERE子句,通过指定WHERE子句中的条件表达式可以只删除满足条件的部分记录,而TRUNCATE语句只能删除表中的所有记录,不能加WHERE子句。
③使用TRUNCATE语句清空数据表后,AUTO_INCREMENT计数器会被重置为初始值。
而使用DELETE语句清空数据表后,AUTO_INCREMENT计数器不会恢复为初始值。

本章小结
使用SQL语句对表中记录进行操作,包括添加记录、更新记录、删除记录。向表中添加记录时用INSERT语句,更新表中的记录时用UPDATE语句,删除表中的记录时用DELETE语句。清空数据表可以使用DELETE语句或者TRUNCATE语句。


http://www.kler.cn/a/539524.html

相关文章:

  • C++20新特性
  • DeepSeek从入门到精通教程PDF清华大学出版
  • React受控组件的核心原理与实战精要
  • [ Spring ] Integrate Spring Boot Service Monitor Prometheus and Grafana
  • elasticsearch实战三 elasticsearch与mysql数据实时同步
  • Postman接口测试:postman设置接口关联,实现参数化
  • Nginx配置 ngx_http_proxy_connect_module 模块及安装
  • 加速汽车软件升级——堆栈刷写技术的应用与挑战
  • go语言文件和目录
  • RuoYi-Vue-Oracle的oracle driver驱动配置问题ojdbc8-12.2.0.1.jar的解决
  • 用jit部分python函数效率过低的问题
  • java: framework from BLL、DAL、IDAL、MODEL、Factory using oracle
  • HTML之CSS三大选择器
  • 110,【2】攻防世界 web mfw
  • ScrapeGraphAI颠覆传统网络爬虫技术
  • 未来科技趋势浅析
  • scss模块化
  • 如何用.NET Core Identity实现定制化的用户身份验证系统
  • Vue 响应式渲染 - 条件渲染
  • PHP-综合3
  • PrimeFaces Poll组件实现周期性Ajax调用
  • S4 HANA金税接口
  • STM32的HAL库开发---高级定时器---互补输出带死区实验
  • 集成开发环境GoLand安装配置结合内网穿透实现ssh远程访问服务器
  • Stable Diffusion室内设计文生图实操
  • 5.【BUUCTF】[RoarCTF 2019]Easy Calc1