Я ожидаю, что следующий код проверит, существует ли таблица в базе данных, и, если нет, создайте ее. Если «существует» == 0, он не существует, если «существует» = 1, он существует. После запуска этот код "существует" по-прежнему == 0. Что мне не хватает? Спасибо:
РЕДАКТИРОВАТЬ: как только я передаю "command.ExecuteNonQuery ()", он выдает ошибку.
var dif = new DataInterfaceFactory(DatabaseTypes.SqlServer, "WDM_SOFTWARE_INFO", "d2sql4.d2.wdm");
using (DataReader dr = dif.GetDataReader())
{
dr.ExecuteReader("SELECT COUNT(1) AS TABLECOUNT FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 'CALCULATION_SCHEDULE'");
while (dr.Read())
{
var exists = Convert.ToInt32(dr["TABLECOUNT"]);
if (exists == 0)
{
var conStr = "Data Source = d2sql4.d2.wdm; Integrated Security = True; Connect Timeout = 30; Encrypt = False; TrustServerCertificate = False; ApplicationIntent = ReadWrite; MultiSubnetFailover = False";
using (SqlConnection con = new SqlConnection(conStr))
{
try
{
// Open the SqlConnection.
con.Open();
// The following code uses an SqlCommand based on the SqlConnection.
using (SqlCommand command = new SqlCommand("CREATE WDM_SOFTWARE_INFO.CALCULATION_SCHEDULE(CALCULATION_SCHEDULE_UID INT,SERVER_NAME char(25),DATATABLE_NAME char(20),LAST_CHECK_DATE DATE,IS_RUNNING INT);", con))
command.ExecuteNonQuery();
}
catch
{
Console.WriteLine("Error: could not create CALCULATION_SCHEDULE");
}
}
}
}
}