【Sqlite3】sqlite_sequence表(转)】的更多相关文章

sqlite_sequence表也是SQLite的系统表.该表用来保存其他表的RowID的最大值.数据库被创建时,sqlite_sequence表会被自动创建.该表包括两列.第一列为name,用来存储表的名称.第二列为seq,用来保存表对应的RowID的最大值.该值最大值为9223372036854775807.当对应的表增加记录,该表会自动更新.当表删除,该表对应的记录也会自动删除.如果该值超过最大值,会引起SQL_FULL错误.所以,一旦发现该错误,用户不仅要检查SQLite文件所在的磁盘空…
SQLite的sqlite_sequence表   sqlite_sequence表也是SQLite的系统表.该表用来保存其他表的RowID的最大值.数据库被创建时,sqlite_sequence表会被自动创建.该表包括两列.第一列为name,用来存储表的名称.第二列为seq,用来保存表对应的RowID的最大值.该值最大值为9223372036854775807.当对应的表增加记录,该表会自动更新.当表删除,该表对应的记录也会自动删除.如果该值超过最大值,会引起SQL_FULL错误.所以,一旦发…
sqlite3 数据库表查看步骤 1 sqlite3 local.db2 .mode column3 .headers on4 .tables5 select * from tablename6 ;(执行完语句必须执行;号才能查看出表中数据)…
原文:http://blog.csdn.net/richnaly/article/details/7831933 sqlite3查看表结构 在android下通过adb shell命令可以进入sqlite3的命令行client,见:在android命令行下使用sqlite3. 如果想列出该数据库中的所有表,可: .table 如果想查看这些表的结构: select * from sqlite_master where type="table"; 可以看到类似: 默认情况下,不会出现红框…
常用方法: 1.使用sqlite3_get_table函数 2.获取sqlite创建表的sql语句字符串,然后进行解析获取到相应的字段 3.采用配置文件的方式,将所有字段名写入配置文件 方法1:使用sqlite3_get_table函数 代码: char *dbname = "test.db"; int rc = sqlite3_open(dbname, &db); if (rc == SQLITE_OK) { ] = "select * from Images&qu…
本文主要是写了一个android程序对sqlite3中数据库的employee表的插入.删除的操作,然后在cmd窗口中用sql命令查询employee表的操作过程. 1.第一步:首先把程序写好. 1.1.创建一个MainActivity类,代码如下: package com.example.datastorege.action; import com.example.datastorege.R; import com.example.datastorege.R.layout; import co…
给sqlite3表格增加新字段,要注意大小写,要不然不成功. 一开始这样写,不成功! 后面规范写,按大小写严格规范写! 成功了!现在查看新增加的字段commit: 仔细看,这下全部小写,括表名称.commit有在表结构中. sqlite3还真不全是大小写一样的,至少给表增加字段,要严格区分大小写才成功!希望知道原因的留言探讨!…
SQLite 创建表 SQLite 的 CREATE TABLE 语句用于在任何给定的数据库创建一个新表.创建基本表,涉及到命名表.定义列及每一列的数据类型. 语法 CREATE TABLE 语句的基本语法如下: CREATE TABLE database_name.table_name( column1 datatype PRIMARY KEY(one or more columns), column2 datatype, column3 datatype, ..... columnN dat…
1.创建自增主键 CREATE TABLE tb_python (ID INTEGER PRIMARY KEY AUTOINCREMENT,TITLE TEXT,URL TEXT); 2.清空表 SQLite3数据库中包含自增列时,会自动建立一个名为 sqlite_sequence 的表.这个表包含两个列:name和seq.name记录自增列所在的表,seq记录当前序号.所以要想使自增列的序号归零,则需要修改 sqlite_sequence表. DELETE FROM tb_python; DE…
这篇文章主要介绍了SQLite3中自增主键相关知识总结,清零的方法.INTEGER PRIMARY KEY AUTOINCREMENT和rowid的使用等,需要的朋友可以参考下 一.SQLite清空表并将自增列归零 undefined SQL标准中有TRUNCATE TABLE语句,用来清空表的所有内容.但SQLite不支持这个语句.在SQLite中直接使用 DELETE FROM TableName 就可以了.对于大多数DBMS来说,用DELETE不如用TRUNCATE 速度快,因为TRUNC…
在SQLite中,主要有两种表类型,带rowid的表和不带rowid的表.我们利用create table 建一张表,默认都会有一个隐含名字为rowid的主键,暂且称带rowid的表为普通表.如果建表时指定 WITHOUT ROWID属性,那么建的表就是不带rowid的表.那么这两种表有什么区别?这篇文章主要讨论这两种表的存储实现,以及它们的优缺点和适用的应用场景. 1.rowid是什么? SQLite中rowid是一个隐身存储的列,8个字节存储,它有两个别名 _ROWID_ 和 OID,类型定…
当SQLite数据库中包含自增列时,会自动建立一个名为 sqlite_sequence 的表.这个表包含两个列:name和seq.name记录自增列所在的表,seq记录当前序号(下一条记录的编号就是当前序号加1).如果想把某个自增列的序号归零,只需要修改 sqlite_sequence表就可以了.UPDATE sqlite_sequence SET seq = 0 WHERE name='TableName';也可以直接把该记录删掉: DELETE FROM sqlite_sequence WH…
[db executeUpdate:@"DELETE FROM MemberInfo"]; [db executeUpdate:@"UPDATE sqlite_sequence set seq=0 where name='MemberInfo'"]; //当SQLite数据库中包含自增列时,会自动建立一个名为 sqlite_sequence 的表.这个表包含两个列:name和seq.name记录自增列所在的表,seq记录当前序号(下一条记录的编号就是当前序号加1).…
SQL标准中有 WHERE name = 'TableName'; 也可以直接把该记录删掉: 1 DELETE FROM sqlite_sequence WHERE name = 'TableName'; 要想将所有表的自增列都归零,直接清空sqlite_sequence表就可以了: 1 DELETE FROM sqlite_sequence;…
SQLite清空表并将自增列归零 SQL标准中有TRUNCATE TABLE语句,用来清空表的所有内容. 但SQLite不支持这个语句.在SQLite中直接使用 DELETE FROM TableName 就可以了. 对于大多数DBMS来说,用DELETE不如用TRUNCATE 速度快,因为TRUNCATE 不用访问整个表,不用记录数据的变动. SQLite虽然不支持TRUNCATE,但它对DELETE做了优化: 通常在清空表的时候,还需要把自增列归零.在SQLite中定义自增列的方法如下: C…
初始化sqlite3 (创建表) QString url = QDir::currentPath() + QString::fromLocal8Bit("/Msg.db"); bool isExsiting = false; QFileInfo file(url); if (!file.absoluteDir().exists()) { QDir dir; dir.mkpath(file.path()); } if (file.exists()) isExsiting = true;…
SQLite并不支持TRUNCATE TABLE语句 方式一: DELETE FROM [Tab_User] --不能将递增数归零 方式二: DELETE FROM sqlite_sequence WHERE name = ‘TableName’; --可以将递增数归零 详细看我从其他博友园子里扒来的介绍: SQL标准中有TRUNCATE TABLE语句,用来清空表的所有内容.但SQLite不支持这个语句.在SQLite中直接使用“DELETE FROM TableName”就可以了.对于大多数…
参考来源: sqlite3的C语言使用(三):https://www.leavesongs.com/C/sqlite3_3.html sqlite插入和查询效率提高方法及测试结果: http://blog.sina.com.cn/s/blog_590be5290102vun0.html c++获取sqlite3数据库表中所有字段的方法:https://www.cnblogs.com/battlescars/p/cpp_get_sqlite3_column_name.html 加上我自己实践是 1…
SQLite 学习笔记. 一.SQLite 安装    访问http://www.sqlite.org/download.html下载对应的文件.    1.在 Windows 上安装 SQLite.需要下载 sqlite-shell-win32-*.zip 和 sqlite-dll-win32-*.zip 压缩文件.        创建文件夹 C:\sqlite,并在此文件夹下解压上面两个压缩文件,将得到 sqlite3.def.sqlite3.dll 和 sqlite3.exe 文件.   …
上篇文章简单讨论了虚拟机的原理,这篇文章我们详细讨论下指令,具体从几种典型的SQL语句来看看每种SQL对应的指令流,以及每个指令的含义.通过explain语句,可以看到语句对应的指令流:通过pragma vdbe_trace=on指令,我们甚至可以得到语句对应的指令执行流程,包括跳转等.测试表结构 CREATE TABLE t1( id integer primary key autoincrement, user_id int, c1 ), c2 ) ); 测试语句(1)INSERT sqli…
前言部分 本文非原创 文章摘自:http://m.blog.csdn.net/blog/wsxzk123/17282325 数据库工具:MesaSQLite 一.创建数据库 1.创建数据库 MesaSQLite工具  File-NewDataBase 创建出新的数据库(Newdb.rdb),这里我要的是.db的文件,自己手动把文件名改为.db. 2.创建table 进入MesaSQLite,选中structure, 选中+增加一个表格(city) 也可以:createtable city (co…
转载自http://www.2cto.com/kf/201406/309356.html 通信录是一个3层的数据存储模型,这三个数据模型就是ContactsContact.Data,ContactsContact.RawContacts,ContactsContact.Contacts.对应三个表:data.raw_contacts.contacts. 1) contacts表 表保存了所有的手机测联系人,每个联系人占一行,该表保存了联系人的ContactID.联系次数.最后一次联系的时间.是否…
原文:http://www.cnblogs.com/peida/archive/2008/11/29/1343832.html Sqlite中INTEGER PRIMARY KEY AUTOINCREMENT和rowid的使用     在用sqlite设计表时,突然想到一个问题,就是我设计的表中,每个表都有一个自己的整形id值作为主键,其实可以不指定这么一个id值,sqlite内部本来就会为每个表加上一个 rowid,这个rowid可以当成一个隐含的字段使用,但是由sqlite引擎来维护的,在3…
Mnesia是erlang/otp自带的分布式数据库管理系统.mnesia配合erlang的实现近乎理想,但在实际使用当中差强人意,总会有一些不足.mnesia数据表没有主键自增的功能,但在mnesia函数中有一个自增函数可以用来生成自增的id,在后面的内容将讲述如何实现主键自增的功能. 参照SQLite的做法,就是在数据库中单独建立一个的sqlite_sequence表来做其他表的自增索引表.同样,我们也创建这样一个表erlang_sequence,用来索引其他表的自增id,看似麻烦,效果还是…
联系人数据库学习 2011-10-31(这是android2.3在接触db) 简单介绍 Android中联系人的信息都是存储在一个叫contacts2.db的数据库中.该数据库的路径是:/data/data/com.android.provider.contacts/databases/contacts2.db.如图1: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvemhhbzcxMzQ=/font/5a6L5L2T/fontsize/400/fil…
一:首先使用默认的sqlite3创建表 1:现在在models.py中添加表模型 from django.db import models # Create your models here. class Book(models.Model): name=models.CharField(max_length=20) price = models.IntegerField() pub_date=models.DateField() models.py 2:在Teminal中通过命令创建表 pyt…
第一个真正意义的Django项目 ! 预计时间5天  20190309--20190314 目标:学会Django的使用,理解模块关系!   querset  相当于一个存放列表的字典     day1 20190309  1.1 引入环境 ,配置static静态文件,并引入 bootstrap下的dist文件和 jquery STATIC_URL = '/static/'STATICFILES_DIRS=[os.path.join(BASE_DIR,'static')]   这样下次引入时,会…
技术前提:我们使用iBatis作为持久层方案 技术场景:     假设我们有两张表,一张主表Main,一张子表Sub,并且主表的主键是由数据库维护的自增长的主键,子表中有一个字段引用这个主键,那么当我们插入主表数据后,就需要马上返回这个自增长的主键. 解决方案:     可以在insert时通过iBatis的selectKey返回那个主键.     selectKey有3个主要的属性:     1)resultClass:返回的主键的数据类型,跟sqlMap中的数据类型一致:     2)typ…
pycharm 1.新建一个Django工程 2.部署 在pycharm下方的terminal终端中输入命令: python manage.py startapp app1 生成“app1”文件夹 3.再部署 mysite下创建一个static的文件夹用来存放js,css,image等.templates用来存放.html文件 4.网页输出简单字符 views+urls views代码 from django.shortcuts import render from django.shortcu…
SQLite 的 DELETE 语句用于删除表中已有的记录.可以使用带有 WHERE 子句的 DELETE 查询来删除选定行,否则所有的记录都会被删除. SQLite 要清空表记录,只能使用Delete来删除全部表数据.但是与别的数据库不同,SQlite在为表创建自增列后,会将表自增列的当前序号保存到一个名为sqlite_sequenc的表内, 因此清除表的所有记录后,如果还要将自增列清零,则需处理此表相关记录.sqlite_sequence表结构(其中seq字段为当前自增列的序号值,name字…