作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
Possible Duplicate:
MySQL trigger to update a field to the value of id
请我有一个包含三个字段的表:
Id (auto increment)
GroupById
Text
我希望在插入新行时:如果我将字段 groupById 留空,则默认情况下它必须获得与字段 Id 相同的值。
请问您有什么想法吗?提前致谢。
编辑:我的代码:
mysql_query("INSERT INTO group SET GroupById = (must get the current Id), Text = 'bla bla bla' ");
最佳答案
触发器怎么样:
DELIMITER $$
CREATE TRIGGER trg_yourtable
BEFORE INSERT ON yourtable
FOR EACH ROW
BEGIN
IF NEW.GroupById IS NULL THEN
SET NEW.GroupById = (
SELECT AUTO_INCREMENT
FROM information_schema.TABLES
WHERE TABLE_SCHEMA = DATABASE()
AND TABLE_NAME = 'yourtable'
);
END IF;
END $$
我不确定这有多安全...或者当您从一个查询插入多行时,或者当两个连接尝试同时插入时会发生什么...但它有效。
关于PHP Mysql 如何让字段获得与自增id相同的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13849811/
我是一名优秀的程序员,十分优秀!