使用此查询时:
INSERT INTO order (order_quantity)
VALUES ('50')
Run Code Online (Sandbox Code Playgroud)
我收到一个错误:
您的SQL语法有错误; 查看与您的MariaDB服务器版本对应的手册,以便在第146行的'order(order_quantity)VALUES('50')附近使用正确的语法
我的查询有什么问题?
建议不要将保留字用作数据库,表,列,变量或其他对象名称.如果您希望使用保留字在ANSI标准语法中用作对象名,则必须将其括在双引号中以允许关系引擎(无论哪一个)将该单词用作对象而不是给定上下文中的关键字.
以下是一些特定于不同SQL引擎的示例:
order是一个SQL关键字,用于排序结果(ORDER BY ...)
如果您使用的是MySQL或Maria DB,请在其周围包裹反引号
INSERT INTO `order` (order_quantity) VALUES ('50');
Run Code Online (Sandbox Code Playgroud)
如果您使用的是MS SQL Server,请在其周围括起括号
INSERT INTO [order] (order_quantity) VALUES ('50');
Run Code Online (Sandbox Code Playgroud)
如果你使用的是pgSQL,请用它包围双引号
INSERT INTO "order" (order_quantity) VALUES ('50');
Run Code Online (Sandbox Code Playgroud)
在示例中,没有(但常识)阻止您创建以具有列INSERT的表命名的数据库INTOVALUE(42)
是的,这个查询有效:
USE [INSERT];
SELECT [INTO].[VALUE(42)] FROM [INTO];
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
554 次 |
| 最近记录: |