SQLite 学习

首先简单介绍一下SQLite数据库:SQLite是一款轻型数据库,占用资源非常低,并且其简单语句的处理性能比Mysql和Postgresql 都要快。对于像android手机这样内存有限的设备而言,SQlite数据库理所当然的成为Android平台开发者处理数据的首先,并且其数据库单文件的特性也使得在Android中操作数据库更加灵活。SQLite非常健壮,据说其创建者保守估计SQLite可以处理每天多达10 000次点击率的Web站点,有时候可以处理上述数字的10倍负载。

        接下来说一说SQLite的学习。学习SQLite之前,建议一定要学习一下SQL,SQLite支持多数的SQL92标准,百度百科列出其支持一下SQL:

ATTACH DATABASE
BEGIN TRANSACTION
comment
COMMIT TRANSACTION

COPY 

CREATE INDEX

CREATE TABLE
CREATE TRIGGER
CREATE VIEW
DELETE
DETACH DATABASE
DROP INDEX
DROP TABLE
DROP TRIGGER
DROP VIEW
END TRANSACTION
EXPLAIN
expression

INSERT

ON CONFLICT clause

PRAGMA
REPLACE
ROLLBACK TRANSACTION
SELECT

UPDATE

个人认为如果没有SQL的支持,SQLite学起来会让你感到非常困难。这里推荐到W3CSchool学习,这里讲的比较基础,适合初学者。等到你掌握一定的SQL语句请再回过头来学习SQLite。之前我在学习了一段SQL之后觉得对此还是比较模糊,就向老师问了一下,老师则建议我结合SQLite官网流程图和W3CSchool来学习。我看的第一组图

 CREATE TABLE :





虽然英语不是很好,但是结合这流程图还是把CREATE TABLE 这条命令给弄懂了。CREATE TABLE这条命令要指定新表的一下属性:

The name of the new table.
The database in which the new table is created. Tables may be created in the main database, the temp database, or in any attached database.
The name of each column in the table.
The declared type of each column in the table.
A default value or expression for each column in the table.
A default collation sequence to use with each column.
Optionally, a PRIMARY KEY for the table. Both single column and composite (multiple column) primary keys are supported.
A set of SQL constraints for each table. SQLite supports UNIQUE, NOT NULL, CHECK and FOREIGN KEY constraints.

1、表名

2、数据中的新表可能在主数据库、临时数据库或者附属数据库(看流程图就会明白)

3、表中每列的名称

4、表中的每列要声明数据类型(Integer、Text、Numaric、Real···)

5、表中每列要有一个默认的值或表达式

6、每列要使用一个默认的排序

7、表中的主键是可选择的,一个或者多个

更多内容请看官网 http://www.sqlite.org/lang_createtable.html ,下面给出一个SQLite创建表的例子:

创建一个学生信息的表:包含学号、姓名和性别

			public static String DB_NAME = "name.db";
			public static String ID = "_id";
			public static String T_NAME = "stu_list";
			public static int VERSION = 1;
			public static String STU_ID = "stu_id";
			public static String NAME = "stu_name";
			public static String SEX = "stu_sex";

			@Override
			public void onCreate(SQLiteDatabase db) {
				// TODO Auto-generated method stub
				String sql = "create table " + T_NAME + " ( " + ID
						+ " integer primary key ," + STU_ID + " text," + NAME
						+ " text," + SEX + " text)";
				db.execSQL(sql);
			}
这个表创建出来如下:


SQLite中文网站 有很多关于SQLite的实例可供我们参考。总之,开始学习时一定会遇到不少困难,只要我们勤于学习,还是会掌握的。相信菜鸟又向前迈了一步。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章