标签: sqlite

如何将Python的输出保存到数据库?

我在urbandictionary中编写了一个简单的翻译脚本:

import urllib.request
import bs4

def translate():
    search=''
    while(search!='!'):
        search=input("Enter a word(! for exit): ")
        if search=='!':
            continue
        search2=search.replace(' ','+')
        urb_url='http://www.urbandictionary.com/define.php?term='+str(search2)
        urban=urllib.request.urlopen(urb_url).read().decode('utf-8')
        soup_urb = bs4.BeautifulSoup(urban)
        try:
            q2=soup_urb.find('div', class_="meaning").text
            print("{0}: {1}".format(search,q2))
        except AttributeError as e:
            print("The word not found\n")
Run Code Online (Sandbox Code Playgroud)

现在我想保存搜索到的每个单词的结果以供使用,并且将来不再搜索。你的建议是什么?sqlite,以简单文本或其他解决方案保存。

python database sqlite

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

如何获取 SQLite 表中的总行数/记录数

我想知道如何获取 sqlite 表中的行/记录总数并将其分配给变量。我这样做了;

    QSqlQuery query("SELECT COUNT(*) FROM class1_bills");
Run Code Online (Sandbox Code Playgroud)

但问题是,如何将结果分配给变量?我试过;

int rows = query.seek(0);
Run Code Online (Sandbox Code Playgroud)

和;

int rows = query.value(0).toInt();
Run Code Online (Sandbox Code Playgroud)

是的,我知道这样做只会访问表中字段位置0处的记录 。但 Qt 的查询方法似乎仅用于访问字段位置的特定记录。如果我错了请纠正我。那么如何获得表中的总行数呢?

c++ sqlite qt

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

Android - 使用 SQLite 将远程数据库的内容复制到本地数据库

我有一个远程 SQL 数据库(即存储在服务器中的数据库)。我正在开发一个 Android 应用程序,它定期建立连接以使用 SQLite 将所有远程数据库的表(及其内容)复制到本地数据库。

Android SDK 中是否有任何标准化方法来执行此操作?

我所经历的:

我考虑过以 JSON 格式请求远程数据库的内容,然后在 Android 中解析该 JSON 代码,然后使用 SQLite 将其包含在本地数据库中。不知道这对于大量数据来说有多有效,也不知道是否存在更好(不那么痛苦)的方法。

database sqlite android json

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

sqlite - 如何使用子选择插入记录

我有下表:

CREATE TABLE group_members(id integer primary key AUTOINCREMENT, group_id integer, member_id integer, FOREIGN KEY (member_id) REFERENCES users(id));
Run Code Online (Sandbox Code Playgroud)

我试图通过从表中group_members选择 的值,然后传入 的值来将记录插入到表中。group_idusermember_id

 insert into group_members (group_id, member_id) 
 values (select id from users where code ='12345' and location='multiple', 281);
Run Code Online (Sandbox Code Playgroud)

其中 281 是我要传入的会员 ID。

但我收到以下错误消息:

错误:“选择”附近:语法错误

你能为我指出正确的方向吗?

sql sqlite subquery

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

Django CharField主键不起作用,自动创建rowid主键

我正在将 Django 模型用于 SQLite 数据库。

我定义了 CharField 主键(例如属性的名称A),但同步的物理数据库显示Django另一个主键rowid而不是A

我尝试删除表格并重新同步几次,但仍然相同。

为什么?

class TestTable(models.Model):
    A = models.CharField(max_length=10, primary_key=True, db_column='A')
Run Code Online (Sandbox Code Playgroud)

- - - - - - - - - - - 编辑 - - - - - - - - - - - -

Django版本是1.8.3

python sqlite django primary-key rowid

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

E/SQLiteLog?(1) 无此栏:nmb

当我尝试运行我的应用程序时,它崩溃了。

\n\n
E/SQLiteLog\xef\xb9\x95 (1) no such column: nmb\n
Run Code Online (Sandbox Code Playgroud)\n\n

