Hallo,
nach dem ich dies schon fast im Schlaf immer wieder gemacht habe, habe ich doch plötzlich ein Problem:
" Dynamische SQL-Generierung wird für einen SelectCommand, der keine Basistabelleninformationen zurückgibt, nicht unterstützt. "
Der Code welcher die Tabelle erzeugt sieht so aus:
usw.
Dann der Code wo der DataAdapter erzeugt wird und die Befehle, wo es schief geht:
Was da nicht geht ist mir ein Rätsel, oder ich übersehe es heute einfach immer! :-)
Danke
nach dem ich dies schon fast im Schlaf immer wieder gemacht habe, habe ich doch plötzlich ein Problem:
" Dynamische SQL-Generierung wird für einen SelectCommand, der keine Basistabelleninformationen zurückgibt, nicht unterstützt. "
Der Code welcher die Tabelle erzeugt sieht so aus:
Code:
ADOX::CatalogClass ^cat = gcnew ADOX::CatalogClass(); System::Data::OleDb::OleDbConnection ^co= gcnew System::Data::OleDb::OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source="+Application::StartupPath+"\\DVDCal.mdb;" + "Jet OLEDB:Engine Type=5"); System::IO::FileInfo ^f =gcnew System::IO::FileInfo(Application::StartupPath+"\\DVDCal.mdb"); if(!f->Exists) { cat->Create("Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source="+Application::StartupPath+"\\DVDCal.mdb;" + "Jet OLEDB:Engine Type=5"); System::Data::OleDb::OleDbCommand ^com=gcnew System::Data::OleDb::OleDbCommand("Create Table DVDs (Titel Memo NOT NULL PRIMARY KEY, Darsteller Memo,Regie Text(255), Autor Text(255), Quelle Text(255), Bemerkungen Memo, ErscheinungsjahrDVD_Video Text(255), Nummer Integer, Besorgungsdatum Text(255), DatumKopierenEmpfohlen Text(255), MarkeMedium Text(255), Problematisch Bit )", co); System::Data::OleDb::OleDbCommand ^com2=gcnew System::Data::OleDb::OleDbCommand("Create INDEX ixPrim ON DVDs (Titel ASC)", co); System::Data::OleDb::OleDbCommand ^com3=gcnew System::Data::OleDb::OleDbCommand("Create INDEX ixSearchDate ON DVDs (Besorgungsdatum ASC, Titel ASC, DatumKopierenEmpfohlen ASC)", co); //System::Data::OleDb::OleDbCommand ^com4=gcnew System::Data::OleDb::OleDbCommand("Create UNIQUE INDEX ixSearch2 ON DVDs (ErscheinungsjahrDVD_Video ASC)", co); co->Open(); com->ExecuteNonQuery(); ...
Dann der Code wo der DataAdapter erzeugt wird und die Befehle, wo es schief geht:
Code:
//System::Data::OleDb::OleDbCommand ^selectcom=gcnew System::Data::OleDb::OleDbCommand("SELECT Titel, Darsteller, Regie, Autor, Quelle, Bemerkungen, ErscheinungsjahrDVD_Video, Nummer, Besorgungsdatum, DatumKopierenEmpfohlen, MarkeMedium, Problematisch", co); DVDsTableAdapter2 = gcnew System::Data::OleDb::OleDbDataAdapter("SELECT Titel, Darsteller, Regie, Autor, Quelle, Bemerkungen, ErscheinungsjahrDVD_Video, Nummer, Besorgungsdatum, DatumKopierenEmpfohlen, MarkeMedium, Problematisch", co); System::Data::OleDb::OleDbCommandBuilder ^cbb = gcnew System::Data::OleDb::OleDbCommandBuilder(DVDsTableAdapter2); DVDsTableAdapter2->UpdateCommand=cbb->GetUpdateCommand(); DVDsTableAdapter2->InsertCommand=cbb->GetInsertCommand(); DVDsTableAdapter2->DeleteCommand=cbb->GetDeleteCommand(); //this->DVDsTableAdapter->Fill(this->DVDCalDataSet->DVDs); // } DVDsTableAdapter2->Fill(this->DVDCalDataSet->DVDs);
Danke
Comment