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

Получить список столбцов из таблицы

06.11.2012, 00:27. Показов 13031. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток. Пишу программу на С#, попутно учу этот язык. Пытаюсь извлечь список столбцов из таблицы БД.
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
     
MySqlConnection MyCon= new MySqlConnection();
XmlDocument test=new XmlDocument();
XmlElement db = test.CreateElement("db");
DataTable table = MyCon.GetSchema("Tables");               
foreach (DataRow row in table.Rows)
  {
      XmlElement xName = test.CreateElement("TName",row["TABLE_NAME"].ToString());
      string tName = row["TABLE_NAME"].ToString();
      DataTable col = MyCon.GetSchema("Columns");
        foreach (DataRow row1 in col.Rows)
          {
             if (row1["TABLE_NAME"].ToString() == tName)
               {
                  XmlElement xCol = test.CreateElement("CName", row1["COLUMN_NAME"].ToString());
                  xName.AppendChild(xCol);
                }
           }
                   
           db.AppendChild(xName);
     }
                test.AppendChild(db);
                test.Save("test.xml");
По уму надо писать
C#
1
 DataTable col = MyCon.GetSchema("Columns", res);
где res - массив с ограничениями, но при попытке запуска с ним мне в col возвращает пустоту, что я делаю не так? Массив так писал -
C#
1
string[] res={DBname,null,null,TName,null}
И еще - когда в xml записываю, то пишется следующее <TName xmlns="1">, что за xmls, как убрать? Раньше не было, потом внезапно стало появляться.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
06.11.2012, 00:27
Ответы с готовыми решениями:

Как по имени таблицы получить список имен и типов полей таблицы в entity framework?
У меня есть библиотека сделанная с использованием ADO.NET. В ней для получения списка наименований полей и их типов по строковому имени...

Получить все названия столбцов из таблицы БД Postgrec
Добрый день! Мне нужно получить значения всех столбцов в таблице и записать их в коллекцию. Вот есть код, но он не работает. Подскажите,...

Как получить список всех столбцов нужной таблицы
есть база данных &quot;Baza&quot; и таблица &quot;table&quot;. Мне нужно получить список всех имен столбцов этой таблицы, в нете искал, ничего толкового не...

3
46 / 46 / 19
Регистрация: 15.03.2009
Сообщений: 178
06.11.2012, 05:39
Если использовать только датасет, то можно примерно так:

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
SqlConnection myConnection = new SqlConnection(connString);
SqlDataAdapter myAdapter = new SqlDataAdapter("select * from TableName", myConnection);
DataSet dataSet = new DataSet();
myConnection.Open();
try
{
    myAdapter.Fill(dataSet, "tabl");
}
catch
{
    MessageBox.Show("Неверная SQL команда: либо Connection ");
}
finally { myConnection.Close(); }
 
for (int i = 0; i < dataSet.Tables[0].Columns.Count; i++)
    MessageBox.Show(dataSet.Tables[0].Columns[i].ColumnName);
1
0 / 0 / 1
Регистрация: 14.12.2010
Сообщений: 13
06.11.2012, 20:41  [ТС]
Eva_yk, мысль интересная, но мне потом надо доставать nриггеры, хранимые процедуры, функции, пользователи, роли и т.д
через GetSchema вроде компактнее получается, поэтому хотел так сделать
0
1 / 1 / 0
Регистрация: 20.09.2014
Сообщений: 70
20.09.2014, 11:40
А как получить не имя, а значения полей?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
20.09.2014, 11:40
Помогаю со студенческими работами здесь

Получить название столбцов таблицы
Всем добра! Начал работу с базами данных sql и в связи с тем что на форме куча таблиц нужно получить в листбокс названия всех таблиц и уже...

Получить имена столбцов таблицы БД Access
Собственно, как это сделать? SQL запросом? Если да - то каким? Или свойствами ADOQuery? То опять же каким? Думал перебирать...

Получить названия и количество столбцов таблицы Access
вопрос из темы https://www.cyberforum.ru/vb-net/thread808001.html Каким образом получить названия и кол-во столбцов для сохранения по...

Как получить имена столбцов таблицы php
Как получить имена всех столбцов таблицы?

Не удаётся получить список данных из таблицы в БД
Посмотрел статью вот здесь http://javaxblog.ru/article/java-hibernate-1/ и решил таким же образом получить список начальников public...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: 1. Реализовать контроль заполнения реквизита. . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru