INSERT INTO 语句用于向数据库表中插入新的行,下面是详细的解释和示例:
语法结构
INSERT INTO table_name (column1, column2, column3, ...) VALUES (value1, value2, value3, ...);
table_name
: 要插入数据的表名。
(column1, column2, column3, ...)
: 可选,指定要插入数据的列名,如果不指定列名,则必须为表中的所有列提供值。
VALUES (value1, value2, value3, ...)
: 必需,指定要插入的值,每个值对应一个列。
示例
假设我们有一个名为students
的表,包含以下字段:id
,name
,age
,grade
。
插入单个记录
INSERT INTO students (id, name, age, grade) VALUES (1, 'John Doe', 18, 'A');
插入多个记录
INSERT INTO students (id, name, age, grade) VALUES (2, 'Jane Smith', 19, 'B'), (3, 'Tom Johnson', 20, 'C');
插入所有列的值(不指定列名)
INSERT INTO students VALUES (4, 'Alice Brown', 21, 'A');
注意:当插入的数据长度超过列定义的长度时,MySQL会根据列的定义截断数据,如果插入的数据类型与列的类型不匹配,MySQL会尝试进行转换,如果无法转换,将抛出错误。
表名 | 列名1 | 列名2 | 列名3 | INSERT INTO 语句示例 |
Employees | ID | Name | Age | INSERT INTO Employees (ID, Name, Age) VALUES (1, ‘John Doe’, 30); |
Products | ProductID | ProductName | Price | INSERT INTO Products (ProductID, ProductName, Price) VALUES (1001, ‘Laptop’, 999.99); |
Orders | OrderID | CustomerID | OrderDate | INSERT INTO Orders (OrderID, CustomerID, OrderDate) VALUES (2001, 101, ‘20230401’); |
Students | StudentID | Name | Grade | INSERT INTO Students (StudentID, Name, Grade) VALUES (3001, ‘Alice’, ‘A’); |
Cars | CarID | Model | Year | INSERT INTO Cars (CarID, Model, Year) VALUES (4001, ‘Toyota Corolla’, 2020); |
上述示例中的表名、列名和值都是假设的,实际使用时应根据实际数据库结构和数据类型进行调整,在实际的INSERT INTO
语句中,列名可以省略,但值必须与表中的列一一对应,除非指定了列名。
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1181703.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复