我正在尝试学习 C++ Builder 和 SQLite 数据库访问。我有一个带有 TFDConnection
、
TFDPhysSQLiteDriverLink
、TFDQuery
和 TDataSource
的 DataModule。
我有一个带有
TDBGrid
的主窗体,它使用TDataSource
。到目前为止一切正常。但是,我有一个按钮可以在主窗体上添加新记录。单击它会弹出另一个窗体作为模态窗口,我可以在其中输入每个字段的数据(这些字段没有链接到任何东西,它们是普通的TEdit
类型控件)。单击OK
时,应添加新记录。
在拥有
TDBGrid
和TDataSource
之前,我使用TFDConnection->ExecSQL()
插入数据,但是在添加TDBGrid
和TDataSource
之后它不起作用并说数据库被锁定。我想也许必须使用 TDataSource
因为它会有锁,所以我尝试使用 TDataSource->DataSet->AppendRecord()
但它在做同样的事情。
那么我的问题是,在这种情况下,我该如何添加记录呢?