使用SQLite3开发java应用程序

载SQLite数据库的JDBC
这里给出一个中文站点的URL:
http://www.sqlite.com.cn/Upfiles/source/sqlitejdbc-v033-nested.tgz

将下载到的包解压后得到jar包 sqlitejdbc-v033-nested.jar 放到%JAVA_HOME%/lib 下,
并且将其添加到classpath系统环境变量中,我的classpath系统环境变量现在为:
.;%JAVA_HOME%/lib/sqlitejdbc-v033-nested.jar
在你的代码中引用这个驱动:
    Class.forName("org.sqlite.JDBC");
    Connection conn = DriverManager.getConnection("jdbc:sqlite:filename");//filename为你的SQLite数据名称
    // ... use the database ...
    conn.close();
   
示例程序如下:
 

import java . sql . * ;
import org . sqlite. JDBC;

public class TestSQLite
{
    public static void main( String [ ] args)
    {
        try
        {
         //连接SQLite的JDBC

         Class . forName ( "org.sqlite.JDBC" ) ;
         
         //建立一个数据库名zieckey.db的连接,如果不存在就在当前目录下创建之

         Connection conn = DriverManager . getConnection ( "jdbc:sqlite:zieckey.db" ) ;
         
         Statement stat = conn. createStatement ( ) ;
         
         stat. executeUpdate ( "create table tbl1(name varchar(20), salary int);" ) ; //创建一个表,两列

         
         stat. executeUpdate ( "insert into tbl1 values('ZhangSan',8000);" ) ; //插入数据

   stat. executeUpdate ( "insert into tbl1 values('LiSi',7800);" ) ;
   stat. executeUpdate ( "insert into tbl1 values('WangWu',5800);" ) ;
   stat. executeUpdate ( "insert into tbl1 values('ZhaoLiu',9100);" ) ;
 
         ResultSet rs = stat. executeQuery ( "select * from tbl1;" ) ; //查询数据

         while ( rs. next ( ) ) { //将查询到的数据打印出来

             System . out. print ( "name = " + rs. getString ( "name" ) + " " ) ; //列属性一

             System . out. println ( "salary = " + rs. getString ( "salary" ) ) ; //列属性二

         }
         rs. close ( ) ;
         conn. close ( ) ; //结束数据库的连接

        }
        catch ( Exception e )
        {
         e. printStackTrace ( ) ;
        }
    }
}

编译运行:   


E:/Coding/java/test>javac TestSQLite.java

E:/Coding/java/test>java TestSQLite
name = ZhangSan       salary = 8000
name = LiSi       salary = 7800
name = WangWu       salary = 5800
name = ZhaoLiu       salary = 9100
 
 
总结:本文介绍了嵌入式数据库SQLite在Java中的应用,
通过创建表、插入数据、查询等操作介绍了在Java中对数据库的操纵。

SQLite3命令操作大全 ========================================================>>

.数据库、表的建立,记录的添加、查询、修改和删除

F:/>sqlite3 database.db
sqlite> create table admin(username text,age integer);
sqlite> insert into admin values('kuang',25);
sqlite> select * from admin;
sqlite> update admin set username='kk',age=24 where username='kuang' and age=25;
sqlite> delete from admin where username='kk';

注:每条sql语句后必须以";"号结尾!

2.Sqlite系统命令

.bail ON|OFF           Stop after hitting an error.  Default OFF
.databases             List names and files of attached databases(查看目前挂的数据库)
.dump ?TABLE? ...      Dump the database in an SQL text format(以SQL格式输出表结构)
.echo ON|OFF           Turn command echo on or off
.exit                  Exit this program(退出程序)
.explain ON|OFF        Turn output mode suitable for EXPLAIN on or off.
.header(s) ON|OFF      Turn display of headers on or off
.help                  Show this message(显示帮助信息)
.import FILE TABLE     Import data from FILE into TABLE(把文件中的数据导入到表中,各字段用separator的值为分隔符)
.indices TABLE         Show names of all indices on TABLE
.load FILE ?ENTRY?     Load an extension library
.mode MODE ?TABLE?     Set output mode where MODE is one of:(输出格式)
                         csv      Comma-separated values(各字段以逗号为分隔符输出)
                         column   Left-aligned columns.  (See .width)(以.width设置的宽度显示各字段)
                         html     HTML code(html表格格式输出)
                         insert   SQL insert statements for TABLE(以insert SQL语句形式输出)
                         line     One value per line(field = value的形式逐行输出)
                         list     Values delimited by .separator string(各字段以separator的值为分隔符输出)
                         tabs     Tab-separated values
                         tcl      TCL list elements
.nullvalue STRING      Print STRING in place of NULL values
.output FILENAME       Send output to FILENAME(设置把查询输出到文件,后面的输出结果都保存到文件中)
.output stdout         Send output to the screen(设置把查询结果输出到屏幕,默认)
.prompt MAIN CONTINUE  Replace the standard prompts(修改提示符)
.quit                  Exit this program(退出)
.read FILENAME         Execute SQL in FILENAME(执行文件中的SQL语句)
.schema ?TABLE?        Show the Create statements(以SQL格式输出表结构)
.separator STRING      Change separator used by output mode and .import(修改分隔符)
.show                  Show the current values for various settings(显示配置信息)
.tables ?PATTERN?      List names of tables matching a LIKE pattern(看看有创建了多少表)
.timeout MS            Try opening locked tables for MS milliseconds(超时时间,单位:毫秒)
.width NUM NUM ...     Set column widths for "column" mode(设置列宽)

你可能感兴趣的:(java,sqlite,java,insert,数据库,sql,output)