getReadableDatabase异常

今天在使用数据库的时候出现了sqlite returned: error code = 14, msg = cannot open file at source line的错误,但是在模拟器上运行是正常的,折腾了半天,把程序完全卸载后再重装后一切OK,上网查原因大概是数据库被打开后又进行了重装导致的原因。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
package com.example.myapplication; import android.content.ContentValues; import android.content.Context; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteOpenHelper; import androidx.annotation.Nullable; import com.example.myapplication.pass.User; public class MYsqliteopenhelper extends SQLiteOpenHelper { private static final String DB_NAME="MYsqlite.db"; private static final String create_users="create table users(name varchar(32) primary key,password varchar(32));"; private static final String create_int="create table int(name varchar(32)primary key,content varchar);"; public MYsqliteopenhelper(@Nullable Context context) { super(context, DB_NAME, null, 1); } @Override public void onCreate(SQLiteDatabase sqLiteDatabase) { sqLiteDatabase.execSQL(create_users); sqLiteDatabase.execSQL(create_int); } @Override public void onUpgrade(SQLiteDatabase sqLiteDatabase, int i, int i1) { } public long register(User u){ SQLiteDatabase db=getWritableDatabase(); ContentValues cv=new ContentValues(); cv.put("name",u.getName()); cv.put("password",u.getPassword()); long users=db.insert("users",null,cv); return users; } public boolean change(String name){ SQLiteDatabase db1=getReadableDatabase(); boolean result=false; Cursor users =db1.query("users",null,"name like ?",new String[]{name},null,null,null); if(users !=null){ while (users.moveToNext()){ return result; } } return false; } public boolean login(String name,String password){ SQLiteDatabase db1=getReadableDatabase(); boolean result=false; Cursor users =db1.query("users",null,"name like ?",new String[]{name},null,null,null); if(users !=null){ while (users.moveToNext()){ String password1=users.getString(1); result=password1.equals(password); return result; } } return false; } }
最新发布
06-08

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值