SQLITE에서 삭제에 대한 제한을 어떻게 활성화합니까?
-
22-07-2019 - |
문제
PHP를 사용하면 동일한 콘텐츠로 여러 항목을 저장할 수있는 간단한 데이터베이스가 있습니다. 삭제를 사용할 때 인스턴스의 첫 번째 발생을 삭제하고 싶습니다.
PHP를 사용하여 SQLITE를 삭제하기위한 제한을 어떻게 활성화합니까?
해결책
PHP 내에서 이러한 옵션을 활성화 할 수 없습니다. sqlite를 직접 컴파일해야합니다 이러한 옵션을 활성화하기 위해. 중요하게도, 당신은 그것을 다운로드해야한다는 것입니다 합병이 아닌 정식 버전 소스 릴리스 sqlite 다운로드 페이지.
유닉스에 있다면 sqlite-3.6.20.tar.gz
tarball과 다운로드. 그 다음에:
tar xzf sqlite-3.6.20.tar.gz
cd sqlite-3.6.20
export CFLAGS='-DSQLITE_ENABLE_UPDATE_DELETE_LIMIT=1'
./configure
make
그럼 당신은 가질 것입니다 sqlite3
명령 줄 유틸리티 및 라이브러리 파일 .libs
하위 디렉토리.
다른 팁
Select와 함께 한계를 사용할 수 있으며 다음과 같은 선택 및 삭제를 결합 할 수 있습니다.
DELETE FROM Foo
WHERE someColumn in
(
SELECT someColumn FROM FOO WHERE SomeCondition LIMIT 200
)
DELETE FROM table WHERE rowid = (SELECT rowid FROM table WHERE condition LIMIT 1 )
에서 여기, 당신은 sqlite 소스 코드를 사용하여 컴파일 해야하는 것 같습니다.
#define SQLITE_ENABLE_UPDATE_DELETE_LIMIT
그것을 가능하게하기 위해.
제휴하지 않습니다 StackOverflow