1.SQL语句的特点:

1.1 不区分大小写

1.2 每条语句以;结尾

2.SQL语句中常用关键字:

select,insert,update,from,create,where,desc,order,by,group,table,alter,view,index等。

数据库中不能出现与上述关键字重名的表名和字段。

3.SQL语言种类:

3.1

数据定义语句: Data Defination Language; (DDL)

包括create和drop等操作

包括创建表或者删除表(create table 和 drop table)

3.2

数据操作语言: Data Manipulation Language (DML)

包括insert,update,delete等操作

上述三种操作分别作用于添加,修改,删除表中数据

3.3

数据查询语言:Data Query Language (DQL)

关键字select是DQL中用的最多的操作

其他常用的DQL中的关键字如 where,order by, group by 和 having.

4.SQL语句使用举例

4.1 DDL (数据定义语言)

4.1.1 创建表格

creat table 表名(字段名1 字段类型1,字段名2 字段类型2)

例如 : CREATE table t_student(id integer PRIMARY key, name text);

实际上SQLite是无类型的,就是是申明为integer类型,一样可以存储字符串数据(主键除外)

4.1.2 删除表格

drop table 表名

例如:DROP TABLE t_student;

4.2DML(数据操作语言)

4.2.1 插入数据

insert to 表名 (字段1,字段2)values(字段1的值,字段2的值)

例如:INSERT into t_student(id,name)VALUES(1,'zhengli');

4.2.2 修改数据

update 表名 set 字段1 = 字段1 新值

例如: update t_student set name = 'zhengli';(注意这样写会将表中的所有name的值更改)

4.2.3 删除数据

delete from 表名

例如: delete from t_student ; (与上面的语句一样,会删除表中所有数据!但不会删除表);

在上面的所有语句中,都可以加上条件语句,例如: update t_student set name = 'tangyi'where id = 1;

这样就只会修改 id =1 的数据。同时可以用and表示C语言中的&& or表示||。

4.3 DQL语句 (数据查询语句)

4.3.1 按照条件查询

select 字段1,字段2,... from 表名

select *from 表名  (查询表中所有字段)

4.3.2  排序查询

select * from 表名 oder by 字段名(默认升序)

select * from 表名 order by 字段名 desc (降序)

4.3.3  limit

select *from 表名 order by 字段名 (升序) limit 数值1,数值2

表示从表中取数据并按升序排列,跳过前数值1个数据,取数值2个数据

如: select * from t_student order by id limit 0,5;

升序排序取出前五条数据。

select *from t_student order by age desc limit 2,3;

降序排序 跳过前2条数据 取之后的3条数据

4.3.4 约束

内键约束

建表时可以给特定的字段设置一些约束条件,常见的约束有

1.not null 该字段不能为空

2.unique 该字段的值唯一,不能重复

3. default 制定该字段的默认值

例如:  create table t_student (id integer primary key , name text not null unique,age integer not null default 1)

表名该表中的 name字段不能为空且不能重复,age不能为空且默认为1;

外键约束

利用外键约束,可以建立表与表之间的联系

外键约束的一般情况是,一张表的某个字段,引用着另一张表的主键字段

例如:

create table t_student(id integer primary key ,name text,class_id integer constraint fk_t_student_class_id_t_class_id foreign key (class_id) references t_class(id));

