1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-10-27 08:52:26 +03:00

Add the ignore_check_constraints pragma. VACUUM works even on a database

that contains table entries that violate check constraints. (CVS 2757)

FossilOrigin-Name: be83bfee0211396a0038ffb125897199bea9a73f
This commit is contained in:
drh
2005-11-03 02:15:02 +00:00
parent 06f6541e2f
commit 0cd2d4c9a1
7 changed files with 46 additions and 23 deletions

View File

@@ -12,7 +12,7 @@
** This file contains C code routines that are called by the parser
** to handle INSERT statements in SQLite.
**
** $Id: insert.c,v 1.146 2005/11/03 01:22:31 drh Exp $
** $Id: insert.c,v 1.147 2005/11/03 02:15:03 drh Exp $
*/
#include "sqliteInt.h"
@@ -869,7 +869,7 @@ void sqlite3GenerateConstraintChecks(
/* Test all CHECK constraints
*/
#ifndef SQLITE_OMIT_CHECK
if( pTab->pCheck ){
if( pTab->pCheck && (pParse->db->flags & SQLITE_IgnoreChecks)==0 ){
int allOk = sqlite3VdbeMakeLabel(v);
assert( pParse->ckOffset==0 );
pParse->ckOffset = nCol;