我试过了 :
UPDATE closure JOIN item ON ( item_id = id )
SET checked = 0
WHERE ancestor_id = 1
Run Code Online (Sandbox Code Playgroud)
和:
UPDATE closure, item
SET checked = 0
WHERE ancestor_id = 1 AND item_id = id
Run Code Online (Sandbox Code Playgroud)
两者都适用于MySQL,但那些在SQLite中给我一个语法错误.
如何使这个UPDATE/JOIN与SQLite版本3.5.9一起使用?
我需要解析一个相当大的XML文件(大约在一百千字节和几百千字节之间变化),我正在使用它Xml#parse(String, ContentHandler).我目前正在使用152KB文件进行测试.
在解析期间,我还使用类似于以下的调用将数据插入SQLite数据库中:getWritableDatabase().insert(TABLE_NAME, "_id", values).对于152KB的测试文件(大约插入200行),所有这一切大约需要80秒.
当我注释掉所有插入语句(但留下其他所有内容,例如创建ContentValues等)时,同一个文件只需要23秒.
数据库操作有这么大的开销是正常的吗?我可以做点什么吗?
我正在尝试创建一个简单的登录表单,我将登录屏幕上输入的登录ID和密码与存储在数据库中的登录ID和密码进行比较.
我正在使用以下查询:
final String DATABASE_COMPARE =
"select count(*) from users where uname=" + loginname + "and pwd=" + loginpass + ");" ;
Run Code Online (Sandbox Code Playgroud)
问题是,我不知道,我如何执行上述查询并存储返回的计数.
这是数据库表的样子(我已经使用execSQl方法成功创建了数据库)
private static final String
DATABASE_CREATE =
"create table users (_id integer autoincrement, "
+ "name text not null, uname primary key text not null, "
+ "pwd text not null);";//+"phoneno text not null);";
Run Code Online (Sandbox Code Playgroud)
有人可以指导我如何实现这一目标吗?如果可能,请提供一个示例代码段来执行上述任务.
我需要在我的应用程序中实现SQLite.我遵循了本教程. 在Android中创建和使用数据库
一切都很好.我插入了一行5列.现在我想只更新1列的值,其他的将保持不变.
教程中有一个更新方法,但它需要所有参数,但我只想更新一列.
我有两个表:轨道和航点,一个轨道可以有很多航点,但一个航点只分配给一个轨道.
在点数表中,我有一个名为"trackidfk"的列,它在制作轨道时插入track_ID,但是我没有在此列上设置外键约束.
当我删除一条轨道时,我想删除指定的路标,这可能吗?我读过有关使用触发器的内容,但我不认为它们在Android中受支持.
要创建航点表:
public void onCreate(SQLiteDatabase db) {
db.execSQL( "CREATE TABLE " + TABLE_NAME
+ " ("
+ _ID + " INTEGER PRIMARY KEY AUTOINCREMENT, "
+ LONGITUDE + " INTEGER,"
+ LATITUDE + " INTEGER,"
+ TIME + " INTEGER,"
+ TRACK_ID_FK + " INTEGER"
+ " );"
);
...
}
Run Code Online (Sandbox Code Playgroud) 我有一个CSV文件,我想使用Python将此文件批量导入我的sqlite3数据库.命令是".import .....".但它似乎无法像这样工作.谁能给我一个如何在sqlite3中做到这一点的例子?我正在使用Windows以防万一.谢谢
我有一个巨大的表--3600万行 - 在SQLite3中.
在这个非常大的表中,有两列
但是,有些行是重复的.也就是说,hash和d都具有相同的值.
此外,如果两个哈希值相同,则d的值也相同,但两个相同的ds不表示两个相同的哈希值
无论如何,我想删除重复的行.我没有主键列.最快的方法是什么?
编辑: hash
似乎可以做到这一点.
我正在尝试在Ubuntu中为PHP安装sqlite3.
我安装apt-get php5-sqlite3并编辑php.ini包含sqlite3扩展.
当我跑步时,phpinfo();我得到了
SQLITE3
SQLite3 support enabled
sqlite3 library version 3.4.2
Run Code Online (Sandbox Code Playgroud)
如上所示,sqlite3已启用.但是,当我使用时,我得到"Class SQLite3 not found"
new SQLite3("database");
Run Code Online (Sandbox Code Playgroud) 我正在构建一个应用程序,我有一个事件表和一个场地表.我希望能够授予其他应用程序访问此数据的权限.我有几个与此类问题的最佳实践相关的问题.
我应该如何构建数据库类? 我目前有EventsDbAdapter和VenuesDbAdapter的类,它们提供查询每个表的逻辑,同时有一个单独的DbManager(扩展SQLiteOpenHelper)来管理数据库版本,创建/升级数据库,提供对数据库的访问(getWriteable/ReadeableDatabase).这是推荐的解决方案,还是我最好将所有内容整合到一个类(即DbManager)或分离所有内容并让每个适配器扩展SQLiteOpenHelper?
我应该如何为多个表设计内容提供程序? 扩展上一个问题,我应该为整个应用程序使用一个内容提供程序,还是应该为事件和场地创建单独的提供程序?
我发现的大多数示例只涉及单表应用程序,所以我很感激这里的任何指针.
我试图做一个svn cleanup因为我无法在我的工作副本中提交更改,我收到以下错误:
sqllite:数据库磁盘映像格式错误

我现在能做什么?
sqlite ×10
android ×5
database ×3
sql ×2
count ×1
csv ×1
foreign-keys ×1
insert ×1
java ×1
join ×1
performance ×1
php ×1
python ×1
sql-update ×1
svn ×1
tortoisesvn ×1