Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Пара вопросов по ODBC и .Net / 6 сообщений из 6, страница 1 из 1
17.08.2004, 21:59
    #32653713
Zugma
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пара вопросов по ODBC и .Net
Добрый день.
Есть БД неопределенной структуры, к которой подключаюсь по ODBC...
Укажите, пожалуйста, направления, где искать ответы на вопросы (можно использовать только инструменты .Net, в частности System.Data.Odbc Namespace):
1) узнать список таблиц в базе;
2) информацию про таблицы (конкретно: кол-во столбцов, их типы (это самое важное), число записей);
3) Перечислить ODBC-источники (средствами .Net);
4) Как вообще в одной строчке обратиться (на запись/чтение) к x-овому полю (столбец x) y-ого элемента таблицы "MyTable";
Заранее огромное спасибо.
P.S. Если будут, примеры желательно на C#
...
Рейтинг: 0 / 0
17.08.2004, 22:32
    #32653728
кузя
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пара вопросов по ODBC и .Net
1,2
odbc очень специфичен и на поставленные вопросы может дать ответ, если известен тип СУБД

эти вещи проще сделать в OLeDb (через GetOleDbSchemaTable - всего 1 вызов по каждому 1-2 пункту) поверх odbc

число записей, через SELECT COUNT(*) FROM TBL

<ИМХО>
3. здесь, наверное, надо через pinvoke SQLConfig...[]
</ИМХО>

4. это о DataTable ??
...
Рейтинг: 0 / 0
18.08.2004, 09:17
    #32653911
Zugma
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пара вопросов по ODBC и .Net
кузя1,2 odbc очень специфичен и на поставленные вопросы может дать ответ, если известен тип СУБД
Хм... А я читал, что как раз ODBC в большой степени безразличен к типу СУБД - на то он и ODBC; причем если СУБД не может изначально предоставлять возможности, описанные в стандарте ODBC, то она даже должна их эмулировать...
Тем не менее, в моем случае тип СУБД заранее не известен. Хотя скорее всего это будет Access или MS SQL Server.
кузяэти вещи проще сделать в OLeDb (через GetOleDbSchemaTable - всего 1 вызов по каждому 1-2 пункту) поверх odbc
"в OLeDb поверх odbc" - "поверх" это как?
А в System.Data.Odbc нет каких-нибудь таких SchemaTable? :)
кузячисло записей, через SELECT COUNT(*) FROM TBL
Понятно.
кузя3. здесь, наверное, надо через pinvoke SQLConfig...[]
pinvoke SQLConfig - это уже не .Net, по-моему...
кузя4. это о DataTable ??
Да. Т.е. есть System.Data.DataSet, заполненный при помощи System.Data.Odbc.OdbcDataAdapter.
...
Рейтинг: 0 / 0
18.08.2004, 11:23
    #32654237
кузя
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пара вопросов по ODBC и .Net
автор"в OLeDb поверх odbc" - "поверх" это как?
Provider=MSDASQL - microsoft oledb provider for odbc drivers


авторSystem.Data.DataSet, заполненный при помощи System.Data.Odbc.OdbcDataAdapter
независимо через что заполнен:

int rowNum;
...
dataSet.Tables["myTable"].Rows[rowNum]["myColumn"]
...
Рейтинг: 0 / 0
18.08.2004, 11:57
    #32654344
Zugma
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пара вопросов по ODBC и .Net
кузяProvider=MSDASQL - microsoft oledb provider for odbc drivers
Понятно. Посмотрю...
кузяdataSet.Tables["myTable"].Rows[rowNum]["myColumn"]
Хм... Я, вроде, так пробовал... видно руки кривые... :)
Кстати нельзя вместо имен для таблиц и столбцов использовать индексы?:
dataSet.Tables[TableNum].Rows[rowNum][ColumnNum]
...
Рейтинг: 0 / 0
18.08.2004, 12:06
    #32654377
кузя
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пара вопросов по ODBC и .Net
можно, но осторожно :)
особенно для обращения к таблицам в DataSet.
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Пара вопросов по ODBC и .Net / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]