双11狂欢大促

盲盒赢 定制羽绒服

开启惊喜盲盒,抽取你的专属好礼

— 惊喜奖品抢先看 —

用PHP插入mysql的auto_increment字段的问题

iProgram iProgram 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
我要把用户输入的数据分快慢表保存, 常用的数据存在表A中, 不常用的数据存在表B中. 假设用户输入两个数据: 姓名和地址, 我把姓名存在表A, 地址存在表B, 用相同的id连接两个表. AB两表设计如下:
表A:
id INT PRIMARY, auto_increment
name varchar(10)
表B
id INT PRIMARY
address varchar(200)
用的时候:
SELECT A.name, B.address FROM A, B where A.id=B.id

我的问题是如何在插入的时候保证两个表的ID同步. 比如我在PHP中得到了$name和$address, 最省脑子的插入步骤是:
1 INSERT INTO A VALUES (NULL, $name); //NULL让id取自增值
2. SELECT id FROM A ORDER BY id DESC LIMIT 0, 1//然后得到刚插入的那个记录的id, 把id存在$id中
3. INSERT INTO B VALUES($id, $address) //再用得到的id插表B

但我觉得这样效率太低了, 尤其是第二步,不仅慢, 还有紊乱的危险(比如两个人同时执行完第一步1 - 要是用锁表的办法就太过分了)

要是你的话该怎么做呢?
(我用name和address简化叙述, 实际情况是B中有很长的TEXT)
...全文

相关推荐

mysql中自增auto_increment功能的相关设置及问题

mysql中的自增auto_increment功能相信每位phper都用过,本文就为大家分享一下mysql字段自增功能的具体查看及设置方法

weixin_38692969

php mysql索引问题

朋友问:今天我碰到个问题,我建个表,索引是REF,怎么才能写进一条信息,自动生成一个REF号码,记录到表中去呢?希望生成的REF号码是连续的,从00000开始。

weixin_38500090

MySQL查询和修改auto_increment的方法

本文实例讲述了MySQL查询和修改auto_increment的方法。分享给大家供大家参考。具体如下: 查询表名为tableName的auto_increment值: 代码如下:SELECT AUTO_INCREMENT FROM information_schema.tables WHERE table_name=”tableName”; 修改表名为tableName的auto_increment值: 代码如下:ALTER TABLE tableName auto_increment=number ; 希望本文所述对大家的MySQL程序设计有所帮助。

weixin_38724370

Mysql auto_increment 重新计数(让id从1开始)

方法一 delete from test; alter table `test` auto_increment=1 (好处,可以设置AUTO_INCREMENT 为任意值开始) 提示:如果表列和数据很多,速度会很慢,如90多万条,会在10分钟以上。 方法二 truncate table test (好处,简单,AUTO_INCREMENT 值重新开始计数) 一般情况下我们使用第二个就可以了,记住以上情况都是彻底删除所有记录。 您可能感兴趣的文章:mysql自增ID起始值修改方法mysql如何让自增id归0解决方案PHP获取MySql新增记录ID值

weixin_38742954

MySQL之Field‘***’doesn’t have a default value错误解决办法

今天,中国博客联盟有博友反馈,zgboke.com无法提交博客,当时我正好准备去假日广场聚会,就匆匆忙忙的提交试了下,发现提交博客的时候确实报如下错误: 提示web_pic不能为空值。很纳闷,之前都可以成功提交的,为什么突然不行了?看了下网上的案例,说是需要修改MySQL的配置什么的,但是目前博客联盟是挂在京东云擎的,数据库不能修改配置,按理说之前可以正常提交,后面应该也可以才对啊! 由于聚会时间快到了,就先放在一边了。回到家之后,对比了下网上的类似案例,原来是web_pic这个键值设置了不为空导致的,也就是在创建表的时候,使用了not null属性。于是进入mywebsql,登入京东云擎数

weixin_38637884
评论 5
收藏 已收藏
分享
返回顶部
iProgram
基础编程 21,889 成员 140,329 内容