当前位置:首页 » 安卓系统 » androidsqlite导入

androidsqlite导入

发布时间: 2022-05-31 02:59:58

‘壹’ android怎么连接sqlite数据库

SQLite 一个非常流行的嵌入式数据库,它支持 SQL 语言,并且只利用很少的内存就有很好的性能。此外它还是开源的,任何人都可以使用它。许多开源项目((Mozilla, PHP, Python)都使用了 SQLite.

Android 开发中使用 SQLite 数据库
Activites 可以通过 Content Provider 或者 Service 访问一个数据库。下面会详细讲解如果创建数据库,添加数据和查询数据库。
创建数据库
Android 不自动提供数据库。在 Android 应用程序中使用 SQLite,必须自己创建数据库,然后创建表、索引,填充数据。Android 提供了 SQLiteOpenHelper 帮助你创建一个数据库,你只要继承 SQLiteOpenHelper 类,就可以轻松的创建数据库。SQLiteOpenHelper 类根据开发应用程序的需要,封装了创建和更新数据库使用的逻辑。SQLiteOpenHelper 的子类,至少需要实现三个方法:
构造函数,调用父类 SQLiteOpenHelper 的构造函数。这个方法需要四个参数:上下文环境(例如,一个 Activity),数据库名字,一个可选的游标工厂(通常是 Null),一个代表你正在使用的数据库模型版本的整数。
onCreate()方法,它需要一个 SQLiteDatabase 对象作为参数,根据需要对这个对象填充表和初始化数据。
onUpgrage() 方法,它需要三个参数,一个 SQLiteDatabase 对象,一个旧的版本号和一个新的版本号,这样你就可以清楚如何把一个数据库从旧的模型转变到新的模型。

‘贰’ android sqlite 的导入( import)问题

注意数据库的每一列的字段都是一样的,这给我们一个很好的方法,可以用for循环的方法将没一列数据读出,并通过socket写入到流中,另一端则通过循环读流的方式,读一列就把数据存入SQLite数据库中。
另外有一个更为简洁的方法,如果你会Http、xml协议的话,可以将数据库中的数据以xml文件的格式发送到另一端,另一端就只用通过解析xml文件,并将数据保存到本地SQLite数据库中。

‘叁’ 如何把批量数据导入到android 的 sqlite 数据库

SQLite 数据库需要放在目录中的databases folder,我们可以使用“adb shell” 的 “mkdir”来创建这个文件夹

#ls
lib
#mkdir databases
#ls
databases
lib

默认创建的"databases"仅供 "root"权限访问,而在Android平台中,我们启动的每个“Activity”都是使用不同的“user”权限,所以我们需要用“chmod”命令来改变默认权限:

#chmod 777 databases
#ls -l
drwxrwxrwx root 2010-04-21 20:33 databases
drwxr-xr-x sysem 2010-04-21 20:31 lib

有了存放数据库的文件夹,可以开始创建数据库。使用“sqlite3”来创建

#cd databases
#sqlite3 note.db
SQLite version 3.5.9
Enter ".help" for instructions
sqlite>

现在这个数据库还是空的,里面没有存储任何数据或记录。当执行“sqlite3”命令后,命令提示符从#换成“sqlite>”,表示进入“SQLite”互动模式,可以做添加,删除,修改,查询等动作。

我们可以输入一下命令来创建table。
sqlite> CREATE TABLE dictionary (word VARCHAR(30), pronounce VARCHAR(50), comment NVARCHAR(100));

注意,SQLite命令和java代码一样,大小写代表不同符号,而且以分号结尾。sqlite3与许多SQL数据库软件
不同的是,它不在乎字段属于哪一种资料型态:sqlite3的字段可以储存任何东西:文
字、数字、大量文字(blub),它会在适时自动转换。

输入以上命令后,可以用一下命令来验证是否创建成功,这命令作用是列出目录下所有SQLite的数据库列表:
sqlite>.databases
seq name file
----- -------- ------------------------------------------------------------------------
0 main /data/data/com.wenjie.android.dictionary/databases/dictionary.db

“.table” 用来列出所有tables。
sqlite>.table
dictionary

".schema"用来现实出创建数据表的命令。
sqlite>.schema
CREATE TABLE dictionary (word VARCHAR(30), pronounce VARCHAR(50), comment NVARCHAR(100));

若有多个数据表,也可以在".schema"后面输入特定的数据表当参数,如".schema dictionary",这样只会打印出对应的数据表创建命令。

Apr 18, 2010

1. 进入到F:\Android\android-sdk_r05-windows\android-sdk-windows\tools 以后,

2. 应该使用adb push命令将硬盘上的文件复制到android AVD 的某个应用程序的databases文件夹下,执行命令如下:

adb push F:\en.txt data/data/com.wenjie.android.dictionary/databases
=>758 KB/s(813441 bytes in 1.046s)

3. 在AVD是运行的状态下,按着以下步骤:
(1) 运行输入 adb shell
(2) 进入命令界面后 输入 ls 指令 会列出文件的目录
(3) cd 进入你想要的目录里
(4) 一层一层进去后会发现 databases目录 你的数据文件就在这个目录下放着
(5) sqlite3 test (test就是你创建的数据库的名称 注意:不要加.db 后缀)
(6) 现在你就进入你创建的test数据库了使用 .tables 就可以查看所有的表了;
***************************************************************
adb shell

#cd /data/data/<package_name>/databases

# find data -name "*.db" -print
data/data/com.google.android.providers.contacts/databases/contacts.db
data/data/com.google.android.providers.googleapps/databases/accounts.db
data/data/com.google.android.providers.im/databases/im.db
data/data/com.google.android.providers.media/databases/media.db
data/data/com.google.android.providers.telephony/databases/mms.db
data/data/com.google.android.providers.telephony/databases/sms.db
data/data/com.google.android.providers.telephony/databases/telephony.db
data/data/com.google.android.providers.settings/databases/settings.db
data/data/com.google.android.maps/databases/maps.db
data/data/com.wenjie.android.dictionary/dictionary.db

or
#ls
com.wenjie.android.dictionary
com.android.camera
:
:
com.android.browser

#cd com.wenjie.android.dictionary
cd com.wenjie.android.dictionary

#ls
databases (** 只有databases这个文件夹)

#cd databases
cd databases

#ls
dictionary.db (**只有dictionary.db文件)

#sqlite3 dictionary.db
SQLite version 3.5.0
Enter ".help" for instructions
sqlite> .separator "|"
sqlite> .import en.txt dictionary
(**en.txt成功导入到dictionary.db)

其他sqlite的特别用法

1. 建立索引
如果资料表有相当多的资料,我们便会建立索引来加快速度。好比说:
create index film_title_index on film(title);
意思是针对film资料表的name字段,建立一个名叫film_name_index的索引。这个指
令的语法为
create index index_name on table_name(field_to_be_indexed);
一旦建立了索引,sqlite3会在针对该字段作查询时,自动使用该索引。这一切的操作
都是在幕后自动发生的,无须使用者特别指令。

2. sqlite可以在shell底下直接执行命令:
sqlite3 film.db "select * from film;"
输出 HTML 表格:
sqlite3 -html film.db "select * from film;"
将数据库“倒出来”:
sqlite3 film.db ".mp" > output.sql
利用输出的资料,建立一个一模一样的数据库(加上以上指令,就是标准的SQL数据库
备份了):
sqlite3 film.db < output.sql
在大量插入资料时,你可能会需要先打这个指令:
begin;
插入完资料后要记得打这个指令,资料才会写进数据库中:
commit;

Jun 26, 2010

利用空余的时间终于搞成了电子词典的部分功能。但是遇到以下问题:
(1).当要利用插入功能插入新单词是爆出如下问题:
android.database.sqlite.SQLiteException: error code 8: attempt to write a readonly database

原因是没有给SQLite数据库文件所在文件夹对应用户的读写权限。

#ls -l dictionary.db
-rw-r--r-- root root 5120 2010-05-09 14:32 dictionary.db

然后把权限改了就没有问题了。
#chmod 777 dictionary.db
chomod 777 dictionary.db
#ls -l dictionary.db
-rwxrwxrwx root root 5120 2010-05-09 14:32 dictionary.db

‘肆’ android怎么引用一个外部引入的sqlite文件

采用将项目中的sqlite文件拷到android内存卡上的固定位置,先判断位置上是否存在sqlite文件,不存在则复制文件。sqlite可放在res的raw目录下,亦可放在assets下,放在assets下,可新建其他层次目录,本例选择assets
1.首先,添加sdcard权限在AndroidManifest.xml
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
在activity中有如下代码

2.Java代码

button2.setOnClickListener(newButton.OnClickListener(){

@Override
publicvoidonClick(Viewarg0){
try{
StringDATABASE_PATH=android.os.Environment.getExternalStorageDirectory().getAbsolutePath()
+"/testdb";//将要存放于的文件夹
StringDATABASE_FILENAME="testDatabase.db";//文件名
StringdatabaseFilename=DATABASE_PATH+"/"+DATABASE_FILENAME;
Filedir=newFile(DATABASE_PATH);
//如果/sdcard/testdb目录中存在,创建这个目录
if(!dir.exists())
dir.mkdir();
//如果在/sdcard/testdb目录中不存在
//test.db文件,则从assetdb目录中复制这个文件到
//SD卡的目录(/sdcard/testdb)
if(!(newFile(databaseFilename)).exists()){
//获得封装testDatabase.db文件的InputStream对象
AssetManagerasset=getAssets();
InputStreamis=asset.open("db/testDatabase.db");
FileOutputStreamfos=newFileOutputStream(databaseFilename);
byte[]buffer=newbyte[8192];
intcount=0;
//开始复制testDatabase.db文件
while((count=is.read(buffer))>0){
fos.write(buffer,0,count);
}
fos.close();
is.close();
asset.close();
}
SQLiteDatabasemSQLiteDatabase=openOrCreateDatabase(databaseFilename,Activity.MODE_PRIVATE,null);//有则打开,没有创建
Cursorcur=mSQLiteDatabase.rawQuery("select*fromtable1",null);
if(cur!=null){
if(cur.moveToFirst()){
do{
intidColumnIndex=cur.getColumnIndex("id");
intnumColumnIndex=cur.getColumnIndex("num");
intdataColumnIndex=cur.getColumnIndex("data");
intid=cur.getInt(idColumnIndex);
intnum=cur.getInt(numColumnIndex);
Stringdata=cur.getString(dataColumnIndex);
System.out.println("id:"+id+";num:"+num+";data:"+data);
}while(cur.moveToNext());
cur.close();
}
}
mSQLiteDatabase.close();//关闭数据库连接
}catch(Exceptione){
e.printStackTrace();
}
//deleteDatabase("testDatabase.db");//删除数据库
}
});

‘伍’ android开发怎么把sqlite数据库导入真机

1、运行输入 adb shell (前提是模拟器正在运行)。
2、进入命令界面后 输入 ls 指令 会列出文件的目录。
3、cd 进入你想要的目录里。
4、一层一层进去后会发现 databases目录 你的数据文件就在这个目录下放着。
5、sqlite3 test (test就是你创建的数据库的名称 注意:不要加.db 后缀)。
6、现在你就进入你创建的test数据库了使用 .tables 就可以查看所有的表了。

‘陆’ 怎么将sqlite导入到android项目中 最好是有图片说明。

Android 集成了 SQLite 数据库 Android 在运行时(run-time)集成了 SQLite,所以每个 Android 应用程序都可以直接使用 SQLite 数据库,不需要导入操作,Android会自动创建。

Android 提供了 SQLiteOpenHelper 帮助用户创建一个数据库,只要继承 SQLiteOpenHelper 类,就可以轻松的创建数据库。SQLiteOpenHelper 类根据开发应用程序的需要,封装了创建和更新数据库使用的逻辑。

SQLiteOpenHelper 的子类,至少需要实现三个方法:

1. 构造函数,调用父类 SQLiteOpenHelper 的构造函数。这个方法需要四个参数:上下文环境(例如,一个 Activity),数据库名字,一个可选的游标工厂(通常是 Null),一个代表你正在使用的数据库模型版本的整数。

2.onCreate()方法,它需要一个 SQLiteDatabase 对象作为参数,根据需要对这个对象填充表和初始化数据。

3. onUpgrage() 方法,它需要三个参数,一个 SQLiteDatabase 对象,一个旧的版本号和一个新的版本号,这样你就可以清楚如何把一个数据库从旧的模型转变到新的模型。

‘柒’ android导入外部sqlite数据库 外部数据库后来有更新怎么同步到android上

1、 自己写一个方法,点击或者启动的时候,采用JDBC一条条的取数据来同步。如果有时间戳的列,那么你很好同步。 2. 我们采用的是,Local和服务器都采用SQLLite。需要同步的时候,直接把服务器的DB文件给拷贝下来,放到Local就可以了。至于提交到

‘捌’ 怎么把sqlite文件放到android里

可以将你的数据库.db文件复制到Android工程的res raw文件夹中
在Android中不能直接打开res raw目录中的数据库文件,而需要在程序第一次启动时将该文件复制到手机内存或SD卡的某个目录中,然后再打开该数据库文件
复制的基本方法是使用getResources().openRawResource方法获得res raw目录中资源的InputStream对象,然后将该InputStream对象中的数据写入其他的目录相应的文件中
最后可以使用SQLiteDatabase.openOrCreateDatabase方法来打开任意目录中的SQLite数据库文件

‘玖’ android怎么将.sql格式的文件导入到Sqlite去

1、xxxx.sql文件为可sql语句,可以用记事本打开,然后将内容到sqlite中执行




2、如果是用这个工具可以选择sql-》load sql script之间导入sql文件

‘拾’ android sqlite怎么批量插入数据

解决方法:
添加事务处理,把5000条插入作为一个事务
dataBase.beginTransaction(); //手动设置开始事务
//数据插入操作循环
dataBase.setTransactionSuccessful(); //设置事务处理成功,不设置会自动回滚不提交
dataBase.endTransaction(); //处理完成

将数据库“倒出来”:
sqlite3 film.db ".mp" > output.sql
利用输出的资料,建立一个一模一样的数据库(加上以上指令,就是标准的SQL数据库
备份了):
sqlite3 film.db < output.sql
在大量插入资料时,你可能会需要先打这个指令:
begin;
插入完资料后要记得打这个指令,资料才会写进数据库中:
commit;

热点内容
vc6编译操作 发布:2025-08-20 23:16:14 浏览:869
时统服务器搭建 发布:2025-08-20 23:15:58 浏览:907
c语言单字符 发布:2025-08-20 23:15:12 浏览:70
outlook发送服务器地址在哪里 发布:2025-08-20 23:06:13 浏览:1000
c语言培训心得 发布:2025-08-20 23:02:20 浏览:46
如何打开raw服务器镜像 发布:2025-08-20 22:48:13 浏览:76
1分钟造解压神器 发布:2025-08-20 22:46:28 浏览:378
云服务器搭建spark 发布:2025-08-20 22:41:19 浏览:36
好用免费云服务器 发布:2025-08-20 22:16:44 浏览:609
傲慢与偏见ftp 发布:2025-08-20 22:11:15 浏览:904