java 连接 有密码的sqlite 怎样连接

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 连接 有密码的sqlite 怎样连接相关的知识,希望对你有一定的参考价值。

java 连接 有密码的sqlite 怎样连接
没密码的是这样
Class.forName("org.sqlite.JDBC");
conn = DriverManager.getConnection("jdbc:sqlite:.\\DB\\**.db3");
有密码的呢
回一楼:DriverManager.getConnection("jdbc:sqlite:.\\DB\\**.db3","name","password");之前也试过了 没用 依然会有这个错误
file is encrypted or is not a database
回二楼:不晓得你回答的是什么

1.去网站http://files.zentus.com/sqlitejdbc/下载sqlitejdbc.根据自已需要,下载sqlitejdbc.(sqlitejdbc有两个版本,一种是pure的一种是native的。native的速度快。它放在**-bin.tgz里。我下的就是这种sqlitejdbc-v056-bin.tgz)

2. 下载后解压sqlitejdbc-v056-bin.tg ,有以下几个文件: libsqlitejdbc.so,sqlitejdbc.dll,
libsqlitejdbc.jnilib,sqlitejdbc-v056-native.jar。
其中libsqlitejdbc.so是linux下的动态链接库,sqlitejdbc.dll是windows下的动态链接库, libsqlitejdbc.jnilib是Mac下的动态链接库。

3.根据自已的操作系统将sqlitejdbc-v056-native.jar与对应动态链接库放到jdk/jre/lib/ext里。(我的是linux,则将sqlitejdbc-v056-native.jar 与libsqlitejdbc.so 放到jdk/jre/lib/ext中)。

3.如果你只是随便的将sqlitejdbc.jar放在任一目录,并且你又是run in pure-java mode(纯java模式下运行?是这么译吗)请参考http://www.xerial.org/trac/Xerial/wiki/SQLiteJDBC

4.如果你已看了第三步的网站,以下可以不用看了,下面的介绍只是复述3里面的而已。

5.http://www.xerial.org/trac/Xerial/wiki/SQLiteJDBC 的实例经验证可以运行。
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class Sample

public static void main(String[] args) throws ClassNotFoundException

// load the sqlite-JDBC driver using the current class loader
Class.forName("org.sqlite.JDBC");

Connection connection = null;
try

// create a database connection
connection = DriverManager.getConnection("jdbc:sqlite:sample.db");
Statement statement = connection.createStatement();
statement.setQueryTimeout(30); // set timeout to 30 sec.

statement.executeUpdate("drop table if exists person");
statement.executeUpdate("create table person (id integer, name string)");
statement.executeUpdate("insert into person values(1, \'leo\')");
statement.executeUpdate("insert into person values(2, \'yui\')");
ResultSet rs = statement.executeQuery("select * from person");
while(rs.next())

// read the result set
System.out.println("name = " + rs.getString("name"));
System.out.println("id = " + rs.getInt("id"));


catch(SQLException e)

// if the error message is "out of memory",
// it probably means no database file is found
System.err.println(e.getMessage());

finally

try

if(connection != null)
connection.close();

catch(SQLException e)

// connection close failed.
System.err.println(e);



参考技术A getConnection(url,user,password),用这个三个参数的就好了,
或者你把用户名和密码都写入到URL中,你这个数据库我没有用过(我一般是mysql),不过我想都是一样的。
参考技术B getConnection(url,user,password),用这个三个参数的就好。
或者把用户名和密码都写入到URL中

用java怎么连接一个不带账号密码的mongodb数据库

参考技术A package maven.demo.test;

import java.util.ArrayList;
import java.util.List;

import com.mongodb.BasicDBObject;
import com.mongodb.DB;
import com.mongodb.DBCollection;
import com.mongodb.DBObject;
import com.mongodb.Mongo;
import com.mongodb.QueryOperators;

public class MongoDB
private static void print(String str)
System.out.println(str);

public static void main(String[] args)
try
//创建连接
Mongo m=new Mongo("127.0.0.1", 27017);
//得到数据库
DB db=m.getDB("test");
//得到所有数据库
// List<String> colls=m.getDatabaseNames();
// for(String str:colls)
// System.out.println(str);
//

// //得到所有的集合(表)
// for(String collection:db.getCollectionNames())
// System.out.println(collection);
//

//删除一个数据库
//m.dropDatabase("sun");

//得到sun表
DBCollection coll=db.getCollection("things");

//查看一个表的索引
// for(DBObject index:coll.getIndexInfo())
// System.out.println(index);
//

// DBObject myDoc=coll.findOne();
// System.out.println(myDoc);

//添加
// BasicDBObject doc=new BasicDBObject();
// doc.put("name", "sunshan");
// doc.put("sex", "男");
// doc.put("age", 22);
//coll.insert(doc);

//删除
//coll.remove(doc);

// BasicDBObject doc1=new BasicDBObject();
// doc1.put("i", 0);
// doc1.put("j", "foo");
// BasicDBObject doc2=new BasicDBObject();
// doc2.put("hello", "world");
// doc1.put("doc2", doc2);
// coll.insert(doc1);

//修改
// BasicDBObject doc3=new BasicDBObject();
// doc3.put("x", 6);
// BasicDBObject doc4=new BasicDBObject();
// doc4.put("x", 1);
// coll.update(doc3, doc4,true,false);
//如果数据库不存在就添加 |多条修改 false只修改第一天,true如果有多条就不修改

