我写了一个sql查询来插入记录,如果它不存在&返回它的范围标识。
IF NOT EXISTS(SELECT email from tableUser
where email='a@b.com')
INSERT INTO tableUser (name, countryCode, mobile, email, ip)
VALUES ('name', 91, 9811223344, 'a@b.com', 1) SELECT SCOPE_IDENTITY()
但如果记录存在,那么我想返回它的ID。
注意:ID是表格中的标识列
答案 0 :(得分:1)
在查询下方尝试:
IF NOT EXISTS(SELECT email from tableUser where email='a@b.com')
BEGIN
INSERT INTO tableUser (name, countryCode, mobile, email, ip)
VALUES ('name', 91, 9811223344, 'a@b.com', 1)
SELECT SCOPE_IDENTITY()
END
ELSE
BEGIN
SELECT Id FROM tableUser where email='a@b.com'
END
答案 1 :(得分:0)
您可以使用带有lazy var managedObjectModel: NSManagedObjectModel = {
let modelURL = Bundle.main.url(forResource: "VerseApp", withExtension: "momd")!
print(modelURL)
return NSManagedObjectModel(contentsOf: modelURL)!
}()
子句的MERGE
。类似的东西:
OUTPUT
(请注意,我也将移动设备更改为文本 - 尽管移动设备号码由数字组成,但我们不会对它们进行数学运算,并且通常例如前导零可能很重要,因此通常最好不要存储它们作为实际数字)