我有一个用 C++Builder 编写的程序,我在表中加载一些用户信息。我想从
password
列中获取值(在从数据库检索它们之后但在 DBGrid 上显示它们之前!)并将每个密码作为字符串保存到 STL vector
中。但是,我不知道如何从该特定列获取所有密码(遍历行)(可以在下面的屏幕截图中看到)。我怎样才能做到这一点?
这样的事情应该对你有帮助:
ADOTable1->First();
for(int i = 0; i < ADOTable1->RecordCount; i++){
UnicodeString password = ADOTable1->FieldByName("password")->AsString;
// read other columns if necessary...
ADOTable1->Next();
}
这将迭代所有数据库表记录,从第一行开始直到最后一行。
将 RowSelect 和 MultiRowSelect 设置为 false。然后以下代码将起作用,其中 TDBGrid Grid 引用引用 TTable Table 的 DataSource。
enter code here
int row = Table->RecNo; // Points to row, starts at 1
int col = Grid->SelectedIndex; // Starts at 0
TDataSet *pDS = Grid->DataSource->DataSet; // Point to the DataDet for row
String s = pDS->Fields->Fields[col]->AsString; // Contents of column
Label->Caption = s; // Show data String