首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果数据库为空,如何添加数据?

问如果数据库为空,如何添加数据?
EN

Stack Overflow用户
提问于 2013-01-22 09:49:41
回答 2查看 88关注 0票数 0

我试图在数据库中的一个名为ID的列中添加一个数字。应该发生的是,当数据库中没有数据时,这个脚本将插入ID编号为1的第一行,但问题是它无法工作。

我认为我对空数据的检查是一个问题,你们中的一个可以帮助我指出我应该做什么。

我的代码

代码语言:javascript
复制
<?php

/**
 * @author SiNUX
 * @copyright 2013
 */

include ('connect.php');

$lastId = mysql_query("SELECT ID FROM poiinfo");

$row = mysql_fetch_array($lastId);

if (is_null($row['ID'])){

    $nId = $row['ID'];
    $nId = 0;
    $nId = $nId++;

    $addId = "INSERT INTO poiinfo(`ID`) VALUES ('$nId')";
    mysql_query($addId);

}else {

    $lId = $row['ID'];
    $lId = $lId + 0;
    $lId++;
}

?>
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-01-22 09:52:06

正在执行的查询

代码语言:javascript
复制
INSERT INTO poiinfo('ID') VALUES ('$nId')

很可能会失败,因为columnname是用单引号括起来的。报价应重新编号,或用反勾代替。

代码语言:javascript
复制
INSERT INTO poiinfo(ID) VALUES ('$nId')

或

代码语言:javascript
复制
INSERT INTO poiinfo(`ID`) VALUES ('$nId')

所以问题是,我什么时候使用回勾?您使用的是MySQL保留关键字列表中的名称,

最后,必须在mysql_query()中传递包含查询的变量。

代码语言:javascript
复制
mysql_query($addId);
票数 2
EN

Stack Overflow用户

发布于 2013-01-22 10:07:11

您必须重置自动增量字段ID,以便在表为空时插入1。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14455642

复制
相关文章

相似问题

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