嗨,我已经阅读了很多关于它的问题,但我还没有找到我的问题的答案。问题是这样的:我在 MYSQL 中有一个表,其结构如下:
CREATE TABLE`Danni_Prekusvachi` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`prekusvach_id` int(11) NOT NULL,
`data` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`IzkOtZashtita` bit(1) NOT NULL,
`VklPrek` bit(1) NOT NULL,
`cVkl` bit(1) NOT NULL,
`cIzkl` bit(1) NOT NULL,
`greshki` text NOT NULL,
`komentari` varchar(255) NOT NULL,
`prava_id` int(11) NOT NULL,
PRIMARY KEY (`id`),
KEY `prekusvach_id` (`prekusvach_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
INSERT INTO `Danni_Prekusvachi` (`id`, `prekusvach_id`, `data`, `IzkOtZashtita`, `VklPrek`, `cVkl`, `cIzkl`, `greshki`, `komentari`) VALUES
(1, 1, '2013-07-25 13:07:24', b'1', b'0', b'0', b'1', '', ''),
(2, 1, '2013-07-25 13:07:25', b'1', b'0', b'0', b'1', '', '');
ALTER TABLE `Danni_Prekusvachi`
ADD CONSTRAINT `Danni_Prekusvachi_ibfk_1` FOREIGN KEY (`prekusvach_id`) REFERENCES `Prekusvachi` (`id`) ON DELETE NO ACTION ON UPDATE CASCADE;
我每秒左右插入数据。我只想在冒号 、 或 之一
改变了它的值时才插入数据。现在我正在考虑用 php 检查最后插入的行是否相同,但我的数据库将有大约 50000 行,因此随着数据库变大,速度会变慢。IzkOtZashtita
VklPrek
cVkl
cIzkl
有没有办法在一个查询中进行检查和插入,或者我必须调用它两次来检查值?
编辑:我只想在值与最后插入的具有相同prekusvach_id
. 因此,假设在一秒钟内 cVkl 的值从 1 变为 0,我应该插入新行。但如果 cVkl 的值仍然相同(1 到 1),我不应该插入新行