SQL Server 插入数据17 Mar 2025 | 4 分钟阅读 SQL Server 中的 INSERT 语句用于在指定数据库中的表中添加记录。SQL Server 在单个查询中以两种方式执行插入操作
语法以下 INSERT INTO 命令语法允许我们在表中添加单行 参数解释上述语法的参数说明如下
注意:列名是可选的。 但是,如果我们想指定部分值,我们需要强制指定其名称。 它还确保列名和值及其位置应该相同。如果我们想在单个命令中插入多个记录,我们可以使用以下语法 SQL Server 会自动将这些值添加到表中存在的列,但不会出现在 INSERT 命令的列列表中
SQL Server 插入数据示例让我们借助多个示例来了解 INSERT 语句在 SQL Server 中的工作方式。 首先,我们将使用以下命令在数据库中创建一个表“Student” 让我们按如下方式将数据插入到此表中 1. 如果我们要存储所有字段的单个记录,请使用以下语法 在这里,我们没有指定 Id column,因为它具有自动插入数字数据并递增每行的标识属性。 但是,如果我们插入所有列的数据,则可以有选择地指定列名。 因此,INSERT 语句也可以写成 我们可以使用 SELECT 语句验证数据 ![]() 2. SQL Server 还允许用户在单个语句中插入多个记录。 以下命令同时插入三个记录 验证数据将显示以下输出 ![]() 3. 有时,我们希望存储记录而不给出所有列的名称。 在这种情况下,我们可以使用以下语句,其中我们只指定部分字段。 所有未指定的字段将添加 NULL 值,标识列除外。 该语句已成功执行。 验证数据将显示以下输出 ![]() INSERT 与 SELECT 语句SQL Server 还允许我们使用 INSERT INTO SELECT 语句将记录从一个表插入到另一个表。 假设我们要将 'Student' 表数据插入到 'Student_info' 中。 我们可以使用以下语句来实现 该语句已成功执行。 验证数据将显示以下输出 ![]() 要阅读更多信息,请点击此处。 如何插入并返回插入的值?SQL Server 提供了 OUTPUT 子句,用于捕获插入到定义的表中的值。 我们可以使用以下语句来解释这个概念,该语句将新记录插入到 'Student' 表中并返回 'Marks' 列的插入值 这是输出 ![]() 如果我们想从多个列中捕获插入的值,我们需要在输出中指定列,如下所示 这是输出 ![]() 如何将显式值插入到标识列中?我们知道 SQL Server 不会显式指定标识列的值,因为它们会自动为此列提供值。 如果我们尝试这样做,我们会收到以下错误消息 "当 IDENTITY_INSERT 设置为 OFF 时,无法为表 'student' 中的标识列插入显式值。" 但是,SQL Server 允许在某些情况下显式地将值插入到标识列中,例如数据迁移。 我们可以在将值插入到标识列之前执行以下语句来实现 让我们执行以下语句,以便在 Student 表中插入标识列的值 执行此语句后,我们可以看到该语句已正确执行。 ![]() 现在,我们可以执行以下语句来关闭身份插入 本文有助于全面了解 SQL Server 中用于将新行添加到现有表中的 INSERT 语句。 下一个主题SQL Server 更新数据 |
我们请求您订阅我们的新闻通讯以获取最新更新。