当前位置: 首页 > news >正文

做的网站显示图片很慢网站被禁用如何解决

做的网站显示图片很慢,网站被禁用如何解决,网站建设客户评价,网址域名大家好#xff0c;今天来介绍一下SQLite的相关知识#xff0c;并结合Java实现对SQLite数据库的操作。 SQLite是D.Richard Hipp用C语言编写的开源嵌入式数据库引擎。它支持大多数的SQL92标准#xff0c;并且可以在所有主要的操作系统上运行。 SQLite由以下几个部分组成#… 大家好今天来介绍一下SQLite的相关知识并结合Java实现对SQLite数据库的操作。 SQLite是D.Richard Hipp用C语言编写的开源嵌入式数据库引擎。它支持大多数的SQL92标准并且可以在所有主要的操作系统上运行。 SQLite由以下几个部分组成SQL编译器、内核、后端以及附件。SQLite通过利用虚拟机和虚拟数据库引擎(VDBE)是调试、修改和扩 展SQLite的内核变得更加方便。所有SQL语句都被编译成易读的、可以在SQLite虚拟机中执行的程序集。SQLite的整体结构图如下 值得一提的是袖珍型的SQLite竟然可以支持高达2TB大小的数据库每个数据库都是以单个文件的形式存在这些数据都是以B-Tree的数据结构形式存储在磁盘上。 在事务处理方面SQLite通过数据库级上的独占性和共享锁来实现独立事务处理。这意味着多个进程可以在同一时间从同一数据库读取数据但只有一 个可以写入数据。在某个进程或线程想数据库执行写操作之前必须获得独占锁。在获得独占锁之后其他的读或写操作将不会再发生。 SQLite采用动态数据类型当某个值插入到数据库时SQLite将会检查它的类型如果该类型与关联的列不匹配SQLite则会尝试将该值 转换成该列的类型如果不能转换则该值将作为本身的类型存储SQLite称这为“弱类型”。但有一个特例如果是INTEGER PRIMARY KEY则其他类型不会被转换会报一个“datatype missmatch”的错误。 概括来讲SQLite支持NULL、INTEGER、REAL、TEXT和BLOB数据类型分别代表空值、整型值、浮点值、字符串文本、二进制对象。 下面我们就来亲自操作一下SQLite数据库。 在操作之前朋友们要先下载SQLite数据库官方的下载页面是http://sqlite.org/download.html 我是在Windows下试验所以我选择了Precompiled Binaries For Windows下面的sqlite-shell-win32-x86和sqlite-analyzer-win32-x86的zip包前者是 SQLite数据库引擎后者是SQLite数据库分析器主要用于分析数据库的状态等信息大家也可以根据自己的情况去下载。下载完成后分别解压得到 两个可执行文件如图 这两个文件可以根据自己的喜好放置在指定的位置我将其放在D盘根目录下。下面我们就来一步一步操作SQLite 创建数据库 [sql] view plain copy D:\sqlite3 test.db  SQLite version 3.7.7.1 2011-06-28 17:39:05  Enter .help for instructions   Enter SQL statements terminated with a ;   sqlite .databases  seq  name             file     ---  ---------------  ----------------------------------------------------------    0    main             D:\test.db    sqlite   我 们执行了sqlite3命令参数就是数据库的名称如果该数据库已存在则使用如果不存在则新建一个这里我们简单的在当前位置创建了 test.db你也可以在任何存在的并且可写的目录下创建自己的数据库。如果对于SQLite的命令不太熟悉可以执行“.help”命令列出所有的 命令清单进行查看。 创建表 [sql] view plain copy sqlite CREATE TABLE person (id INTEGER PRIMARY KEY AUTOINCREMENT, name VARCHAR(20), age SMALLINT);   sqlite .tables  person  sqlite .schema person   CREATE TABLE person (id INTEGER PRIMARY KEY AUTOINCREMENT, name VARCHAR(20), age SMALLINT);  sqlite   在我们创建表之后可以用“.tables”命令去查看已有的表用“.schema”命令去查看表的结构如果后面没有表名做参数则将会输出所有表的建表语句。 插入数据 [sql] view plain copy sqlite INSERT INTO person VALUES (NULL, john, 30);   sqlite SELECT * FROM person;   1|john|30   从.sql文件导入数据 [sql] view plain copy sqlite .read test.sql   sqlite SELECT * FROM person;   1|john|30  2|david|35  3|henry|40  sqlite   分析数据库使用状态 [sql] view plain copy D:\sqlite3_analyzer test.db  /** Disk-Space Utilization Report For test.db     Page size in bytes.................... 1024   Pages in the whole file (measured).... 4   Pages in the whole file (calculated).. 4   Pages that store data................. 4          100.0%  Pages on the freelist (per header).... 0            0.0%   Pages on the freelist (calculated).... 0            0.0%   Pages of auto-vacuum overhead......... 0            0.0%   Number of tables in the database...... 4   Number of indices..................... 0   Number of named indices............... 0   Automatically generated indices....... 0  Size of the file in bytes............. 4096  Bytes of user payload stored.......... 39           0.95%   ...   备份数据库 备份 SQLite 数据库有两种方法。如果数据库正在使用中则应从命令行界面使用 .dump 命令。这样可以创建一个包含必要命令和数据的文件从而重新创建数据库。.dump 命令也可以用于备份数据库表。 [sql] view plain copy sqlite .dump  PRAGMA foreign_keysOFF;   BEGIN TRANSACTION;  CREATE TABLE person (id INTEGER PRIMARY KEY AUTOINCREMENT, name VARCHAR(20), age SMALLINT);  INSERT INTO person VALUES(1,john,30);  INSERT INTO person VALUES(2,david,35);  INSERT INTO person VALUES(3,henry,40);  DELETE FROM sqlite_sequence;  INSERT INTO sqlite_sequence VALUES(person,3);  COMMIT;  sqlite .output dump.sql   sqlite .dump  sqlite   我们可以指定输出的目标为一个文件然后再使用命令时输出信息就会写入指定的文件如果想恢复为标准输出可以这样设定 [sql] view plain copy sqlite .output stdout   sqlite .dump  PRAGMA foreign_keysOFF;   BEGIN TRANSACTION;  CREATE TABLE person (id INTEGER PRIMARY KEY AUTOINCREMENT, name VARCHAR(20), age SMALLINT);  INSERT INTO person VALUES(1,john,30);  INSERT INTO person VALUES(2,david,35);  INSERT INTO person VALUES(3,henry,40);  DELETE FROM sqlite_sequence;  INSERT INTO sqlite_sequence VALUES(person,3);  COMMIT;  sqlite   如果数据库没有处于使用状态则可以直接将数据库文件复制到安全位置。 最后我们可以使用“.quit”或“.exit”退出SQLite。 管理工具 现在网络上的SQLite管理工具很多我向大家推荐一款好用的工具SQLite Expert。 在Java中使用SQLite 我们要想在Java中使用SQLite需要下载SQLite相关驱动推荐大家到http://www.xerial.org/trac/Xerial/wiki/SQLiteJDBC页面去下载最新的驱动包现在最新版本是sqlite-jdbc-3.7.2.jar体积有点大因为它包含了Linux、Mac、Windows的本地类库如图 下载了驱动之后我们新建一个项目名为sqlite 在上图中我们引入sqlite驱动包到类路径下然后建立一个db的文件夹用于放置数据库文件。最后我们看一下Test.java代码 [java] view plain copy package com.scott.sqlite;  import java.sql.Connection;  import java.sql.DriverManager;  import java.sql.ResultSet;  import java.sql.Statement;    public class Test {      public static void main(String[] args) throws Exception {           Class.forName(org.sqlite.JDBC);           Connection conn  DriverManager.getConnection(jdbc:sqlite:db/test.db);           Statement stmt  conn.createStatement();            stmt.executeUpdate(DROP TABLE IF EXISTS person);           stmt.executeUpdate(CREATE TABLE person(id INTEGER, name STRING));           stmt.executeUpdate(INSERT INTO person VALUES(1, john));           stmt.executeUpdate(INSERT INTO person VALUES(2, david));           stmt.executeUpdate(INSERT INTO person VALUES(3, henry));           ResultSet rs  stmt.executeQuery(SELECT * FROM person);           while (rs.next()) {               System.out.println(id  rs.getInt(id)  , name  rs.getString(name));           }          stmt.close();          conn.close();      }  }   执行Test.java文件结果如下 这个时候在我们的db目录下就生成了一个test.db的文件 SQLite使用须知 目前没有可用于 SQLite 的网络服务器。从应用程序运行位于其他计算机上的 SQLite 的惟一方法是从网络共享运行。这样会导致一些问题像 UNIX® 和 Windows® 网络共享都存在文件锁定问题。还有由于与访问网络共享相关的延迟而带来的性能下降问题。 SQLite 只提供数据库级的锁定。 SQLite 没有用户帐户概念而是根据文件系统确定所有数据库的权限。 结束语 由于资源占用少、性能良好和零管理成本嵌入式数据库有了它的用武之地像Android、iPhone都有内置的SQLite数据库供开发人员使用它的易用性可以加快应用程序的开发并使得复杂的数据存储变得轻松了许多     本文转自 一点点征服   博客园博客原文链接http://www.cnblogs.com/ldq2016/p/5237684.html如需转载请自行联系原作者
http://www.pierceye.com/news/214729/

