[SQL] IF NOT SQLite는 존재 할 방법
SQLIF NOT SQLite는 존재 할 방법
나는 SQLite는에 포트에 MS SQL 서버에서이 줄을 시도하고있다
IF NOT EXISTS(SELECT 1 FROM EVENTTYPE WHERE EventTypeName = 'ANI Received')
INSERT INTO EVENTTYPE (EventTypeName) VALUES ('ANI Received');
이 NOT이 존재하거나 적어도 내가 작업 할 수없는 경우 SQLite는 지원하지 않는 것 같습니다. 뭔가 단순 실종? 해결 방법이 있습니까?
해결법
-
==============================
1.이건 어때요?
이건 어때요?
INSERT OR IGNORE INTO EVENTTYPE (EventTypeName) VALUES 'ANI Received'
(I SQLite는없는 안된로 ... 그러나이 링크는 매우 설명입니다.)
또한,이 또한 작동합니다 :
INSERT INTO EVENTTYPE (EventTypeName) SELECT 'ANI Received' WHERE NOT EXISTS (SELECT 1 FROM EVENTTYPE WHERE EventTypeName = 'ANI Received');
-
==============================
2.기존 값의 삽입을 무시하려면, 테이블에 키 필드가 있어야합니다. 그냥 기본 키 필드 등으로 테이블을 만들 :
기존 값의 삽입을 무시하려면, 테이블에 키 필드가 있어야합니다. 그냥 기본 키 필드 등으로 테이블을 만들 :
CREATE TABLE IF NOT EXISTS TblUsers (UserId INTEGER PRIMARY KEY, UserName varchar(100), ContactName varchar(100),Password varchar(100));
다음 삽입 또는 교체 / 삽입 또는 표와 같이 쿼리를 무시 :
INSERT OR REPLACE INTO TblUsers (UserId, UserName, ContactName ,Password) VALUES('1','UserName','ContactName','Password');
그것은이 당신이 값이 테이블에 존재하는지 여부를 확인 할 수있는 방법인가 ... 그것은 기존의 기본 키 값을 다시 입력 할 수 없습니다.
-
==============================
3.또한 갈등의 키 필드와 세트로 테이블에 제약 조건을 설정할 수 있습니다 "무시"
또한 갈등의 키 필드와 세트로 테이블에 제약 조건을 설정할 수 있습니다 "무시"
SQLite는 문서
from https://stackoverflow.com/questions/531035/how-to-do-if-not-exists-in-sqlite by cc-by-sa and MIT license
'SQL' 카테고리의 다른 글
[SQL] 어떻게 순수한 SQL에 LINQ의 .Skip (1000) .Take (100)을 작성하려면 어떻게해야합니까? (0) | 2020.05.07 |
---|---|
[SQL] SQL 쿼리는 최소값과 별개의 행을 선택합니다 (0) | 2020.05.07 |
[SQL] 어떻게 현재 날짜의 소인이있는 행을 선택하려면? (0) | 2020.05.07 |
[SQL] 어떤 시점에서 데이터베이스를 사용하여 가치가있다? (0) | 2020.05.07 |
[SQL] T-SQL 무작위 문자열을 생성 (0) | 2020.05.07 |