Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2003.09.29;
Скачать: [xml.tar.bz2];

Вниз

Мастера помогите! Как узнать, какие БД уже существуют   Найти похожие ветки 

 
Санек   (2003-09-10 08:35) [0]

Собственноговоря сабж. Надо вернуть список всех БД. Заранее спасибо


 
Digitman   (2003-09-10 08:39) [1]


> Надо вернуть список всех БД


что есть "БД" по твоему разумению ?


 
Санек   (2003-09-10 08:48) [2]

БД - это база данных
СУБД - система управления базами данных. Например InterBase или MySQL.
Вроде так.
Мне надо определить какие БД присутствуют в СУБД :) Вернуть их список по именам. Надеюсь понятно объяснил....


 
Anatoly Podgoretsky   (2003-09-10 09:04) [3]

А есть ли в MySQL такое понятие как регистрация баз данных?, если нет то только сканирование папок, что бочно запрещено.

А это твои базы? Если твои то какая проблема.

А зачем нужна какая то неизвестная база, что с ней делать?


 
Anatoly Podgoretsky   (2003-09-10 09:07) [4]

Санек (10.09.03 08:48) [2]
Поправки к твоей терминолоигии в примерах и картинках

1. Дельфи это дельфи
2. Терминология правильная, но я бы не стал так относиться к InterBase - это больше сервер баз данных, а к СУБД можно отнести его утиль, но не сам сервер, согласен, что утверждение спорное.

Ну а так после объяснения понятно что ты хочешь сделать.


 
Санек   (2003-09-10 09:08) [5]

Все дело в том, что клиент сам создает БД. Я заранее не могу знать, какие БД им созданы. Клиент также может создавать таблицы в этих БД. Мне надо дать возможность выбора самой БД, в которой таблицы будут создаваться. Самый простой способ (и наглядный) - позволить клиенту выбрать из списка нужную ему БД.
Ну а имея список на руках я спокойно могу из него исключить системные БД


 
Санек   (2003-09-10 09:10) [6]

Anatoly Podgoretsky © (10.09.03 09:07)
ПОлучилось так, что мы набирали текст одновременно. Что касается InterBase - я спорить не буду. Так или иначе я хотел просто объяснить, в чем проблема :)


 
DenK_vrtz   (2003-09-10 09:12) [7]

Санек, а ты не путаешь понятие схемы(usera) и БД?


 
Санек   (2003-09-10 09:15) [8]

А причем тут это?


 
DenK_vrtz   (2003-09-10 09:19) [9]

А при том, чтобы создавать базу надо иметь нехилые знания


 
Санек   (2003-09-10 09:21) [10]

Это другая тема разгвора. Мне надо получить ответ на вопрос, заданный в начале ветки


 
Anatoly Podgoretsky   (2003-09-10 09:22) [11]

Санек (10.09.03 09:08) [5]
В таком случае тебе нужна еще одна таблица, bases, в которой будут хранить базы созданные / привязанные к клиент, при создании базы добавлять туда с информацие о клиенте.
Выкидывать же весь список существующих баз клиенту иделогически не верно, да и вопросы безопасности могут иметь место.
Как организовать управление этой таблицей отдельный разговор. Лучше если это будет делаться автоматически при создании/удалении базы.


 
Санек   (2003-09-10 09:33) [12]

Анатолий, я тут с вами полностью согласен. Я уже думаю об этом. Но это накладные расходы, связанные с написанием отдельной процедуры и отладкой.
С другой стороны (я использую MySQL) в этой СУБД есть запрос SHOW DATABASES, который в консоли он возвращает список всех БД. "Прикрутить" это дело к своему проекту у меня не получается. Умом понимаю, что возвращаемый тип StringList, но откуда его забрать понять не могу.


 
Val   (2003-09-10 10:03) [13]

>Санек (10.09.03 09:33) [12]
С другой стороны (я использую MySQL) в этой СУБД есть запрос SHOW DATABASES
Ну тогда очень вероятно, что есть системная таблица с этими данными.


 
Кщд   (2003-09-10 10:04) [14]

а что, в ТХТ файл направить результат запроса нельзя?
оттуда и заберёшь.


 
Санек   (2003-09-10 10:07) [15]

Можно. Откуда взять сам результат запроса?


 
Санек   (2003-09-10 10:11) [16]

