android – sqlite表中的最大行数?

前端之家收集整理的这篇文章主要介绍了android – sqlite表中的最大行数?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
sql lite表是否有一些行限制?
当该表有超过6000行时,我的应用程序给出错误“没有这样的表x …”.
低于6000行,不要给出任何错误.

谢谢.

这是查询.

db = (new DatabaseHelper(this)).getWritableDatabase();

    cursor = db.rawQuery("SELECT continentes._id,continentes.ContinenteID,continentes.Continente" 
            + " FROM continentes"
            + " WHERE continentes.Continente LIKE ?"
            + " GROUP BY continentes.ContinenteID,continentes.Continente ORDER BY continentes.Continente",new String[]{"%" + searchText.getText().toString() + "%"});

这是我创建表的地方

@Override
public void onCreate(sqliteDatabase db) {
    String s;
    try {
        Toast.makeText(context,"Creating Database",2000).show();
        InputStream in = context.getResources().openRawResource(R.raw.continentes);
        DocumentBuilder builder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
        Document doc = builder.parse(in,null);
        NodeList statements = doc.getElementsByTagName("statement");
        for (int i=0; i<statements.getLength(); i++) {
            s = statements.item(i).getChildNodes().item(0).getNodeValue();
            db.execsql(s);
        }
    } catch (Throwable t) {
        Toast.makeText(context,t.toString(),50000).show();

解决了 !!!我只是想知道为什么我遇到这个问题.因为我使用Data创建和填充sql数据库文件,不能超过1.2mb.所以,我把他们分开了,没有更多的问题.谢谢大家.

解决方法

您可以获得有关 limits of SQLite的标准信息,但这不会导致您的问题,因为限制实际上非常高. (2到64的力量!)

您的问题很可能与您的应用程序插入记录和/或插入的记录类型有关.

你可以发布一些应用程序的代码以及它如何处理插入?阅读完之后我可以修改我的答案.

作为补充提示,请确保您已设置:

Cursor myCursor = db.rawQuery("PRAGMA synchronous=OFF",null); 
myCursor.close();

因为这可以真正实现improve the performance的大型批量插件.

猜你在找的Android相关文章