mysql:使用 INSERT INTO...SET 填充表时出现错误 1054

发布于 2024-12-19 03:47:41 字数 806 浏览 1 评论 0原文

尝试使用 phpacademy 的教程创建一个博客,当我使用 php 在我的 mysql 中添加类别名称时遇到了问题(在此视频中 https://www.youtube.com/watch?v=JBcXMVjk83Q)

作者使用此代码来放置 )

function add_category($name) {
$name = mysql_real_escape_string($name);

mysql_query("INSERT INTO `categories` VALUES `name` = `{$name}`");

但它对我不起作用(我正在使用 PHP 版本 5.3.3-7 和版本 14.14 Distrib 5.1.49 在 debian squeeze 上测试它

我正在正确连接到 mysql 和数据库,但我们通过命令行直接在 mysql 中尝试查询,出现以下错误:

ERROR 1054 (42S22): Unknown column 'uncategorized' in 'field list'

然后我注意到使用此查询正在工作:

INSERT INTO categories(name)VALUES('uncategorized');

但我想知道是否有办法使用与作者使用的相同的方法,以及它是否比我发现有效的选项更好、更安全、更快(或任何其他)。

谢谢!

tryin go to create a blog using the tutorials of phpacademy, I ran under a problem when it came to add a category name in my mysql using php (in this video https://www.youtube.com/watch?v=JBcXMVjk83Q)

The author is using this code to put the name of the category into the categories table:

function add_category($name) {
$name = mysql_real_escape_string($name);

mysql_query("INSERT INTO `categories` VALUES `name` = `{$name}`");

}

But it didn't work for me (I am testing it on debian squeeze with PHP Version 5.3.3-7 and Ver 14.14 Distrib 5.1.49).

I am connecting to mysql and to the database correctly but we trying the query directly in mysql via the command line, I have the following error:

ERROR 1054 (42S22): Unknown column 'uncategorized' in 'field list'

I then noticed that using this query was working:

INSERT INTO categories(name)VALUES('uncategorized');

but I wanted to know if there was a way to use the same method as the author used and if it was better, more secure, quicker (or what so ever) than the option that I found to be working.

Thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

娇妻 2024-12-26 03:47:41

您在这里使用了错误的引号:

mysql_query("INSERT INTO `categories` VALUES `name` = `{$name}`");

使用单引号:

mysql_query("INSERT INTO `categories` VALUES `name` = '{$name}'");

单引号框架数据,而反引号 ` 用于标记数据库元素 - 表、列等。

You use wrong quotes here:

mysql_query("INSERT INTO `categories` VALUES `name` = `{$name}`");

Use single quotes:

mysql_query("INSERT INTO `categories` VALUES `name` = '{$name}'");

Single quotes frame data, while backticks ` are used to mark database elements - tables, columns, etc.

三生池水覆流年 2024-12-26 03:47:41

你可以这样做

mysql_query("INSERT INTO categories(name) VALUES('$name')");

You can do like this

mysql_query("INSERT INTO categories(name) VALUES('$name')");
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文