Android读取sql文件并导入数据库

本文介绍了在Android中如何处理SQL文件导入数据库的情况。通常建议将SQL文件转换为DB文件直接放入Android应用中,但在某些场景下,如版本更新时保持用户数据,可能需要直接执行SQL文件。可以通过读取assets中的SQL文件,将其内容转化为字符串,然后在获取到可写数据库后执行这些SQL命令来实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

sql文件一般不应该由Android直接执行的,正常应该是先转成db文件直接放入Android中,Android只需执行一些简单sql命令。

但有时有这样的需求怎么办呢,比如你数据库是上个版本放进的,这个版本的更新就是一个sql文件,你重新放一个数据库那用户数据都没了。

这个还是很简单的,从assets读取到sql文件,转成String,获取writeableDatabase,然后执行sql就行了。

public class MainActivity extends Activity {

    /**
     * 按行读取txt
     * 
     * @param is
     * @return
     * @throws Exception
     */
    private String readTextFromSDcard(InputStream is) throws Exception {
        InputStreamReader reader = new InputStreamReader(is);
        BufferedReader bufferedReader = new BufferedReader(reader);
        StringBuffer buffer = new StringBuffer("");
        String str;
        while ((str = bufferedReader.readLine()) != null) {
            buffer.append(str);
            buffer.append("\n");
        }
        return buffer.toString();
    }

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值