标签: android-sqlite

如何在sqlite中存储mp3文件?

我正在创建一个 android 应用程序,它是一个方言词典。我的问题是我不知道如何在数据库中存储 audio.mp3 文件。

任何人都可以教我或分享一些如何制作它的代码吗?

database sqlite mp3 android android-sqlite

0
推荐指数
1
解决办法
1万
查看次数

更改Android中数据库行中的一个单元格

在我的Android应用程序中,我在我的数据库中有这个表来存储来自用户的数据:

tbl_Persons

| _id | Name | First Name | Place | ZIP |
-----------------------------------------
Run Code Online (Sandbox Code Playgroud)

现在我想在数据库中更改Place一行(让我们说在哪里_id = 5) - 此命令中的所有其他单元格应该在命令之后应该相同才Place应该更改.我怎样才能在Android中执行此操作?我尝试过:

ContentValues werte = new ContentValues();
werte.put("_id", 5);
werte.put("Place", "Berlin");

long id = db.replace("tbl_Persons", null, werte);
Run Code Online (Sandbox Code Playgroud)

但这不起作用.db.replace返回-1并且android开发者网站说:

返回新插入行的行ID,如果发生错误,则返回-1

如何才能在Android中更改数据库行中的一个单元格?

sql android android-sqlite

0
推荐指数
1
解决办法
336
查看次数

如何在本地时间应用 strftime

我想从我的 Sqlite 数据库中的日期时间列中获取月份中的哪一天。我可以简单地使用

select strftime('%d',myColumn) from myTable
Run Code Online (Sandbox Code Playgroud)

但是这些值以 UTC 格式存储在数据库中,我想根据本地时间获取日期。所以我可以执行以下操作来获取本地时间。

select date(myColumn, 'localtime') from myTable
Run Code Online (Sandbox Code Playgroud)

现在我如何一起做这两个操作?我能想到的唯一方法是date()使用strftime(). 还有其他方法吗?

sqlite android-sqlite

0
推荐指数
1
解决办法
1737
查看次数

检查sqlite数据库中是否已经存在行

LogCat error:

FATAL EXCEPTION: main
                                                                      Process: com.sam.shoppingcart, PID: 31773
                                                                      android.database.sqlite.SQLiteException: near "Beef": syntax error (code 1): , while compiling: SELECT KEY_NAME FROM shop WHERE KEY_NAME=Corned Beef
                                                                          at android.database.sqlite.SQLiteConnection.nativePrepareStatement(Native Method)
                                                                          at android.database.sqlite.SQLiteConnection.acquirePreparedStatement(SQLiteConnection.java:893)
                                                                          at android.database.sqlite.SQLiteConnection.prepare(SQLiteConnection.java:504)
                                                                          at android.database.sqlite.SQLiteSession.prepare(SQLiteSession.java:588)
                                                                          at android.database.sqlite.SQLiteProgram.<init>(SQLiteProgram.java:58)
                                                                          at android.database.sqlite.SQLiteQuery.<init>(SQLiteQuery.java:37)
                                                                          at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:44)
                                                                          at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1339)
                                                                          at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1278)
                                                                          at com.sam.shoppingcart.SQLiteHandler.ifExists(SQLiteHandler.java:63)
                                                                          at com.sam.shoppingcart.CustomListAdapter$1.onClick(CustomListAdapter.java:77)
Run Code Online (Sandbox Code Playgroud)

我有一个使用带有“添加”和“删除”按钮的自定义适配器的列表视图。当单击“添加”按钮时,LV 项目的名称和价格将被添加到数据库中。我想在添加 LV 项目时检查 DB 中是否已经存在。为此,我在 DBHandler 中创建了 ifExists(Model model) 函数。但是现在点击添加按钮它给了我错误。我做错了什么?PS:我从这里得到了这个功能。

public class MainActivity extends AppCompatActivity {

    private ListView listView;
    private ArrayList<Model> mListData;
    private CustomListAdapter adapter;

    @Override
    protected void …
Run Code Online (Sandbox Code Playgroud)

android listview android-sqlite

0
推荐指数
1
解决办法
4954
查看次数

如何在 SQLite 中插入日期?

我有这个错误:

无法解析方法“put(java.lang.String, java.util.Date)”

在下面的代码中: 在此输入图像描述

lsdnsd是数据类型为 DATE 的列名。

public void onCreate(SQLiteDatabase db)
{
    String query="CREATE TABLE"+c_tablename+"(c_id int AUTO_INCREMENT primary key,name varchar(20),contact double ,address varchar(50)," +
            "bike_number varchar(16),bike_type varchar(10),lsd date,nsd date,lwd varchar(100),cost int,message varchar(100))";
    db.execSQL(query);

}

@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion)
{
    String query= "DROP TABLE IF EXIST "+c_tablename;
    String query2="DROP TABLE IF EXIST "+h_tablename;
    db.execSQL(query);
    db.execSQL(query2);

    onCreate(db);
}

