Создание таблиц с помощью скрипта и как запустить скрипт

У меня есть пара скриптов, которые мне нужно запустить на моей базе данных. Итак, у меня есть несколько вопросов.

Я просто использую Connection, CommandText,CommandType и CommandTimeout при открытии соединения с базой данных.

Первый вопрос - знает ли кто-нибудь, можно ли с помощью этого метода создавать постоянные таблицы, а не временные таблицы?

Во-вторых, как мне запустить этот файл? Могу ли я просто установить файл в качестве параметра, и в запросе запустить параметр?

Спасибо

3 ответа

Решение

В соединении.NET SQL вы можете делать все, что можете в скрипте SQL. Что касается "запуска файла", вам необходимо загрузить текст файла в память и выполнить загруженный текст одной командой.

Мы делаем нечто подобное в нашем приложении. Наши скрипты базы данных хранятся в скриптах SQL. Мы загружаем каждый файл последовательно с диска в память и выполняем его.

В C#-

  1. Таким способом вы можете создавать как постоянные, так и временные таблицы.

  2. Запустите скрипт как CommandText командного объекта.

Пример из MSDN: как установить параметры в запросе,

private static void UpdateDemographics(Int32 customerID,
    string demoXml, string connectionString)
{

    string commandText = "UPDATE Sales.Store SET Demographics = @demographics "
        + "WHERE CustomerID = @ID;";

    using (SqlConnection connection = new SqlConnection(connectionString))
    {
        SqlCommand command = new SqlCommand(commandText, connection);
        command.Parameters.Add("@ID", SqlDbType.Int);
        command.Parameters["@ID"].Value = customerID;

        command.Parameters.AddWithValue("@demographics", demoXml);

        try
        {
            connection.Open();
            Int32 rowsAffected = command.ExecuteNonQuery();
            Console.WriteLine("RowsAffected: {0}", rowsAffected);
        }
        catch (Exception ex)
        {
            Console.WriteLine(ex.Message);
        }
    }
}
Другие вопросы по тегам