Я пытаюсь создать файл setup.exe, который устанавливает написанное мной приложение.
Приложение использует базу данных для хранения и извлечения информации.
В настройке у меня естьУстанавливающий пользователь предоставляет сервер базы данных \ экземпляр, учетные данные и каталог DATA для копирования файлов базы данных.
Я хочу программно и навсегда подключить базу данных.
Я использую следующее для программногоприкрепить базу данных к моему экземпляру.Con.Open () и con.Close () предназначены только для тестирования.
System.Data.SqlClient.SqlConnection con;
con = new System.Data.SqlClient.SqlConnection();
con.ConnectionString = @"Data Source=.\SQLEXPRESS;Integrated Security=true;Connect Timeout=30;User Instance=True";
ServerConnection serverconn = new ServerConnection(con);
Server s = new Server(serverconn);
s.DetachDatabase("DBX2", true, true);
s.AttachDatabase("DBX2", new System.Collections.Specialized.StringCollection { @"C:\Program Files\Microsoft SQL Server\MSSQL14.SQLEXPRESS\MSSQL\DATA\DBX2.mdf", @"C:\Program Files\Microsoft SQL Server\MSSQL14.SQLEXPRESS\MSSQL\DATA\DBX2_log.ldf" }, AttachOptions.None);
con.Open();
MessageBox.Show("Connection Opened");
con.Close();
MessageBox.Show("Connection Closed");
Несколько вопросов для подтверждения:
Я получаю сообщение об ошибке, что оноуже открыт, когда он пытается con.Open (), поэтому присоединение базы данных таким способом автоматически открывает?Когда я удаляю con.open (), он пробегает и закрывает его очень хорошо.
Когда я присоединяю свою базу данных таким образом, я не вижу ее прикрепленной в SQL Server Management Studio, как если бы я должен был прикрепить ее туда вручную.Итак, база данных по-прежнему подключена и работает после выхода из приложения, чтобы другие приложения могли получить к ней доступ?Является ли этот способ временным или просто не подхвачен SQL Management Studio?
Это правильный путь для достижения того, чего я хочу?