//条件查询
//System.out.println(coll.find(doc4));

//coll.findAndRemove(doc4);

// //批量插入
// List<DBObject> datas=new ArrayList<DBObject>();
// for(int i=0;i<10;i++)
// BasicDBObject bd=new BasicDBObject();
// bd.put("name", "data");
// bd.append("age", i);
// datas.add(bd);
//
// coll.insert(datas);

//添加
// BasicDBObjectBuilder documentBuilder = BasicDBObjectBuilder.start();
// documentBuilder.add("database", "mkyongDB");
// documentBuilder.add("table", "hosting");
// BasicDBObjectBuilder documentBuilderDetail = BasicDBObjectBuilder.start();
// documentBuilderDetail.add("records", "99");
// documentBuilderDetail.add("index", "vps_index1");
// documentBuilderDetail.add("active", "true");
// documentBuilder.add("detail", documentBuilderDetail.get());
// coll.insert(documentBuilder.get());

//添加
// Map<Object,Object> map=new HashMap<Object,Object>();
// map.put("a", 1);
// map.put("b", "b");
// coll.insert(new BasicDBObject(map));

//添加
// String json ="'1' : '1','2' : '2',"+"'11' : '1' : 1, '2' : '2', '3' : '3'";
// DBObject dbobject=(DBObject)JSON.parse(json);
// coll.insert(dbobject);

//更新
// BasicDBObject bdo=new BasicDBObject();
// bdo.put("x", 11);
// coll.update(new BasicDBObject().append("x", 0), bdo);

//更新
// BasicDBObject bdo=new BasicDBObject().append("$inc", new BasicDBObject().append("x", 12));
// coll.update(new BasicDBObject().append("x", 11), bdo);

//更新
//如果不使用$set 直接是 age则所有的都会更新
//根据age为9条件把name:data修改为 name:sun
// BasicDBObject bdo=new BasicDBObject().append("$set", new BasicDBObject().append("name", "sunshan"));
// coll.update(new BasicDBObject().append("age", 9), bdo);

//更新
//根据name为data条件把age:批量修改为 age:age
// BasicDBObject bdo=new BasicDBObject().append("$set", new BasicDBObject().append("age", "age"));
// coll.update(new BasicDBObject().append("name", "data"), bdo,false, true);

//查询age=1
// print("find:"+coll.find(new BasicDBObject("age", 1)).toArray());
//查询age<=1
// print("find: "+coll.find(new BasicDBObject("age", new BasicDBObject("$lte", 1))).toArray());
//查询age>=1
// print("fint: "+coll.find(new BasicDBObject("age", new BasicDBObject("$gte", 1))).toArray());
//查询age!=1
// print("fint: "+coll.find(new BasicDBObject("age", new BasicDBObject("$ne", 1))).toArray());
//查询age=1,2,3
// print("fint: "+coll.find(new BasicDBObject("age", new BasicDBObject(QueryOperators.IN ,new int[]1,2,3))).toArray());
//查询age!=1,2,3
// print("find: "+coll.find(new BasicDBObject("age" ,new BasicDBObject(QueryOperators.NIN ,new int[]1,2,3))).toArray());

// print("find: "+coll.find(new BasicDBObject("age" ,new BasicDBObject(QueryOperators.EXISTS ,true))).toArray());
//查询age属性
// print("find: "+coll.find(null ,new BasicDBObject("age" ,true)).toArray());

// List<DBObject> list=coll.find().toArray();
// for(Object obj:list)
// System.out.println(obj);
//

//true查询出来存在的 /false 查询出来不存在的
//print(""+coll.find(new BasicDBObject("y",new BasicDBObject(QueryOperators.EXISTS,false))).toArray());

// DBObject dbc=new BasicDBObject();
// dbc.put("name", 1111);
// List<DBObject> list=new ArrayList<DBObject>();
// list.add(dbc);
// System.out.println(coll.insert(list).getN());

// //查询部分数据块
// DBCursor cursor=coll.find().skip(1);
// while(cursor.hasNext())
// System.out.println(cursor.next());
//

// DBCursor cur=coll.find(); //DBCursor cur=coll.find().limit(2);
// while(cur.hasNext())
// System.out.println(cur.next());
//
//System.out.println(cur.getCursorId()+" "+cur.count()+" "+JSON.serialize(cur));

//条件查询
BasicDBObject doc5=new BasicDBObject();
doc5.put("$gt", 1);
doc5.put("$lt", 3);
print("find 21<y<23:"+coll.find(new BasicDBObject("y", doc5)).toArray());
// BasicDBObject doc5=new BasicDBObject();
// doc5.put("$gt", 1);
// doc5.put("$lt", 3);
// BasicDBObject doc6=new BasicDBObject();
// doc6.put("x", doc5);
// System.out.println(coll.find(doc6));

catch (Exception e)
e.printStackTrace();





1

以上是关于java 连接 有密码的sqlite 怎样连接的主要内容,如果未能解决你的问题,请参考以下文章

怎样设置有账号密码的代理IP?

手机的wifi密码怎样破

java程序连接数据库

苹果怎样找到服务器的密码

怎样保持http连接

Navicat怎么连接Sqlite数据库