2016 - 3 - 12 SQLite的学习之SQL语言入门的更多相关文章

  1. Oracle学习笔记之四,SQL语言入门

    1. SQL语言概述 1.1 SQL语言特点 集合性,SQL可以的高层的数据结构上进行工作,工作时不是单条地处理记录,而对数据进行成组的处理. 统一性,操作任务主要包括:查询数据:插入.修改和删除数据 ...

  2. (一)Sql学习之sql语言的组成

    SQL语言是具有强大查询功能的数据库结构化语言.由以下几部分组成: 1.数据定义类SQL(DDL--DATE DEFINITION LANGUAGE) CREATE-创建数据库及其对象(表,索引,视图 ...

  3. SQL学习笔记——SQL初入门,Ubuntu下MySQL的安装

          刚开始接触sql,于是准备在Ubuntu下学习sql,就跟着itercast的sql教程开始入门了. 下面只是我个人的记录,高手请绕道: 一. 在安装之前,我们可以用下面这个命令通过开放端 ...

  4. SQL语言入门

    内容来源:唐成. PostgreSQL修炼之道[M]. 机械工业出版社, 2015. 此书购买链接:京东 亚马逊 SQL(Structured Query Language) 结构化查询语言 1. 语 ...

  5. Android中的SQLite使用学习

    Android中的SQLite使用学习 SQLite是非常流行的嵌入式关系型数据库,轻载, 速度快,而且是开源.在Android中,runtime提供SQLite,所以我们可以使用SQLite,而且是 ...

  6. 学习《SQL必知必会(第4版)》中文PDF+英文PDF+代码++福达BenForta(作者)

    不管是数据分析还是Web程序开发,都会接触到数据库,SQL语法简洁,使用方式灵活,功能强大,已经成为当今程序员不可或缺的技能. 推荐学习<SQL必知必会(第4版)>,内容丰富,文字简洁明快 ...

  7. Web安全学习笔记 SQL注入上

    Web安全学习笔记 SQL注入上 繁枝插云欣 --ICML8 SQL注入分类 SQL注入检测 一.注入分类 1.简介 SQL注入是一种代码注入技术用于攻击数据驱动的应用程序在应用程序中,如果没有做恰当 ...

  8. 2016年12月31日 星期六 --出埃及记 Exodus 21:26

    2016年12月31日 星期六 --出埃及记 Exodus 21:26 "If a man hits a manservant or maidservant in the eye and d ...

  9. 2016年12月30日 星期五 --出埃及记 Exodus 21:25

    2016年12月30日 星期五 --出埃及记 Exodus 21:25 burn for burn, wound for wound, bruise for bruise.以烙还烙,以伤还伤,以打还打 ...

随机推荐

  1. java.lang.Class<T> -- 反射机制

    1反射机制是什么 反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法:对于任意一个对象,都能够调用它的任意一个方法和属性:这种动态获取的信息以及动态调用对象的方法的功能称为jav ...

  2. 3个sprint的团队贡献分

    第一次冲刺贡献分   成员名字 贡献分 101丘娟 23 108周诗琦 26 107杨晓霞 24 124陈程 27     第二次冲刺贡献分   成员名字 贡献分 101丘娟 23 108周诗琦 27 ...

  3. yii2-basic后台管理功能开发之三:自定义GridView列显示

    在第二篇 yii2-basic后台管理功能开发之二:创建CRUD增删改查 中,我们利用gii工具生成的结果一般并不是我们想要的结果. 我们需要根据自己的需求自定义列显示.我遇到的主要是一下变更: 时间 ...

  4. Binary Tree Zigzag Level Order Traversal [LeetCode]

    Given a binary tree, return the zigzag level order traversal of its nodes' values. (ie, from left to ...

  5. Flatten Binary Tree to Linked List [LeetCode]

    Given a binary tree, flatten it to a linked list in-place. For example,Given 1 / \ 2 5 / \ \ 3 4 6 T ...

  6. Dynamo分布式系统——「RWN」协议解决多备份数据如何读写来保证数据一致性,而「向量时钟」来保证当读取到多个备份数据的时候,如何判断哪些数据是最新的这种情况

    转自:http://blog.jqian.net/post/dynamo.html Dynamo是Amazon开发的一款高可用的分布式KV系统,已经在Amazon商店的后端存储有很成熟的应用.它的特点 ...

  7. java selenium (一) selenium 介绍

    Selenium 是目前用的最广泛的Web UI 自动化测试框架. 本系列文章,将深入简出来讲解selenium 的用法 文章的末尾处, 有整个系列的链接 阅读目录 selenium 的命名 sele ...

  8. 总结js中数据类型的bool值及其比较

    首先需要知道的是,js中有6个值为false,分别是: 0, '', null, undefined, NaN 和 false, 其他(包括{}, [], Infinity)为true. 可以使用Bo ...

  9. The different of mouseover and mouseenter

    l论事件onmouseover 和 onmouseenter:同类比较onmouseout 和 onmouseleave; 使用onmouseover时,鼠标除了被设置事件的元素,还会触发其子元素: ...

  10. 【SPI】Polling Interrupt DMA

    三種將資料在I/O間傳送的方法有 1. Polling2. Interrupt-driven I/O3. DMA(Direct Memory Access) Polling:最簡單的方式讓I/O de ...