相关文章:

  • 企业网站搭建方案wordpress代码编辑器件
  • 网站的大小黄埔移动网站建设
  • 建设网站的语言中囯军事网
  • 网站开发职业访谈上海 建设工程质量监督站网站
  • 网站开发程序用什么好用新浪微博做网站
  • 什么免费推广网站好旅游订房网站开发需求文档
  • 网站运营是做啥的wordpress带会员中心主题
  • 网站设计怎么弄微信表情开放平台官网
  • 做网站纸张大小滨州网站建设模板建设
  • wordpress建站位置被跨境电商骗了怎么办
  • 巫山网站建设哇塞fm网站维护
  • 南宁百度网站推广计算机网站建设与推广
  • 汉中网站建设开发做微网站是订阅号还是服务号号
  • 中国商城网站建设h5响应式网站模板下载
  • 建设个商城网站需要多少钱网上商城系统平台官网
  • 软件开发与网站开发的区别最新源码
  • 电子商务网站建设策划中国网站建设公司排行
  • 网站的推广方式组合经验丰富的网站制作公司
  • 北京企业网站建设php制作公司网站首页
  • 保险网站建设网站 为何要 备案
  • 南宁网站设计可以找我wordpress 主题
  • 池州家居网站建设怎么样h5链接是什么意思
  • 网站添加站长统计代码凡科建站登录入口官方正版
  • 淮北做网站的公司有哪些手机网站设计只选亿企邦
  • 网站服务器打不开爱站工具网
  • php网站接口开发wordpress添加作者
  • 网站建设漂亮的模板创新网站建设工作
  • 国内做服装的网站有哪些方面wordpress邮件订阅
  • 建立个人网站主题安徽省建设厅网站打不开
  • 做互联网小程序 和网站有没有前景广州网站制作教程