这是我的数据库代码

\n\n
private static final String DB_NAME = "mydb";\nprivate static final int DB_VERSION = 4;\nprivate static final String DB_TABLE = "mytab";\n\npublic static final String COLUMN_ID = "_id";\npublic static final String COLUMN_IMG = "img";\npublic static final String COLUMN_TXT = "txt";\npublic static final String COLUMN_NMB = "nmb";\n\nprivate static final String DB_CREATE =\n        "create table " + DB_TABLE + "(" +\n                COLUMN_ID + " integer primary key autoincrement, " +\n                COLUMN_IMG + " integer, …
Run Code Online (Sandbox Code Playgroud)

database sqlite android listview

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

Tcl SQLite 更新变量替换不能有撇号

问题是:如果我使用 { } 作为更新命令,如下所示:

package require sqlite3
fileRepo eval {UPDATE uploads SET $col=$data WHERE rowid=$id}
Run Code Online (Sandbox Code Playgroud)

我无法替换大括号内的任何变量。这一切都必须进行硬编码。

但是,如果我使用“”作为更新命令,如下所示:

fileRepo eval "UPDATE uploads SET $col='$data' WHERE rowid=$id"
Run Code Online (Sandbox Code Playgroud)

我可以替换双引号内的变量,但我必须使用 ' ' 才能输入带空格的数据,以便 sql 将其视为一个输入。如果我不这样做,如果我发送类似的内容,我会收到错误

$data = "合法堆栈"

因为它有一个空格,所以 sql 会被单词“Stack”阻塞,除非它放在单引号内

所以...

如果我将此数据发送到更新命令:

$col = description
$data = "Stack's Pet"
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

靠近“s”:执行“fileRepo eval”UPDATE uploads SET $col='$data' WHERE rowid=$id”时出现语法错误...

因此,鉴于这些规则,我看不出有什么办法可以成功地将单引号或撇号传递给更新命令。有其他方法可以做到这一点吗?

谢谢!

sql sqlite tcl variable-substitution

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

sql通过列号/索引/位置而不是列名选择列

如何通过列号/索引/位置而不是列名查询选择列?

到目前为止这不起作用:

SELECT 1,2,3,4,5,6,7 from table_1
Union 
SELECT 1,2,3,4,5,6,7 from table_2
Run Code Online (Sandbox Code Playgroud)

mysql sql sqlite postgresql postgresql-9.1

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

SQLite - PDOException:无效的数据源名称

我第一次将 SQLite 与 PHP 结合使用。我正在尝试从 获取数据contact.s3db。但是我收到这样的错误:Fatal error: Uncaught exception 'PDOException' with message 'invalid data source name' in... 这是我的代码:

$dir = 'contact.s3db';
$dbh  = new PDO($dir) or die("cannot open the database");
$query =  "SELECT * FROM person";
foreach ($dbh->query($query) as $row)
{
    echo $row[1] . " " . $row[2] . "<br />";
}
Run Code Online (Sandbox Code Playgroud)

php sqlite pdo

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

从 sqlite3 数据库删除旧数据的脚本

目前,我正在从数据库中手动删除旧数据(超过 90 天的旧数据)sqlite,因此以下是当前执行的步骤。那么伙计们是否可以使用 Bash 脚本来完成这项工作?

1. cd /opt/db                   (my database location)
2. ls -lSh | head -n30          (sorting from top highest size .db files and notes all .db names)

3. sqlite3  test1.db            (select database)
4. delete from tbl_outbox where time<='2016-02-10 00:00:00';      (delete data older more than 90 days)
5. vacuum;  
Run Code Online (Sandbox Code Playgroud)

有20多个.db文件。所以我再一一执行上面的步骤 3 到 5,如下所示

sqlite3  test2.db

delete from tbl_outbox where time<='2016-02-10 00:00:00'; 
vacuum;
Run Code Online (Sandbox Code Playgroud)

你能帮我创建 bash 脚本来完成这项任务吗?

谢谢

database sqlite bash

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