sqlite如何修改源代码默认开启外键约束

ymnha 2011-03-10 12:07:32
sqlite 为了兼容以前的程序,默认并没有启用外键约束,如果要启用该功能每次都要需要使用如下语句:PRAGMA foreign_keys = ON来打开。
我现在想改源代码,使它能够默认开启。但是看了很久的代码,还是不知道在哪里改,请大家帮忙。谢谢!
...全文
322 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
gfspirit 2011-12-26
  • 打赏
  • 举报
回复
哦,原来如此

升级万 2011-10-20
  • 打赏
  • 举报
回复
晕,106737这一行都没有代码。

static int fts3BestSnippet(
int nSnippet, /* Desired snippet length */
Fts3Cursor *pCsr, /* Cursor to create snippet for */
int iCol, /* Index of column to create snippet from */
int *piPos, /* OUT: Starting token for best snippet */
u64 *pHlmask //106826行 /* OUT: Highlight mask for best snippet */
){
int rc; /* Return Code */
u8 aBuffer[SNIPPET_BUFFER_SIZE];/* Circular snippet buffer */
int *aiPrev; /* Used by fts3LoadSnippetBuffer() */
int *anToken; /* Number of tokens in each phrase */
char **apList; /* Array of position lists */
int *anCnt; /* Running totals of phrase occurences */
int nList;

int i; //106836行
//106837行
u64 hlmask = 0; //106838行 /* Current mask of highlighted terms */
u64 besthlmask = 0; /* Mask of highlighted terms for iBestPos */
int iBestPos = 0; /* Starting position of 'best' snippet */
int iBestScore = 0; /* Score of best snippet higher->better */
SnippetCtx sCtx;
saberkingdom 2011-03-11
  • 打赏
  • 举报
回复
很给力有木有!!!!
很犀利有木有!!!!!
支持!!!!!
吐血支持!!!!
ACMAIN_CHM 2011-03-11
  • 打赏
  • 举报
回复
ymnha 2011-03-11
  • 打赏
  • 举报
回复
终于找到了。
在sqlite3.c文件第106826行后面添加 | SQLITE_ForeignKeys,然后把106836、106837、106838这三行注释掉。再重新编译就可以了。

2,209

社区成员

发帖
与我相关
我的任务
社区描述
其他数据库开发 其他数据库
社区管理员
  • 其他数据库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