public void  saveData(String name , int contact , String address , String bike_number , String bike_type …
Run Code Online (Sandbox Code Playgroud)

sqlite android android-sqlite

0
推荐指数
1
解决办法
8863
查看次数

引起:SQL(查询)错误或缺少数据库

每次我单击按钮向表中添加项目时,应用程序崩溃,我收到此错误,logcat:

    11-30 21:46:00.822 13943-13943/com.example.user.timetable_test E/SQLiteLog: (1) near "TABLESunday": syntax error
11-30 21:46:00.827 13943-13943/com.example.user.timetable_test D/AndroidRuntime: Shutting down VM
11-30 21:46:00.827 13943-13943/com.example.user.timetable_test E/AndroidRuntime: FATAL EXCEPTION: main
                                                                                 Process: com.example.user.timetable_test, PID: 13943
                                                                                 android.database.sqlite.SQLiteException: near "TABLESunday": syntax error (code 1): , while compiling: CREATE TABLESunday(_session INTEGER PRIMARY KEY AUTOINCREMENT,_name TEXT,_length INTEGER);
                                                                                 #################################################################
                                                                                 Error Code : 1 (SQLITE_ERROR)
                                                                                 Caused By : SQL(query) error or missing database.
                                                                                    (near "TABLESunday": syntax error (code 1): , while compiling: CREATE TABLESunday(_session INTEGER PRIMARY KEY AUTOINCREMENT,_name TEXT,_length INTEGER);)
                                                                                 #################################################################
                                                                                     at android.database.sqlite.SQLiteConnection.nativePrepareStatement(Native …
Run Code Online (Sandbox Code Playgroud)

sqlite android android-sqlite

0
推荐指数
1
解决办法
1万
查看次数

如何使用 ContentValues.put() 插入对象列表?

我正在尝试将数据插入 SQLite 数据库,为此我编写了一个简单的方法来插入我从 API 获取的数据,如下所示:

public static ContentValues gameInfoToContentValues(@NonNull GameInfoList game) {

        ContentValues values = new ContentValues();

        values.put(GameEntry.COLUMN_GAME_ID, game.id());
        values.put(GameEntry.COLUMN_GAME_ALIASES, game.aliases());
        values.put(GameEntry.COLUMN_GAME_API_DETAIL_URL, game.api_detail_url());
        values.put(GameEntry.COLUMN_GAME_DATE_ADDED, game.date_added());
        values.put(GameEntry.COLUMN_GAME_DATE_LAST_UPDATED, game.date_last_updated());
        values.put(GameEntry.COLUMN_GAME_SMALL_IMAGE, game.image().small_url());
        values.put(GameEntry.COLUMN_GAME_MEDIUM_IMAGE, game.image().medium_url());
        values.put(GameEntry.COLUMN_GAME_HD_IMAGE, game.image().super_url());
        values.put(GameEntry.COLUMN_GAME_NAME, game.name());
        values.put(GameEntry.COLUMN_GAME_ORIGINAL_RELEASE_DATE, game.original_game_rating());

        return values;
    }
Run Code Online (Sandbox Code Playgroud)

我得到最后

game.original_game_rating();
Run Code Online (Sandbox Code Playgroud)

这是正确的,因为它是一个对象列表。

我在方法中作为参数传递的名为“GameInfoList”的对象类如下所示:

public abstract long id();

@Nullable
public abstract String aliases();

@Nullable
public abstract String api_detail_url();

@Nullable
public abstract String date_added();

@Nullable
public abstract String date_last_updated();

@Nullable
public abstract GameImages image();

@Nullable
public abstract String name();

@Nullable
public …
Run Code Online (Sandbox Code Playgroud)

sqlite android android-sqlite content-values

0
推荐指数
1
解决办法
1444
查看次数

从资产文件夹中读取数据库

我在 asset 文件夹中有一个 db 文件,如何使用它。我必须能够读取和写入数据库文件如果我使用

SqliteDatabase.open(context.openassest().open(filrname),null); 未找到异常数据库文件不检查。我在我的腿上正确完成的语法请参阅内容

android android-sqlite android-database

0
推荐指数
1
解决办法
5589
查看次数

如何防止android sqlite数据库中的重复数据?

我正在 android 中的 sqlite 数据库上工作,我想插入一个如下所示的表

                    id procode  proname user
                    1  pro123   mobile   120
                    2  pro123   mobile   121
                    3  pro345   watches  120
Run Code Online (Sandbox Code Playgroud)

在上表中,只有 id 是 uniq,所有值都不是 uniq,但我不想允许同一用户使用相同的数据,这意味着另一个用户将插入相同的数据,现在我不想在检查 procode 数据和用户手段(如 bwlow)时插入重复项

                    id procode  proname user
                    1  pro123   mobile   120
                    2  pro123   mobile   121
                    3  pro123    mobile   120 
Run Code Online (Sandbox Code Playgroud)

上表3为重复数据

android android-sqlite

0
推荐指数
1
解决办法
6596
查看次数

如何在 SQLite 数据库中存储视频内容(不是视频路径)

我想在 sqlite 数据库中存储视频。PS我不想存储路径而是实际的视频内容。我已将视频转换为字节数组并将字节数组存储在 sqlite 数据库中。检索后,bytearray 被转换为文件。但是视频没有播放。请帮忙。

android android-sqlite android-database

0
推荐指数
1
解决办法
5603
查看次数