c++;带SQLite的生成器:数据表示在DBGrid中显示WIDEMEMO < >我使用C++ Builder和SQLite数据库。我通过DBExpress与数据库连接。问题是DBGrid在每个字段中显示(WIDEMEMO),而不是数据库所具有的确切值

c++;带SQLite的生成器:数据表示在DBGrid中显示WIDEMEMO < >我使用C++ Builder和SQLite数据库。我通过DBExpress与数据库连接。问题是DBGrid在每个字段中显示(WIDEMEMO),而不是数据库所具有的确切值,sqlite,c++builder,dbgrid,Sqlite,C++builder,Dbgrid,我对其他数据库没有这个问题,比如Firebird 为什么会有这种行为?我是否缺少sqlite,以及如何修复。 您是否建议我使用SQLite/Firebird或其他嵌入式数据库作为小型独立应用程序 提前感谢。这是DBGrid的问题。它不能处理这个问题。请参阅此链接以获取帮助 我知道这个问题很老,但由于没有选择任何答案,我将投入我的两分钱。我最近遇到了同样的问题,并找到了一个可能也适合你的解决方案 这个问题存在于C++数据集和SQLite中。事实证明,当您有一个没有定义大小的字段(尤其是文本字段)时

我对其他数据库没有这个问题,比如Firebird

为什么会有这种行为?我是否缺少sqlite,以及如何修复。 您是否建议我使用SQLite/Firebird或其他嵌入式数据库作为小型独立应用程序


提前感谢。

这是DBGrid的问题。它不能处理这个问题。请参阅此链接以获取帮助


我知道这个问题很老,但由于没有选择任何答案,我将投入我的两分钱。我最近遇到了同样的问题,并找到了一个可能也适合你的解决方案

<>这个问题存在于C++数据集和SQLite中。事实证明,当您有一个没有定义大小的字段(尤其是文本字段)时,该字段将被视为DBGrid中的widememo或Memo。因此,您需要做的是使用特定数量的字符定义文本字段,即VARCHAR(10)


我就是这么做的,这对我很有用。我在DBGrid中使用MySQL和Delphi。

我在Delphi中使用FireDAC,遇到了同样的问题。 我已通过将dataset TwideMoField DisplayValue属性从dvClass更改为dvFull解决了此问题。现在,我的DBGrid工作正常