Я хочу отсканировать базу данных, а затем создать таблицу с помощью DataReader, если она еще не существует.Я нашел блок кода, который используется для создания таблицы, но он есть в VB, что не идеально, так как остальная часть моего кода - C #.Несмотря на это, я не могу заставить его работать в любом случае.
Это мой код, спасибо за просмотр:
var dif = new DataInterfaceFactory(DatabaseTypes.SqlServer, "WDM_SOFTWARE_INFO", "d2sql4.d2.wdm");
using (DataReader dr = dif.GetDataReader())
{
exists = m_api.Database.ExecuteCommand(@"IF EXISTS(SELECT COUNT(1) FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 'CALCULATION_SCHEDULE')");
while (dr.Read())
{
if (exists == 0)
{
TableBuilder calculationSchedule = new TableBuilder("CALCULATION_SCHEDULE", dif.DatabaseType);
calculationSchedule.AddField("CALCULATION_SCHEDULE_UID", DbFieldType.int_, 0, false, null, true, null);
calculationSchedule.AddField("SERVER_NAME", DbFieldType.nvarchar_);
calculationSchedule.AddField("DATABASE_NAME", DbFieldType.nvarchar_);
calculationSchedule.AddField("LAST_CHECK_DATE", DbFieldType.datetime_);
calculationSchedule.AddField("IS_RUNNING", DbFieldType.int_);
using (CommandExecutor cex = dif.GetCommandExecutor())
{
calculationSchedule.BuildTable(cex);
}
}
}
}