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. cin, cin.getline等函数

    char s[100]; cin>>s;         // 输入一个字符串,遇“空格”.“TAB”.“回车”都结束 cin.getline(s, 20);    // cin.get( ...

  2. iframe自动高度

    <script> //设置iframe自动高度 function setIframe(id){ var fn = function(){ try{ var iframe = typeof ...

  3. powerdesigner,eclipse整合安装

    com.sybase.powerdesigner.eclipse.link path=D:\\dbs\\dbtools\\SAP\\PowerDesigner16

  4. java selenium (九) 常见web UI 元素操作 及API使用

    本篇介绍我们如何利用selenium 来操作各种页面元素 阅读目录  链接(link) <div> <p>链接 link</p> <a href=" ...

  5. CSS基础3

    1.变形样式 transform : none | <transform-function>,改变元素的大小,透明,旋转角度,扭曲度等.<transform-function> ...

  6. idea初使用之配置使用maven仓库

    idea使用的理由已经无需多说.现在已经超过了eclipse.java开发种占有44%.第一次使用上手还是挺难的.跟用惯了myeclipse的我来说.对于project的概念深入人心.还理解不了它的M ...

  7. Leetcode详解Maximum Sum Subarray

    Question: Find the contiguous subarray within an array (containing at least one number) that has the ...

  8. python 邮件

    1:文件形式的邮件 01.#!/usr/bin/env python3 02.#coding: utf-8 03.import smtplib 04.from email.mime.text impo ...

  9. java动手动脑和课后实验型问题第四讲

    1.完全"手写代码实现"随机数生成 动手动脑: 编写一个方法,使用以上算法生成指定数目(比如1000个)的随机整数. Modulus=231-1=int.MaxValue Mult ...

  10. 微信的redirect_uri参数错误解决办法

    近期,我们在调试独立的微信商城的时候,遇到了一些问题,比如:微信的redirect_uri参数错误,这是一个很普遍存在的问题,当然解决起来并不难,首先,我们得去找到发生这一事件的原因. 可能1:授权目 ...