Java 在SQLite Android中发现“没有这样的表”错误
我想为我的技术课程开发一个程序。但是,我的安卓系统有问题,我不知道如何解决它。如果有人帮助我,我将非常感激 我的家庭片段活动:Java 在SQLite Android中发现“没有这样的表”错误,java,android,Java,Android,我想为我的技术课程开发一个程序。但是,我的安卓系统有问题,我不知道如何解决它。如果有人帮助我,我将非常感激 我的家庭片段活动: @Override public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) { super.onViewCreated(view, savedInstanceState); carregaLista();
@Override
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
carregaLista();
registerForContextMenu(listaPedidos);
}
private void carregaLista() {
PedidoDAO dao = new PedidoDAO(getContext());
List<PedidoDTO> pedidos = dao.buscaPedidos();
dao.close();
listaPedidos = (ListView) getView().findViewById(R.id.lista_pedidos);
ArrayAdapter<PedidoDTO> adapter = new ArrayAdapter<PedidoDTO>(getContext(), android.R.layout.simple_list_item_1, pedidos);
listaPedidos.setAdapter(adapter);
TextView view = (TextView) getView().findViewById(R.id.textview_nao_ha_pedidos);
String resultadoo = dao.haPedidos();
if (resultadoo == null){
view.setText("Não há solicitações cadastradas");
}
}
当我尝试登录系统时,LogCat显示:
2020-07-11 13:19:00.6422686-2686/br.com.app.hemosis E/SQLiteLog:1没有这样的表格:Pedido
2020-07-11 13:19:00.650 2686-2686/br.com.app.hemosis E/AndroidRuntime:致命异常:主要
流程:br.com.app.hemosis,PID:2686
android.database.sqlite.SQLiteException:没有这样的表:Pedido代码1 sqlite_错误[1]:,编译时:从Pedido选择*
OBS:我是巴西人,英语不太好。很抱歉出现语法错误。在PedidoDAO类中,请用constructor回复oncreate
public PedidoDAO(Context context_)
{
SQLiteDatabase db = getReadableDatabase();
String sql = "CREATE TABLE Pedido(" +
"id_pedido INTEGER PRIMARY KEY," +
"nome_solicitante TEXT NOT NULL," +
"email_solicitante TEXT NOT NULL," +
"nome_paciente TEXT NOT NULL," +
"tipo_sanguineo TEXT NOT NULL," +
"local_internacao TEXT NOT NULL," +
"estado TEXT NOT NULL," +
"cidade TEXT NOT NULL," +
"motivo TEXT NOT NULL," +
"outras_info TEXT);";
db.execSQL(sql);
}
您还可以使用Room持久性库:通过此更改,我可以第一次登录,但是,在第一次出现错误后,显示Pedido表已经存在。你知道我是怎么解决的吗?试试这个查询如果不存在创建表。。。
public PedidoDAO(Context context_)
{
SQLiteDatabase db = getReadableDatabase();
String sql = "CREATE TABLE Pedido(" +
"id_pedido INTEGER PRIMARY KEY," +
"nome_solicitante TEXT NOT NULL," +
"email_solicitante TEXT NOT NULL," +
"nome_paciente TEXT NOT NULL," +
"tipo_sanguineo TEXT NOT NULL," +
"local_internacao TEXT NOT NULL," +
"estado TEXT NOT NULL," +
"cidade TEXT NOT NULL," +
"motivo TEXT NOT NULL," +
"outras_info TEXT);";
db.execSQL(sql);
}