Господа, есть СУБД, похоже на базе MySQL или MS SQL, точнее не знаю (в этом новичок), к СУБД консольный доступ. Необходимо узнать список таблиц. Команда SHOW TABLES выдает следующее: SQL-запрос выполнен (Время от начала 6 мин. 40 сек., время запроса 0.02 сек.).code: 0:0 i=10
Насколько я понял, INFORMATION_SCHEMA - это что-то типа отдельной информационной бд. (если не прав - просьба поправить). при вводе команд select table_name <вылетает с неизвестной ошибкой> select table_name from INFORMATION_SCHEMA.TABLES пишет что набор данных (схема) не найден ошибка 36049 при запросе списка баз данных БД information_schema не выводит, вроде как ее нет.
мб прав не хватает? 36049 - вообще впервые вижу такой номер ошибки. скопипасти полный эррор сюда. ида, ??? upd: не прочитал первый пост. это не mysql точно, и врятле mssql. и там и там должен был отработать запрос в information_schema
скопипастить не получится - это другая машина. но полный эрр - пожалуйста: # SELECT table_name FROM information_schema.tables Ошибка при обработке запроса. Ошибка: 36049 (Набор данных (схема) не найден) Результат: 0 (0) # # # SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES Ошибка при обработке запроса. Ошибка: 36049 (Набор данных (схема) не найден) Результат: 0 (0) # # SELECT TABLE_NAME Ошибка при обработке запроса. Ошибка: 10054 (Нет описания ошибки) Результат: 0 (0) при последнем запросе одновременно с ошибкой в консоли выводит окно "Обнаружена ошибка. Приносим извинения за неудобства. Если работа не была закончена, рабочие данные могут быть утеряны." Да, база не MySQL и не ms. она самописная. я лишь предположил, что она написана на базе My или MS... контактов с разработчиками нет.
Пишу программу автоматически генерирующую код БД(MSSQL, Firebird, PostgreSQL). Если с MSSQL & Firebird проблем особых не возникло, так как с данными Бд уже приходилось работать, то с PostgreSQL возникли небольшые трудности. 1.Как обращаться к системным параметрам бд?например мне нужен список имен существующих БД и проверка.В MsSQL например я это делал следующим образом: Code: if exists (select name from sys.databases where name = N'MS_Datenbank_Struktur') Какая альтернатива есть sys.databases ?Как идет обращение к списку дб или например таблиц? 2.Можно ли в pgAdmin выполнить скрипт?Что бы создать БД приходится добавлять её посредство пары кликов и заполнения поля.То есть если я далее в этой бд пытаюсь исполнить скрипт типо : Drop database DaеabaseName; Create Database DatabaseName; Получаю ошибку, что не возможно удалить дб,так как она испольщуется(что естественно, так как sql запрос я составляю находясь в ней). 3.Как создавать дб через консоль?Мои действия: C:\Programme\PostgreSQL\9.1\bin> createdb -u postgres -p 5432 - h localhost -E UTF-8 -e DatabaseName Все отлично - БД создается бе проблем. Однако, мне требуется что БД создавалась из sql - файла, то есть в MSSQL я писал например следующее: sqlcmd -S.\SQLEXPRESS -E -i "FielPath" Команды в хелпе консоли смотрел, однако не нашел нужного. Буду рад советам и помощи.
Посоны, очередной вопрос, как построить запрос. я выбираю из базы 20 записей Таблица выглядит так id | time | free Нужно ПОЛУЧЕНЫЕ записи отсортировать ордер бай деск тайм и ордер бай деск фрии. Заранее спасибо
Имею предстовление как по одной оприделенной табле вывести деск чтоб сохранялась структура значений, вот пример в information_schema.tables: в твоем случае что то подобное будет выглядить примерно так где time то поле по которому нужен вывод под деск.
За то время, что вы ждете ответа, можно было найти ответы на оффсайте. 1. sys.databases - вы СУБД не попутали? В восьмой ветке это таблица pg_database. 2. Подключитесь к другой БД, дропайте нужную. 3. Команда создания новой базы такая же, что и в других СУБД.
Во первых во время выходных я этим не занимался. Во вторых - не мешало бы читать более внимательно& я писал - что sys.database - не для postgresql, я привел лишь пример.pg_database & pg_tables - да, уже прочел об этом. По второму пункту - да, здесь я был невнимателен.Естественно надо было юзать мастер-дб. По третьему пункту - вы видимо невнимательно прочли, что я спрашивал -я спрашивал как создать дб из sql - файла. Кому потребуется: cd C:\programme\PostgreSQL\9.1\bin >psql -U postgres -f "PathToSQLFile" Естественно, у каждого свой путь к директории с постгре. Так же не забывайте - что если в начале инсталяции вы создали пароль к учетной записи - то при использовании команд через консоль, у вас будет запрашивать пароль. *При вводе пароля в консоль пароль не отображается, так что не паниковать. Как бы то ни было, все
Как только на MySQL выбрать: SELECT * FROM `Table` WHERE `Status` = 'XXXXXX' где XXXXXX - это результат запроса: SELECT id FROM `Table` WHERE `111` = 'N' Т.е. XXXXXX это любая строка из 2го запроса
Code: select * from table where status in (select id from table where 111 = 'N') так? Или я тебя неправильно понял? table и table - одна и та же таблица? Если разные, но для примера написано одно и то же название, можно так: Code: select a.id, b.* from table a inner join table b on b.status = a.id where a.111 = 'N'