我有一个mysql表,它是这样创建的;
CREATE TABLE test_contacts
(
id int PRIMARY KEY AUTO_INCREMENT,
name varchar(16) NOT NULL,
databit int NOT NULL
);
CREATE UNIQUE INDEX test_contacts_name_uindex ON test_contacts (name);
当我想检索数据时 SELECT * FROM test_contacts WHERE name = '{name}';
在我当前的java应用程序中,我将执行以下操作:(伪代码)
Object result = SELECT * FROM test_contacts WHERE name = '{name}';
if (result == null) {
INSERT INTO test_contacts (`name`, `databit`) VALUES ('{name}', 2);
result = SELECT * FROM test_contacts WHERE name = '{name}';
}
有没有办法将这3个数据库调用压缩成一个总是返回指定名称行的语句(我需要你的帮助 id
(已插入)
1条答案
按热度按时间3vpjnl9f1#
因为您有一个唯一的索引,所以不必签入代码,如果您的第一个选择有任何结果,您只需这样做
请在此处阅读更多信息
然后你得到
id
具有请在此处阅读更多信息