to Val
Таблица-то есть, только вся беда в том, что туда данные о создании других таблиц не заносятся :(


 
Val   (2003-09-10 10:21) [17]

>Санек (10.09.03 10:11) [16]
не понял?
если SHOW DATABASES показывает то что вам нужно, то он откуда-то это берет, верно? очень подозреваю, что из системной таблицы - сделать из нее запрос будет лучше, чем выполнять эту команду с выводом в файл а потом оттуда считывать - сами видите - явные потери в скорости.


 
Nikolay M.   (2003-09-10 10:30) [18]


> Ну тогда очень вероятно, что есть системная таблица с этими
> данными

Есть. Вопрос, даст ли кому админ права на чтение из этой таблицы.


 
Санек   (2003-09-10 10:35) [19]

to Val
Ну да, это правильный вариант. Только беда в том, что системной таблице нет ни одной записи о текущих БД. Однако SHOW DATABASES отображает все созданные базы


 
Val   (2003-09-10 10:40) [20]

>Nikolay M. © (10.09.03 10:30) [18]
кому они нужны еще? список хочет получить сам разработчик(т.е. админ, т.к. он имеет к ней доступ), как я понял.
>Санек (10.09.03 10:35) [19]
кажется это говорит о том, что вы смотрите не ту системную таблицу


 
Санек   (2003-09-10 10:46) [21]

Все таблицы у меня перед глазами. Если Вы знаете MySQL, то откройте БД mysql. По идее в таблицу bd должны заноситься имена создаваемых БД. Но этого не происходит (если вообще должно происходить). Забегая вперед - насчет моих привелегий. У меня ALL GRANTS!


 
Nikolay M.   (2003-09-10 10:46) [22]


> список хочет получить сам разработчик(т.е. админ, т.к. он
> имеет к ней доступ),

С каких это пор Разработчик=Админ?
И какое дело разработчику до чужих БД, которые лежат на одном с ним сервере - он вообще ничего о них не должен знать.

А вот какую таблицу смотрит автор вопроса, действительно интересно было бы узнать...


 
Nikolay M.   (2003-09-10 10:47) [23]

Посмотри таблицу user


 
Санек   (2003-09-10 10:50) [24]

И что? Пароль, Логин, привилегии Есть ICQ? Так оно быстрее будет


 
Плохиш_   (2003-09-10 10:53) [25]

2Санек

А что в книжках по MySQL и в доках это не описано?
Если нет then Поменяй книжки


 
Nikolay M.   (2003-09-10 10:54) [26]

Аська есть.
В анкете.


 
Санек   (2003-09-10 10:58) [27]

to Плохиш_
Написано... Для консоли MySQL все и написано.... Причем подробненько так.... А мне для Делфи все это надо


 
Val   (2003-09-10 11:21) [28]

>Nikolay M. © (10.09.03 10:46) [22]
Николай мы говорим не об абстракциях, а о конкретном вопросе, кажется автор подтверждает, что у него права админа, к чему затевать ненужный философский спор?

>Санек (10.09.03 10:46) [21]
к сожалению, я не работаю с MySQL :( в советах по данному вопросу опираюсь лишь на аналогии с другими серверами :(


 
Nikolay M.   (2003-09-10 11:35) [29]


> Val © (10.09.03 11:21) [28]

После подтверждения, что права админа, вопрос снимается. И поскольку говорим действительно не об абстракциях, сначала нужно узнать, что есть у автора вопроса, а чего - нет. Лично я не собираюсь распинаться, чтобы через пару десятков постов получить вопрос типа "А где все это нужно смотреть?". А вот теперь все ясно, можно продолжать обсуждение.


 
Anatoly Podgoretsky   (2003-09-10 11:49) [30]

Nikolay M. © (10.09.03 10:46) [22]
Не только не должен, но это еще и вредно, как для пользователя, так и для разработчика, я как представлю попытку подключения чужой неизвестной базы, даже в дрожь бросает.
Тем более что по условию ясно видно, что список должен быть известных баз.


 
Санек   (2003-09-10 12:54) [31]

Господа, вопрос закрыт. Выражаю искреннюю благодарность Nikolay M за терпение и помощь.



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2003.09.29;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.51 MB
Время: 0.011 c
14-96409
саша2
2003-09-12 11:26
2003.09.29
как понимать их


1-96221
DrFox
2003-09-14 20:50
2003.09.29
Скрытие Формы


7-96466
Вован
2003-07-17 13:33
2003.09.29
Ограничена ли и как длина буфера COM порта???


3-96113
BorisSV
2003-09-10 14:27
2003.09.29
Про TDBGrid.DataSource


4-96474
Gimer
2003-07-27 23:11
2003.09.29
Выпадающий список в Эксплоере





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский