数据库之SQLite

对于初次接触到数据库的,我们第一步学习的应该了解什么是数据库,怎么样创建数据库,然后学习数据库最近基本的语法规则,增、删、改、查。


一、数据哭概述

     数据库概念:(Database)是按照数据结构来组织、存储、管理数据的仓库,随着技术信息技术的市场的发展,数据库不在仅仅用来存储和管理数据,而提供用户所需的各种数据管理的方式。

     数据库的特点:
     *数据结构化
     *数据的共享性高,冗余度低,易扩充
     *数据的独立性高
     *数据由DBMS统一管理和控制

     数据库管理系统:
     *数据库管理系统(Database Management System)是一种操纵和管理数据库的大型软件,用于建立、使用和维护数据库,简称DBMS.
     *用户通过DBMS访问数据库中的数据,数据库管理员通过DBMS进行数据库维护工作。它可使多个应用程序和用户用不同的方式同时或不同时刻去建立、修改和查询数据库
     *DBMS提供数据定义语言DDL(Data Definition Language)与数据库操作语言DML(Data Manipulation Language),提供用户定义数据库的模式结构与权限约束,实现数据的追加、删除等操作。
     *常见的关系型数据库管理系统:Oracle,DB2, SQLServer, MySql, SQLite等
     *DBMS必须提供以下数据控功能:
          ~数据的安全性(Security)保护
          ~数据的完整性(Integrity)检查
          ~并发(Concurrency)控制
          ~数据控恢复(Recovery)

     结构化查询语言SQL
     *结构化查询语言(Structured Query Language)简称SQL,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系型数据库系统
     *结构化查询语言是高级的非过程化编程语言,允许用户在高级数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以,具有完全不同底层结构的数据库系统可以使用xingtong 的数据结构化查询语言作为数据输入与管理的接口

     *结构化查询语言SQL遵循ANSI SQL 标准

     *SQL语言包含4个部分
          1、数据定义语言(DDL)
               例如:CREATE 、ALTER等语句
          2、数据操作语言(DML)
               例如:INSERT(插入)、UPDATE(修改)、DELETE(删除)语句
          3、数据查询语言(DQL)
               例如:SELECT语句
          4、数据控制语言(DCL)
               例如:GRANT、REVOKE  、 COMMIT、 ROLLBACK等语句


SQLite数据库
     *官方网站:www.sqlite.org
     *SQLite是款轻型关系数据管理系统,设计目标是嵌入式环境,目前已经在很多嵌入式产品中得到使用
     *SQLite占用资源非常低,在嵌入式设备中,可能只要几百k的内存,支持目前主流的操作系统,同时能够跟很多程序语言相结合,如Tcl、C#、java 等,比起Mysql、PostgreSQL这两款开源数据库管理系统,它的处理速度更快
     *SQLite第一个Alpha版本诞生于2000年5月,目前较新的版本是SQLite3
     
      *SQLite有很多优秀的图形化管理工具,如:SQLite developer,,sqliteadminstrator,sqlite database browser。这些工具都已经内置了SQLite3数据库,无需进行数据库连接配置,可直接使用。使用这些图形化管理工具,你可以更直观而且可以不用写 sql句。但建议初学者还是写sql语句。

     基本sql语法
  • 数据类型和约束
      数据类型
  •   大多数数据库表的字段都制定了相关的数据类型,相当于java 语言编程中变量的数据类型。SQLite采用动态数据类型,可以对字段不制定任何数据类型,  SQLite会根据存入值自动判断。
  • SQLite具有以下常用的数据类型
    1.  NULL: 空值相当于java中的null
    2. INTEGER:带符号的整形,相当于java中的int 型
    3. REAL:浮点数字,相当于java中float/double型
    4. TEXT/VARCHAR:  字符串文本,相当于java中String型  
    5. BLOB:二进制对象,相当于java中byte数组 (blob通常用来存储一些声音,图片等等)  
  • 约束
    • 数据库表中存储数据时,有一些数据明显的约束条件
    • 比如一家公司的关于员工的时间表,其中字段可能有如下约束:
      • 年龄  - 至少大于20岁
      • 国籍  -  默认中国
      • 姓名  -  不能为空
      • 员工号 - 唯一
    • CREATE TABLE  创建表时,应该将每个字段的约束条件进行说明(如果有的话),以后往表里输入数据的时候 系统会自动检查是否满足约束条件,如果不满足会报错

  • SQLite有如下的约束
    • NOT NULL  - 非空
    • UNIQUE      - 唯一
    • PRIMARY KEY - 主键
    • FOREIGN KEY - 外键
    • CHECK            - 条件检查
    • DEFAULT         - 默认

  • 语法
    • create table tabname(col1 type1[not null] [primary key],col2 type2[not null],..)
create 关键字 创建表  ,tabname 表名,大括号里表示要添加的字段,由字段名,字段类型,用逗号分隔,中括号表示约束,约束按需求添加约束。
    
    • insert into tabale1(field1,field2...)values(value1,value2...)
insert into 关键字表示插入,table1表示数据库表的名称,括号里field1,field2字段要和后面的values的value1,value2 一一对应。
          在java里一张表,代表着一个对象,表里的一条数据代表着一个实例,数据里的一个字段代表一个属性。

    • select * from table1 where 范围
                    select 关键字 查询,*代表药查询的所有字段,where 查询的条件,如果没                         
有where就查询出所有的字段。

    • update table1  set field1 = value1 where 范围
update 关键字 修改 ,set 把field1字段的值改为value1 ,where是咬过滤的条件。

    • delete from table1 where 范围
delete 关键字 删除,where删除的条件,如何没有where就把这个表给清空了。



     

以上在Mac终端上运行基本的sql语句。
Mac 不需要安装sqlite,系统自带了。












     

     
      
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值