如何将SQLite的Real值写成Java BigDecimal值?
我有这样的课程: public class DeliveryItem { private int _id; private String _invoiceNumber; private String _UPC_PLU; private String _vendorItemId; private int _packSize; private String _description; private BigDecimal _cost; private BigDecimal _margin; private BigDecimal _listPrice; private int _departmentNumber; private String _subdepartment; private String _quantity; public void setID(int id) {
2 2024-03-30
编程技术问答社区
处理预填充数据库的sqlite数据库升级问题
在Android Studio发布了新版本的Android应用程序后,我遇到问题. 这是问题: 我有一个带有SQLITE数据库的测验应用程序,其中已使用SQLite数据库浏览器填充了问题和答案.现在,当我在数据库表中添加新问题并创建一个新的数据库版本时,数据库似乎不会在更新的应用中反映出来. 我在数据库升级上在线上找到的教程仅在应用程序启动时创建的数据库中.喜欢 this 问题:当我在SQLite中已经存在的表格中添加新记录时,如何处理数据库升级? 我尝试的是: (1)在DatabaseOpenhelper OnUpgrade()方法中,我放下了添加了新记录的表. 结果:应用程序崩溃活动开始 (2)将OnUpdrade()方法留为空. 结果:新添加的记录未反映 额外的数据:数据库键型孔()方法也为空 代码 @Override public void onCreate(SQLiteDatabase db) { } @Override
6 2024-02-18
编程技术问答社区
SQLite onUpgrade()的挫折
我正在使用一个预处理的数据库.现在使用Mozilla的SQLite Manager,现在我有一个虚拟数据库,只是想测试Onupgrade方法,因此我在其中一列中更改了字符串,将其导出为新数据库,并且您会在我的代码中看到,试图打开新更新版本.同样重要的是,我在代码中手动更新版本号 private static final int DB_VERSION = 3; 和onupgrade if (newVersion == 3) { Log.e("WORKED!!", "onUpgrade executed"); 所以下次我将这两个数字更新为4.不确定我是在做正确的问题还是出了什么问题,但是我收到了日志消息,只是看不到应用程序中更新的数据. import android.content.Context; import android.database.Cursor; import android.database.sqlite.SQLiteDatabas
2 2024-02-18
编程技术问答社区
SQLiteDatabase error "sqlite: (1) near ") ": syntax error"
sqlite:(1)接近")":语法错误 我不明白,我认为(并且仍然这样)将每个空间(和Ect)放置在. 也许有人可以帮助我? 感谢您的时间 public class DatabaseHandler extends SQLiteOpenHelper { private static final int DATABASE_VERSION = 3; private static final String DATABASE_NAME = "rekordai"; private static final String TABLE_REKORDAI = "rekordai"; private static final String KEY_ID = "id"; private static final String KEY_REKORDAI = "rekordai"; public DatabaseHandler(Conte
8 2024-02-18
编程技术问答社区
如何删除SQLite数据库中的特定行
我是Android的新手,我很难理解sqlite数据库中的删除函数.我已经使用字符串 创建了我的数据库 private static final String TABLE_NAME="NameInfo"; private static final String POSITION_DB ="_id"; private static final String Name_DB ="name"; private static final String JSONOBJECT_DB="json"; private static final String TIMESTAMP_DB="time"; private static final String USERRATING_DB="userrating"; private static final String DATABASE_NAME ="database.db"; private fin
14 2024-02-18
编程技术问答社区
如何用资产文件夹中的数据库来填充ListView?
所以我想制作一个应用程序,列出我存储的食物,这些食品存储在我创建的已经存在的SQLITE数据库中.我在/资产/数据库文件夹中有我的fooddb.db文件. 我知道我必须使用数据库Helper类.我已经完成了很多研究,我已经查看了许多Stackoverflow帖子和YouTube教程,但没有一个人满足我从资产文件夹中现有数据库中填充ListView的标准.我发现它们很混乱,尚不清楚. 有人可以清楚地向我解释我该怎么做?我真的很挣扎,并感谢一些指导. 我的数据库称为foodDatabase.db. 我的数据库包含1个名为dataset的表 表dataset包含柱状:id, name, description, protein, fat, carbohydrates, energy, starch, sugar, cholesterol. 解决方案 首先要注意几个点. 1-您已经说该文件为 fooddb.db ,但随后说该数据库称为 fooddatabase.
0 2024-02-18
编程技术问答社区
java.lang.OutOfMemoryError: 从Sqlite Android读取数据时[内存耗尽]。
我成功地将数据保存在SQLite DB中.但是我在从我的sqlite db读取数据时会遇到错误,然后我的应用程序崩溃了. 错误消息 01-01 05:42:13.916 607-607/com.example.eyesaver I/dalvikvm: | sysTid=607 nice=0 sched=0/0 cgrp=apps handle=68313184 01-01 05:42:13.916 607-607/com.example.eyesaver I/dalvikvm: | sysTid=607 nice=0 sched=0/0 cgrp=apps handle=68313184 01-01 05:42:13.916 607-607/com.example.eyesaver I/dalvikvm: | state=R schedstat=( 0 0 0 ) utm=2910 stm=2910 core=0 01-01 05:42:13.916 607-60
4 2024-02-18
编程技术问答社区
SQLiteOpenHelper: onCreate()方法没有在物理设备上调用
我已经在版本4.4中运行的Android模拟器进行了许多测试. 在我的应用程序上,我使用sqliteopenhelper创建一个带有一个表的SQLite数据库: package com.findwords.modeles; import android.content.Context; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteException; import android.database.sqlite.SQLiteOpenHelper; import com.findwords.MainActivity; import com.findwords.controleurs.MenuController; import java.io.FileOutputStream; import java.io.IOException; import java
6 2024-02-18
编程技术问答社区
在android sqlite中,升级方法没有被调用
我在应用程序中使用了预处理的SQLITE数据库,我正在尝试在Android应用程序中更新我的数据库,但是当我增加版本编号时,onUpgrade方法未被调用.我尝试谷歌搜索,在stackoverflow上搜索,但没有任何帮助.如果我在构造函数中删除this.getReadableDatabase(),则会调用onUpgrade方法,但我无法查询数据并返回错误. 这是我的代码. public class DatabaseHelper extends SQLiteOpenHelper { private static final String DB_NAME = "dictionary.db"; private static final int DB_VERSION = 1; private String DB_PATH = null; private static final String TABLE
6 2024-02-18
编程技术问答社区
RoomDatabase.Callback()的onCreate()在成功调用.build()后没有被调用。
我已经使用Room persisdent Lib创建了Moviedatabase.根据RoomDatabase.Callback中onCreate()方法的文档,ongreate() 首次创建数据库并创建所有表. 我称为buildpersistentdb()之后发生的是,我从MovieDatabase类中收到了logeDatabase class的日志,该类带有@database注释,但是roomdatabase.callback中的ongreate()logs是 尽管我打电话给: 从未打电话: this.mMovieDatabase = this.mMovieDBPersistentBuilder.fallbackToDestructiveMigration().build(); 我创建数据库的方式在buildpersistentDB()方法中清楚地显示. 我还发布了Moviedatabase类,如下所示. 我想知道为什么我没有从Room中收到ongreate(
18 2024-02-18
编程技术问答社区
在android 2.X和3.X上的SQLiteOpenHelper的问题
因此,我犯了一个很大的错误,即在Android 4.0 +上测试我的代码,并认为它在其他版本上可以正常工作.但是我正面临2.x和3.x的问题. 首先是代码: public class HelperDB extends SQLiteOpenHelper implements BaseColumns { public static final int DATABASE_VERSION = 2; public static final String DATABASE_NAME = "MYDB.db"; public static final String TABLE_NAME = "MYtable"; public static final String TABLE_NAME_LOGO = "MYLogos"; public static final String COLUMN_NAME_1 = "xxxxx"; public static final String
16 2024-02-18
编程技术问答社区
插入android.database.sqlite.sqliteconstraintexception错误代码19约束失败的错误。
我知道这个问题有很多线程,但我自己的问题都没有. 我在数据库中连接了一个旋转器,该微调器显示了特定表的外键.并且似乎插入错误. 02-18 11:44:34.500: E/SQLiteDatabase(20811): Error inserting ConsumerName=android.database.sqlite.SQLiteCursor@4144fa58 kWh=801.0 _id=65324 Date=2013 -2-18 Previous=98 Current=899 02-18 11:44:34.500: E/SQLiteDatabase(20811): android.database.sqlite.SQLiteConstraintException: error code 19: constraint failed public class ElectricMeterReader extends Activity { private lon
6 2024-02-18
编程技术问答社区
真的有必要在每次应用程序启动时创建SQLite表吗?
我在一个以上的SQLite教程中注意到,该表是在扩展SQLiteOpenHelper的类的onCreate()事件中重新创建的.我已经在Firefox加载项的帮助下已经在Android环境(Eclipse IDE)之外创建了SQLite数据库和表.数据库表位于预期位置: C:\aXX3&Space\Android\workspace\OnDemandAndAutomatic_Project\assets 对我来说似乎很奇怪,我每次都必须以编程方式重新创建它们(显然,它们继续存在并保留数据,还是重点是什么)?但是,我现在对此应用程序有一个严重的问题,这使我提出了我的问题: 真的有必要提醒Android关于数据库吗? 令我的恼火,我只是意识到,我没有将它们放在C:\aXX3&Space\Android\workspace\OnDemandAndAutomatic\assets中,而不是在C:\aXX3&Space\Android\workspace\OnDemandA
26 2024-02-18
编程技术问答社区
SQLite数据库迁移似乎只在Espresso测试中部分适用
我们有一个SQLITE数据库和一个相应的SQLiteOpenHelper子类.这个助手具有onDowngrade我想为咖啡测试编写的实现. 完整的实施可用这是它的简化版本: @Override public void onDowngrade(SQLiteDatabase db, int oldVersion, int newVersion) { db.execSQL("CREATE TABLE IF NOT EXISTS foo_tmp (_id integer primary key, bar text not null, baz text not null);"); db.execSQL("INSERT INTO foo_tmp(_id,bar,baz) SELECT _id,bar,baz FROM foo;"); db.execSQL("DROP TABLE IF EXISTS foo;"); db.execSQL("RENAME TA
10 2024-02-18
编程技术问答社区
为什么我们需要在SQLiteOpenHelper类中使用onUpgrade(); 方法?
i m遵循本教程. 11/android-sqlite-database-tutorial/ 任何身体都可以让我清楚这一块代码. // Creating Tables @Override public void onCreate(SQLiteDatabase db) { String CREATE_CONTACTS_TABLE = "CREATE TABLE " + TABLE_CONTACTS + "(" + KEY_ID + " INTEGER PRIMARY KEY," + KEY_NAME + " TEXT," + KEY_PH_NO + " TEXT" + ")"; db.execSQL(CREATE_CONTACTS_TABLE); } // Upgrading database @Override public void onUpgrade(SQLiteDatabase db, int oldV
4 2024-02-18
编程技术问答社区
net.sqlcipher.database.sqliteexception:文件不是数据库:,当编译时:从sqlite_master中选择计数(*)
错误此行: mDataBase = SQLiteDatabase.openDatabase(dbPath, "123", null, SQLiteDatabase.NO_LOCALIZED_COLLATORS); 打开数据库时.但是怎么了?如何使用密码打开数据库?有人可以帮我吗? 我在sqlite db浏览器>文件上设置密码>设置加密 在Android Part中打开此密码 打开时,请显示错误 error : net.sqlcipher.database.SQLiteException: file is not a database: , while compiling: select count(*) from sqlite_master 有人可以帮助我解决它吗?预先感谢 import android.content.Context; import android.database.SQLException; //import android.data
38 2024-02-18
编程技术问答社区
安卓系统在Play Store上推送更新
i有一个依赖于sqlite的数据,该应用程序由XML填充的XML在资产文件夹中运送的应用程序. 当您第一次设置应用程序时运行该应用程序时 然后,我检查config_run = false,然后解析XML并将数据转储到db 设置config_run = true 现在,我意识到,当我必须在Google Play上进行更新并在XML中添加更多内容时.即使我将数据库版本从1更改为2. 关于如何处理这种情况的任何指针? 方案 第一个Instal -ver = 1,db v = 1(数据已解析并倾倒到数据库中) 错误修复并推动和更新,但没有更改数据-VER = 1.1,db v = 1(它应该替换代码而不是升级或重新创建数据库) 升级数据并推出了新的更新-VER 1.2,db = 2(没有新代码,但必须重新创建数据) 我的应用程序的流量 该应用开始启动活动.如果共享的pref -config_run等于false,则启动进度对话框并解析并将数据转储到数据
4 2024-02-18
编程技术问答社区
如何在SQLITE中列出数据库的所有触发器?
我不能放下触发器,但是当我尝试创建一个具有相同名称的新扳机时,它会提醒我触发器存在.因此,我想列出所有触发器,以找出出了什么问题. 解决方案 您可以使用SQLite_Master表获得与触发器有关的所有数据(这包括用于创建它们的DDL代码).如果您不想要所有数据,则只需保留查询中的一些列. 对于所有数据: select * from sqlite_master where type = 'trigger'; 仅为名称列表: select name from sqlite_master where type = 'trigger';
2 2024-02-18
编程技术问答社区
不能从资产中复制预先创建的数据库
Android不能从资产中复制我的Pre Create DB,旧数据库仍然存在于数据/数据/packagename/dabases中,我想用新的一个 更改旧的DB ive tried to change this.getReadableDatabase(); into SQLiteDatabse db = this.getReadabledatabase() if (db.isOpen()){ db.close(); } public void createDatabase(){ boolean dbExist = checkDatabase(); if(!dbExist){ this.getReadableDatabase(); SQl try { copyDatabase(); }catch (IOException e){ Log.e(this.ge
14 2024-02-18
编程技术问答社区
如何使用SQLiteOpenHelper类从sqlite数据库中删除项目
我无法使用SQLiteOpenhelper类删除SQLite,但我可以将数据插入 这是我的助手类 public class SQLiteHandler extends SQLiteOpenHelper { private static SQLiteHandler sInstance; private static final String DATABASE_NAME = "telestaDB"; private static final int DATABASE_VERSION = 2; private static final String TAG = "SqliteHelper"; private SQLiteHandler(Context context) { super(context, DATABASE_NAME, null, DATABASE_VERSION); getWritableDa
4 2024-02-18
编程技术问答社区