Форум: "Прочее";
Текущий архив: 2007.08.12;
Скачать: [xml.tar.bz2];
ВнизБД Найти похожие ветки
← →
de. (2007-07-16 08:43) [0]1. Имеется БД нужно получить список таблиц в ней.
2. Имеется таблица нужно получить список колонок в ней.
Если честно интересует непосредственно код.
Извиняюсь если off top.
← →
Карелин Артем © (2007-07-16 08:45) [1]На языке Ада код?
← →
Ega23 © (2007-07-16 09:03) [2]Код - на Visual Basic, а СУБД - Linter
← →
de. (2007-07-16 09:09) [3]
> Карелин Артем © (16.07.07 08:45) [1]
Не все наверное поймут, что на языке Пролог...
На delphi естественно...
← →
evvcom © (2007-07-16 09:16) [4]
> de. (16.07.07 09:09) [3]
Да причем тут delphi? СУБД какая?
← →
Ega23 © (2007-07-16 09:16) [5]
> Не все наверное поймут, что на языке Пролог...
Ты, блин, чудо, ты когда начнёшь соображать, что на вопрос: "Пойди туда - не знаю куда, принеси то - не знаю что", ты будешь в ответ только стёб и глумление получать?
Какой язык, какая СУБД?
← →
de. (2007-07-16 09:20) [6]
> Ega23 © (16.07.07 09:16) [5]
А да да... MS SQL Server 2000, извиняюсь не выспался. :-)))Понедельник день тяжелый...
← →
Ega23 © (2007-07-16 09:22) [7]см. системные таблицы sysobjects и syscolumns
← →
Anatoly Podgoretsky © (2007-07-16 09:33) [8]> de. (16.07.2007 08:43:00) [0]
Переведи на английский.
← →
Иксик © (2007-07-17 10:34) [9]Список таблиц в текущей бд:
SELECT * FROM INFORMATION_SCHEMA.tables
или, если вьюхи не нужны
SELECT * FROM INFORMATION_SCHEMA.tables WHERE TABLE_TYPE = "BASE TABLE"
если нужны только названия таблиц и не нужна дополнительная информация, то
SELECT TABLE_NAME FROM INFORMATION_SCHEMA.tables WHERE TABLE_TYPE = "BASE TABLE"
Список колонок в таблице:
SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = "имя таблицы"
или соответственно
SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = "имя таблицы"
А так можно взять названия всех существующих колонок всех существующих таблиц:
SELECT TABLE_NAME, COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS
Enjoy :) Но вопросы задавать научись :)
← →
Иксик © (2007-07-17 10:41) [10]Кстати, имхо это будет работать на многих субд. Из крупных information_schema не поддерживалась oracle, но возможно сейчас это поменялось.
← →
sniknik © (2007-07-17 10:53) [11]> Кстати, имхо это будет работать на многих субд.
имхо нет. но вот если воспользоваться схемами поддерживаемыми самими провайдерами (для ADO)... тогда да. очень многое, включая oracle (неважно как провайдер получит нужную инфу, из каких таблиц/переменных, главное у него должен быть (и реализован. в основном) соответствующий метод, стандартно спецификации).
но, не будем забивать автору голову, ведь ясно же, он пользуется средствами доступа очень крутыми и совершенно нестандартными, разработанными в нижнем Зимбабве (не упомянул, значит и не надеется что их сдесь ктонибудь знает...).
← →
pasha_golub © (2007-07-17 13:24) [12]
> sniknik © (17.07.07 10:53) [11]
> имхо нет.
information_schema вроде как стандарт SQL. И Оракле по-моему тоже ее уже поддерживает.
> но вот если воспользоваться схемами поддерживаемыми самими
> провайдерами (для ADO)...
А не все провайдеры все возвращают. Это хорошо если нужны только таблицы и колонки. А если нужен полный реверс, включая CHECK CONTSTRAINTs и прочую лабуду.
← →
Anatoly Podgoretsky © (2007-07-17 16:40) [13]> pasha_golub (17.07.2007 13:24:12) [12]
Стандарт, но когда говорим о стандартах и Оракле, почему то разбирает смех.
← →
pasha_golub © (2007-07-17 18:04) [14]
> Anatoly Podgoretsky © (17.07.07 16:40) [13]
> Стандарт, но когда говорим о стандартах и Оракле, почему
> то разбирает смех.
>
Ну, тоже верно. :)
← →
sniknik © (2007-07-17 18:11) [15]> information_schema вроде как стандарт SQL.
аксесс нету, VFP нету, FB 1.5 (старый, может поменялось...) нету, ... ???
а вот через схемы ADO они возвращают все мне нужное (один из требований было кстати когда провайдера для IB искал)
> А не все провайдеры все возвращают.
естественно, но их всетаки побольше чем поддерживающих "вроде как стандарт". на порядок.
← →
Иксик © (2007-07-17 18:46) [16]В MySql есть :)
Страницы: 1 вся ветка
Форум: "Прочее";
Текущий архив: 2007.08.12;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.044 c