首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >未插入自动增量id

问未插入自动增量id
EN

Stack Overflow用户
提问于 2013-07-30 06:32:13
回答 5查看 8.8K关注 0票数 1

我使用简单的MySQL代码从带有auto_increment id的表单中插入数据,它在本地主机上运行良好,但在服务器上不工作。

这是我正在使用的代码

代码语言:javascript
复制
 $myvar=$_POST['var'];
 //Insert data into mysql table
$sql="INSERT INTO mytable(id,myvar) VALUES ('','$myvar')";

在本地主机中,phpmyadmin数据被插入到表中,而在服务器上,phpmyadmin数据没有插入到表中。在我的本地主机中,我使用XAMPP,而在IIS服务器上使用phpmyadmin。在服务器上的phpmyadmin中,我应该做什么设置,以便自动添加id,我知道我可以使用mysql_insert_id()插入id,但是在很多文件中,我使用了这种类型的代码,我无法更改。我想要与XAMPP相同的设置,可以轻松地接受这种类型的代码。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2013-07-30 06:35:16

自动增量插入id本身,因此不需要通过代码传递它

代码语言:javascript
复制
$sql="INSERT INTO mytable(myvar) VALUES ('$myvar')";

或者你可以这么做

代码语言:javascript
复制
$sql="INSERT INTO mytable(id,myvar) VALUES (NULL,'$myvar')";

如果出于某种原因要手动插入id

代码语言:javascript
复制
$sql="INSERT INTO mytable(id,myvar) VALUES (10,'$myvar')";
票数 0
EN

Stack Overflow用户

发布于 2013-07-30 06:33:27

在自动增量id中插入“”。只需插入其他字段,MySQL就会处理自动增量列。

代码语言:javascript
复制
$sql="INSERT INTO mytable(id,myvar) VALUES ('','$myvar')";

应该是

代码语言:javascript
复制
$sql="INSERT INTO mytable(myvar) VALUES ('$myvar')";
票数 7
EN

Stack Overflow用户

发布于 2013-07-30 06:35:31

如果您想要表中所有行中的最后一行,那么现在终于是MAX(id)是正确答案的时候了!:)。

代码语言:javascript
复制
SELECT fields FROM mytable BY id DESC LIMIT 1;

将得到最后一个id,然后将其增加到1 //,在insert语句中将此值添加到id。

或者,如果有自动增量列,则将其更改为

代码语言:javascript
复制
$sql="INSERT INTO mytable(id,myvar) VALUES ('','$myvar')";

至

代码语言:javascript
复制
$sql="INSERT INTO mytable(myvar) VALUES ('$myvar')";
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17939810

复制
相关文章

相似问题

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