本文介绍了“mysql如何增加字段的价值”的知识。很多人在实际案例的操作中会遇到这样的困难。接下来,让边肖带领大家学习如何应对这些情况!希望大家认真阅读,学点东西!
在mysql中,可以使用INSERT语句来增加字段的值。语法为“插入表名字段名称值;”或者“INSERT INTO表名SET字段名1=值1,字段名2=值2,…”。
本教程的操作环境:windows7系统,mysql8版本,戴尔G3电脑。
在mysql中,可以使用INSERT语句来增加字段的值。
INSERT语句可以将一行或多行元组数据插入到数据库的现有表中。
INSERT语句有两种语法形式,即INSERT…VALUES语句和INSERT…SET语句。
1) INSERT…VALUES语句
INSERTVALUES的语法格式为:
INSERTINTO表名[字段名1[,…字段名n]]
VALUES(值1)[……,(值n)];语法解释如下。
表名:指定正在操作的表的名称。
字段名:指定需要插入数据的字段名。如果将数据插入到表中的所有字段中,则可以省略所有字段名称,并且可以直接使用insert表名称VALUES(…)。
VALUES或VALUE子句:该子句包含要插入的数据列表。列表中数据的顺序应该对应于列的顺序。
2) INSERT…SET语句
语法格式为:
INSERTINTO表名
设置字段名1=值1,
字段名2=值2,
……此语句用于直接为表中的某些列指定对应的列值,即在SET子句中指定要插入的数据的列名,col_name为指定的列名,等号后面跟指定的数据,而对于未指定的列,则指定列值为列的默认值。
从INSERT语句的两种形式可以看出:
使用INSERT…VALUES语句将一行数据或多行数据插入表中;
使用INSERT…SET语句指定插入行或某些列中每一列的值;
INSERT…SELECT语句将其他表中的数据插入表中。
使用INSERT…SET语句将一些列的值插入到表中,这样更灵活。
INSERT…VALUES语句可以一次插入多条数据。
在MySQL中,用一条insert语句处理多个INSERT比使用多条INSERT语句要快。
当单个INSERT语句用于插入多行数据时,只需将每行数据括在括号中。
向表中的全部字段添加值
将值插入表中所有字段的方法有两种:一种是指定所有字段名称;另一种是根本不指定字段名。
【实例 1】在tb_courses表中插入了一个新记录,课程id值为1,课程名称值为“网络”,课程等级值为3,信息值为“计算机网络”。
在执行插入操作之前,检查tb_courses表的SQL语句,执行结果如下。
mysqlSELECT * FROMtb _ courses
empty set(0.00秒)查询结果显示当前表内容为空,没有数据。接下来,执行插入数据的操作。输入的SQL语句和执行过程如下。
mysqlnbsp
;INSERT INTO tb_courses
-> (course_id,course_name,course_grade,course_info)
-> VALUES(1,'Network',3,'Computer Network');
Query OK, 1 rows affected (0.08 sec)
mysql> SELECT * FROM tb_courses;
+-----------+-------------+--------------+------------------+
| course_id | course_name | course_grade | course_info |
+-----------+-------------+--------------+------------------+
| 1 | Network | 3 | Computer Network |
+-----------+-------------+--------------+------------------+
1 row in set (0.00 sec)
可以看到插入记录成功。在插入数据时,指定了 tb_courses 表的所有字段,因此将为每一个字段插入新的值。
INSERT 语句后面的列名称顺序可以不是 tb_courses 表定义时的顺序,即插入数据时,不需要按照表定义的顺序插入,只要保证值的顺序与列字段的顺序相同就可以。
【实例 2】在 tb_courses 表中插入一条新记录,course_id 值为 2,course_name 值为“Database”,course_grade 值为 3,info值为“MySQL”。输入的 SQL 语句和执行结果如下所示。
mysql> INSERT INTO tb_courses -> (course_name,course_info,course_id,course_grade) -> VALUES('Database','MySQL',2,3); Query OK, 1 rows affected (0.08 sec) mysql> SELECT * FROM tb_courses; +-----------+-------------+--------------+------------------+ | course_id | course_name | course_grade | course_info | +-----------+-------------+--------------+------------------+ | 1 | Network | 3 | Computer Network | | 2 | Database | 3 | MySQL | +-----------+-------------+--------------+------------------+ 2 rows in set (0.00 sec)
使用 INSERT 插入数据时,允许列名称列表 column_list 为空,此时值列表中需要为表的每一个字段指定值,并且值的顺序必须和数据表中字段定义时的顺序相同。
【实例 3】在 tb_courses 表中插入一条新记录,course_id 值为 3,course_name 值为“Java”,course_grade 值为 4,info 值为“Jave EE”。输入的 SQL 语句和执行结果如下所示。
mysql> INSERT INTO tb_courses -> VLAUES(3,'Java',4,'Java EE'); Query OK, 1 rows affected (0.08 sec) mysql> SELECT * FROM tb_courses; +-----------+-------------+--------------+------------------+ | course_id | course_name | course_grade | course_info | +-----------+-------------+--------------+------------------+ | 1 | Network | 3 | Computer Network | | 2 | Database | 3 | MySQL | | 3 | Java | 4 | Java EE | +-----------+-------------+--------------+------------------+ 3 rows in set (0.00 sec)
INSERT 语句中没有指定插入列表,只有一个值列表。在这种情况下,值列表为每一个字段列指定插入的值,并且这些值的顺序必须和 tb_courses 表中字段定义的顺序相同。
注意:虽然使用 INSERT 插入数据时可以忽略插入数据的列名称,若值不包含列名称,则 VALUES 关键字后面的值不仅要求完整,而且顺序必须和表定义时列的顺序相同。如果表的结构被修改,对列进行增加、删除或者位置改变操作,这些操作将使得用这种方式插入数据时的顺序也同时改变。如果指定列名称,就不会受到表结构改变的影响。
向表中指定字段添加值
为表的指定字段插入数据,是在 INSERT 语句中只向部分字段中插入值,而其他字段的值为表定义时的默认值。
【实例 4】在 tb_courses 表中插入一条新记录,course_name 值为“System”,course_grade 值为 3,course_info 值为“Operating System”,输入的 SQL 语句和执行结果如下所示。
mysql> INSERT INTO tb_courses -> (course_name,course_grade,course_info) -> VALUES('System',3,'Operation System'); Query OK, 1 rows affected (0.08 sec) mysql> SELECT * FROM tb_courses; +-----------+-------------+--------------+------------------+ | course_id | course_name | course_grade | course_info | +-----------+-------------+--------------+------------------+ | 1 | Network | 3 | Computer Network | | 2 | Database | 3 | MySQL | | 3 | Java | 4 | Java EE | | 4 | System | 3 | Operating System | +-----------+-------------+--------------+------------------+ 4 rows in set (0.00 sec)
可以看到插入记录成功。如查询结果显示,这里的 course_id 字段自动添加了一个整数值 4。这时的 course_id 字段为表的主键,不能为空,系统自动为该字段插入自增的序列值。在插入记录时,如果某些字段没有指定插入值,MySQL 将插入该字段定义时的默认值。
“mysql如何增加字段的值”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/144622.html