SQLデータベースをC++のデータテーブルにロードしようとしていましたが、それは働きたいと思わない。 DataReaderが動作するので、接続は機能しています。ここに私のコードがありますSqlDataAdapterがデータテーブルをロードしていません - C++
void importDatabase() {
SqlConnection con;
SqlDataAdapter^ da;
SqlCommand cmd;
DataTable^ dt;
int count = 1;
try {
con.ConnectionString = "Data Source=MYNAME\\SQLEXPRESS;Initial Catalog=VinylRecords;Integrated Security=True";
cmd.CommandText = "SELECT * FROM Records";
cmd.Connection = %con;
con.Open();
da = gcnew SqlDataAdapter(%cmd);
dt = gcnew DataTable("Records");
Console::Write(da->ToString());
da->Fill(dt);
for (int i = 0; i < dt->Rows->Count - 1; i++) {
String^ value_string;
value_string = dt->Rows[i]->ToString();
Console::WriteLine(dt->Rows[i]->ToString());
count++;
}
cout << "There are " << count << " many records";
}
catch (Exception^ ex) {
Console::WriteLine(ex->ToString());
}
}
私はここに投稿するソース名を少し変更しましたが、最初の部分のみを書きました。 私のコードで何が問題になっていますか?
どのように動作しませんか?例外がスローされた場合は、例外の詳細を提供してください。空の場合は、そのクエリが実際に行を返すかどうかを確認できますか? – MBurnham
問題は、テーブルを印刷するときに出力されることです。System.Data.DataRow;とSystem.Data.SqlClient.SqlDataAdapterSystem.Data.DataRowアダプター –