ubuntu - Sqlite3(终端)无法正确解码字符

标签 ubuntu terminal sqlite

我正在学习一个教程,其中要求我从 sqlite3 数据库创建、插入和读取数据(并使用 ascii 模式显示数据)。

然而,当我发出读取命令时,我得到以下输出: output from terminal after reading from sqlite3 database

当我将它粘贴到文本编辑器时,它会生成 2GarfieldTabby18

我不确定是sqlite3本身,还是终端问题。谁能告诉我这些方形标志的专业名称是什么,为什么会出现(我猜它必须与编码有关),以及如何修复它们?

我在 Ubuntu 16.04 上运行。 SQLite 版本 3.11.0

在我的终端中运行 locale 返回:

LANG=en_US.UTF-8
LANGUAGE=en_US:en_GB:en_AU:en_CA:en
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC=en_GB.UTF-8
LC_TIME=en_GB.UTF-8
LC_COLLATE="en_US.UTF-8"
LC_MONETARY=en_GB.UTF-8
LC_MESSAGES="en_US.UTF-8"
LC_PAPER=en_GB.UTF-8
LC_NAME=en_GB.UTF-8
LC_ADDRESS=en_GB.UTF-8
LC_TELEPHONE=en_GB.UTF-8
LC_MEASUREMENT=en_GB.UTF-8
LC_IDENTIFICATION=en_GB.UTF-8
LC_ALL=

最佳答案

我遇到了同样的事情。我正在接受 Udacity 的培训,在 sqlite3 终端中我遇到了同样的事情。我也在运行 Ubuntu 16.04,我的 sqlite3 版本也是 3.11.0。

除了您提出的将其粘贴到编辑器中的解决方案外,还有以下解决方案:

在 sqlite3 终端中当请求 .mode ascii 响应时,我在 ascii 文本中得到分隔符。为了避免这些迹象,我需要在请求 select * from pets 之前在 .mode ascii 之后输入 .separator """"命令; (pets.db) 数据库。

这里唯一的问题是它是重复的。每次都必须重复同一行代码。

我想知道是否有永久解决方案。

关于ubuntu - Sqlite3(终端)无法正确解码字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45043957/

相关文章:

ubuntu - R 3.6.1; Ubuntu,尝试更新 Bioconductor 的包并出现错误 : . ... 安装路径不可写,无法更新包

c++ - 运行 ncurses 程序后终端搞砸了

iphone - 起始数字不能为零 - iPhone

c++ - 在 iOS 上使用 C++ 访问 SQLite 数据库?

sql - 是否可以重写 NOT IN 查询以使用索引?

node.js - 无法在 ubuntu v-20.04.1 中安装 nodejs

session - 在 docker 镜像中获取所有打开的连接

java - "Where is the framework?" Play 错误!框架

iphone - 如何构建类似 iPad App 的终端

linux - 返回到先前的工作目录(shell 终端)