首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >插入到而不是写入数据库?

插入到而不是写入数据库?
EN

Stack Overflow用户
提问于 2011-04-15 00:02:05
回答 5查看 111关注 0票数 1

我正在尝试将信息写入db表,但它根本不起作用。我已经弄了好几个小时了。也许如果有人看一下代码,他们会发现我遗漏了什么。

我的逻辑是它连接到db服务器,打开数据库mydb,转到表mod,写入id、fname和lname,然后关闭连接。

另外,id被设置为auto_increment。据我所知,它应该可以工作,但它没有。

代码语言:javascript
运行
复制
$con = mysql_connect("localhost","user","pass");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

mysql_select_db('mydb', $con);

//assign
$query = "INSERT INTO 'mod' (id, fname, lname) VALUES ('', 'bill', 'smith')";
if (!$query){ 
dir ("Unable to create the record:" . mysql_error()); 
exit; 
}
mysql_query($query);
mysql_close($con);
EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2011-04-15 00:08:11

您在引用表名时犯了错误。它应该是`mod`` instead of 'mod'. i.e反引号而不是‘单引号’。

第二个错误是你的dir的dir的statement...instead,它应该是di...

代码语言:javascript
运行
复制
INSERT INTO `mod` (id, fname, lname) VALUES ('', 'bill', 'smith');

下一步,你也可以跳过插入id字段的值,它是自动递增的

所以它可以是

代码语言:javascript
运行
复制
INSERT INTO `mod` (fname, lname) VALUES ('bill', 'smith');
票数 0
EN

Stack Overflow用户

发布于 2011-04-15 00:03:58

'mod‘前后不应该有引号

//编辑:

此外,if (!query)部件在这一时刻也不是很有用,因为它检查的是字符串,而不是结果。您应该检查mysql_query()的结果,如果失败,您应该输出一条错误消息。

票数 1
EN

Stack Overflow用户

发布于 2011-04-15 00:04:10

将您的查询更改为:

代码语言:javascript
运行
复制
$query = "INSERT INTO mod (fname, lname) VALUES ('bill', 'smith')";

您的自动增量id将由数据库自动添加。

更新

您的错误代码应如下所示:

代码语言:javascript
运行
复制
$query = "INSERT INTO mod (fname, lname) VALUES ('bill', 'smith')";
$result = mysql_query($query);
if (!$result) {
    die('Invalid query: ' . mysql_error());
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5666092

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档