Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.55/67: Рейтинг темы: голосов - 67, средняя оценка - 4.55
1 / 1 / 0
Регистрация: 26.06.2006
Сообщений: 31

Поиск SQL серверов

20.10.2006, 13:27. Показов 12631. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Подобный вопрос уже был.

Ответы мне не очень понравились, поэтому задаю еще раз но с уточнением, может кто-нибудь сможет помочь...

Мне нужно подключиться к SQL-серверу(это понятно )

Хочется чтобы пользователь мог нажать на кнопочку и ему вываливался список серверов. это я сделал

код C#
C#
1
2
3
4
5
6
7
8
9
                SqlDataSourceEnumerator instance = SqlDataSourceEnumerator.Instance;
                DataTable table = instance.GetDataSources();
                foreach (DataRow row in table.Rows)
                {
                    if ( row[ "InstanceName" ].ToString() == "" )
                        serverComboBox.Items.Add( row[ "ServerName" ] );
                    else
                        serverComboBox.Items.Add( row[ "ServerName" ]+"" + row[ "InstanceName" ] );
                }
а дальше в идеале надо, чтобы в соседнем окошечке вываливался список баз данных... и вот тут я попал в тупик...

может знает кто????
1
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
20.10.2006, 13:27
Ответы с готовыми решениями:

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

Скорость поиска SQL серверов
Добрый день. Программным способом запрашиваю список доступных SQL-серверов, делаю это традиционно через SqlDataSourceEnumerator. Но...

Как получить список SQL серверов?
вообщето по теме, и плюс в выбранном серваке получить список БД. Это можно реализовать?

10
86 / 62 / 69
Регистрация: 15.03.2007
Сообщений: 6,903
20.10.2006, 14:37
Для получения списка баз данных нужно запросить у пользователя логин и пароль к этому SQL серверу или попытаться подключится к нему используя доверенное соединение. Без входа на сервер список баз получить нельзя.
0
1 / 1 / 0
Регистрация: 26.06.2006
Сообщений: 31
20.10.2006, 15:00  [ТС]
ok. Вот я заканектился:
C#
1
2
3
          string connectionString = "Provider=SQLOLEDB;server=TEST;User ID=;Password=;Integrated Security=SSPI";
          OleDbConnection oleDbConnection = new OleDbConnection( connectionString);
          oleDbConnection.Open();
что дальше?
0
86 / 62 / 69
Регистрация: 15.03.2007
Сообщений: 6,903
20.10.2006, 15:12
Вызывай хранимую процедуру sp_helpdb. Она есть в sql2000/2005.
0
1 / 1 / 0
Регистрация: 26.06.2006
Сообщений: 31
20.10.2006, 15:20  [ТС]
я честно говоря только-только начинаю писать...

можно поподробней где и как ее вызвать???

OleDbConnection.sp_helpdb

или как?
0
86 / 62 / 69
Регистрация: 15.03.2007
Сообщений: 6,903
20.10.2006, 16:49
Примерно так:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
using (SqlConnection sqlConn =  new SqlConnection("Server=TEST;Integrated Security=SSPI"))
{
  sqlConn.Open();
  
  SqlCommand sqlCmd = new SqlCommand();
  sqlCmd.Connection = sqlConn;
  sqlCmd.CommandType = CommandType.StoredProcedure;
  sqlCmd.CommandText = "sp_helpdb";
  
  SqlDataAdapter da = new SqlDataAdapter(cmd);
  DataSet ds = new DataSet();
  da.Fill(ds);
  
  foreach (DataRow row in ds.Tables[0].Rows)
  {
    databaseComboBox.Items.Add(row["name"].ToString());
  }
}
Обрати внимание, что для работы с MSSQL лучше использовать классы из пространства имен System.Data.SqlClient.
Советую также изучить http://samples.gotdotnet.com/Q... rview.aspx примеры для начинающих работать с ADO.NET
0
1 / 1 / 0
Регистрация: 26.06.2006
Сообщений: 31
20.10.2006, 16:57  [ТС]
а без DataAdapter никак нельзя??? GetSchema или что-то подобное?
0
86 / 62 / 69
Регистрация: 15.03.2007
Сообщений: 6,903
20.10.2006, 17:14
Чем тебе DataAdapater не угодил то?
Можно вместо DataAdapter/DataSet использовать SqlDataReader:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
using (SqlConnection sqlConn =  new SqlConnection("Server=TEST;Integrated Security=SSPI"))
{
  sqlConn.Open();
  SqlCommand sqlCmd = new SqlCommand();
  sqlCmd.Connection = sqlConn;
  sqlCmd.CommandType = CommandType.StoredProcedure;
  sqlCmd.CommandText = "sp_helpdb";
  using (SqlDataReader sqlDR = sqlCmd.ExecuteReader(CommandBevavior.CloseConnection))
  {
    int col_name = sqlDR.GetOrdinal("name");
    while (sqlDR.Read())
    {
      databaseComboBox.Items.Add(sqlDR.GetString(col_name));
    }
  }
}
Или ты ждешь что в .NET есть готовый метод для получения списка БД? Может он и есть, но я о таком не знаю. Кроме того никто не мешает тебе оформить вышеприведенный код в свою функцию. Имена баз она может возвращать в виде string[].
0
Silver
09.04.2007, 21:27
Вот тебе кусок кода:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
using SQLDMO;
...
private void GetSQLServers()
{
  for(int i=0;i<20;i++) { cinfo[i] = new CInfo(); }
  SQLDMO.Application dmo = new SQLDMO.Application();
  SQLDMO.NameList SQLNameList = dmo.ListAvailableSQLServers();
  for(int i=0;i<SQLNameList.Count;i++)
   { 
     object srv = SQLNameList.Item( i + 1);
     if(srv != null) { this.cbxServ.Items.Add(srv.ToString()); }
   }
  }
}
Заполняет список доступных SQL серверов в сети. Выдернул из своей проги.
Silver
09.04.2007, 21:29
C#
1
for(int i=0;i<20;i++) { cinfo[i] = new CInfo(); }
Это лишнее...
sn
19.04.2007, 02:54
Даю установку , используйте эту ссылку. Там все есть http://www.codeproject.com/cs/database/locate_sql_servers.asp http://www.codeproject.com/cs/database/locate_sql_servers.asp
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
19.04.2007, 02:54
Помогаю со студенческими работами здесь

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

Настройка взаимодействия MS SQL 2005 x64 и 1C серверов.
На одном компе установлено: Windows 2003 Server x64 и MS SQL 2005 x64, на другом: Windows 2000 Server и 1С сервер. --- Вопрос:...

Поиск серверов в программе-клиенте
Здравствуйте, мне нужна помощь, есть сервер и есть клиент, но он только подключается путем ввода ip адреса и порта. Но как сделать так,...

Как получить список всех доступных SQL-серверов в сети?
например и желательно через COM.

SQL Managment Studio(18.2) ядро СУБД много серверов и ни один не запускается
Дело в том, что я уже раньше устанавливал SQL Managment Studio, не помню какой версии и скачивал базы pubs и northwind. После я все удалил,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию. 2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO Апнулись до NET10. Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта так и в интерактивном режиме. из сложностей - чисто функциональный подход. Решил. . .
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии. . . .
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru