打印从SQLite3数据库检索的数据C++与命令行中相同的方式

Printing data retrieved from SQLite3 database with C++ the same way as in command line

本文关键字:命令行 方式 数据 SQLite3 数据库 检索 打印 C++      更新时间:2023-10-16

如标题中所述,我正在用C++编写一个程序,我想知道是否可以以与在命令行中键入查询时相同的方式打印表格。

例:

sqlite> select * from departments;
DepartmentId  DepartmentName
------------  --------------
1             KTI
2             KAM
3             KSI
4             KCN

我确实知道sqlite3_exec((,但据我了解,我必须自己画桌子。有没有办法让 sqlite3 打印输出本身?

谢谢你的回答!

尽管您可以使用字符串串联运算符||在查询中将多个列合并为单个字符串。当您需要一种快速且肮脏的方式来从数据库中使用逗号分隔值时,这可能很有用,但是,如果不编写自己的代码,您将无法获得所需的格式类型。

前任SELECT lastName || ', ' || lastName FROM PEOPLE;

给你

"Doe, John"
"Buttons, Benjamin"

幸运的是,CLI 是开源的,您可以查看它如何实现输出格式,让您了解如何自己实现它。exec_prepared_stmtshell_callback功能似乎是所有好东西所在的地方。