The OpenNET Project / Index page

[ новости/++ | форум | wiki | теги | ]

03.03.2017 09:48  Представлен usql, универсальный интерфейс командной строки для СУБД

В рамках проекта usql развивается утилита с универсальным интерфейсом командной строки, поддерживающим работу с СУБД PostgreSQL, MySQL, Oracle, SQLite и Microsoft SQL Server. Реализованные в usql команды повторяют интерфейс утилиты psql, развиваемой проектом PostgreSQL. Особенностью usql является использование схемы dburl для задания параметров подключения к БД, напоминающей URL (например, "pg://user:pass@localhost/dbname" или "file:dbname.sqlite3"). Целью разработки usql является создание прозрачной замены psql, не привязанной к конкретной СУБД. Код написан на языке Go и распространяется под лицензией MIT.



  1. Главная ссылка к новости (https://news.ycombinator.com/i...)
Лицензия: CC-BY
Тип: Программы
Ключевые слова: usql, psql, postgresql, database, sql
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение Ajax/Линейный | Раскрыть все сообщения | RSS
 
  • 1.1, Аноним (-), 09:52, 03/03/2017 [ответить] [показать ветку] [···]    [к модератору]
  • +4 +/
    Полезная вещь, давно мечтал об интерфейсе psql для MySQL.
     
  • 1.2, Аноним (-), 09:57, 03/03/2017 [ответить] [показать ветку] [···]    [к модератору]
  • –1 +/
    надо попробовать
     
  • 1.4, XXXasd (ok), 10:00, 03/03/2017 [ответить] [показать ветку] [···]    [к модератору]
  • +7 +/
    > Особенностью usql является использование схемы dburl для задания параметров подключения к БД, напоминающей URL (например, "pg://user:pass@localhost/dbname" или "file:dbname.sqlite3")

    ВОТ ЭТО ЧУДЕСА!

    ради этого конечно стоит сразу устанавливать :-D

     
     
  • 2.18, пох (?), 13:06, 03/03/2017 [^] [ответить]     [к модератору]
  • –1 +/
    это - нормально как, блин, по-твоему, еще должно выглядеть подключение к БД, ко... весь текст скрыт [показать]
     
     
  • 3.20, anonymous (??), 13:30, 03/03/2017 [^] [ответить]    [к модератору]  
  • –2 +/
    у скулайте в жопе тип, потому что это расширение файла
     
     
  • 4.24, пох (?), 16:10, 03/03/2017 [^] [ответить]    [к модератору]  
  • +/
    а, то есть у них file намертво и навеки прибит к sqlite? (ну, я надеюсь, что хоть так, а не автоугадав engine по расширению)
     
  • 3.33, R (?), 00:36, 05/03/2017 [^] [ответить]     [к модератору]  
  • +/
    Делаешь man 2 connect, затем man 2 recv с флагом MSG_PEEK и база тебе расскажет ... весь текст скрыт [показать]
     
  • 1.5, иксперд (?), 10:11, 03/03/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • +5 +/
    только сами команды в sql будут различаться, так что смысла нет.
     
     
  • 2.6, Аноним (-), 10:13, 03/03/2017 [^] [ответить]    [к модератору]  
  • –1 +/
    Смысла много, если посмотреть на убогость mysql-ного клиента.:(
     
     
  • 3.8, arka (ok), 10:41, 03/03/2017 [^] [ответить]    [к модератору]  
  • +4 +/
    Можете немного прояснить в чём его убогость, и что за фичи в этом клиенте?
     
     
  • 4.13, RomanCh (ok), 11:17, 03/03/2017 [^] [ответить]    [к модератору]  
  • +6 +/
    Например, крайне убогое (на фоне psql) автодополнение и выпадание по Ctrl+C.

    Последнее убого тем что psql (так же как и привычный shell) по Ctrl+С позволяет сбросить набираемый длинный запрос когда курсор находится в любом его месте и начать листать историю с последней команды. В mysql же Ctrl+C выбросит из клиента, а если его не нажать, то придётся затирать всю команду целиком (или дополнять её \c) после чего вы останетесь не на самой последней позиции в истории, а на месте затёртой команды. Что далеко не всегда удобно.

    Ещё веселее бывает, если вы запустили запрос и понимаете что он выполняется дольше чем предполагалось и не очень-то он уже и нужен, то нажимаете Ctrl+C что бы прервать его, но иногда в этот момент запрос завершается сам, ваш Ctrl+C уходит в mysql клиента и обрывает вашу сессию. Что опять-таки совершенно неудобно.

    Вообще, один хоткей на два совершенно разных действия - прерывание запроса и прерывание работы клиента есть на мой взгляд чистейший идиотизм.

     
     
  • 5.15, Аноним (-), 11:49, 03/03/2017 [^] [ответить]     [к модератору]  
  • +2 +/
    По первому пункту Посмотри, работает ли Ctrl u emacs-овское и readline-овское с... весь текст скрыт [показать]
     
     
  • 6.16, Аноним (-), 12:04, 03/03/2017 [^] [ответить]    [к модератору]  
  • +2 +/
    > Интересно, работает ли это в cli мускула.

    mysql используется readline или libedit,

    Если скомпилен с readline, то работает.

     
  • 6.32, Анонимец01 (?), 13:16, 04/03/2017 [^] [ответить]    [к модератору]  
  • +/
    > Посмотри, работает ли Ctrl+u

    Дело не в том, чем заменить. Просто такие вещи входят в привычку и приходится трахаться каждый раз с особенностями того или иного клиента.

     
  • 5.17, Аноним (-), 12:11, 03/03/2017 [^] [ответить]    [к модератору]  
  • –1 +/
    > Например, крайне убогое (на фоне psql) автодополнение и выпадание по Ctrl+C.

    И как вам в 2012м?
    https://bugs.mysql.com/bug.php?id=1989

    Верните машину времени на место.

     
     
  • 6.19, пох (?), 13:10, 03/03/2017 [^] [ответить]     [к модератору]  
  • +1 +/
    так же как в 2003м баг закрыт без попытки что-либо с этим сделать В 2012м посл... весь текст скрыт [показать]
     
     
  • 7.42, Аноним (-), 20:04, 07/03/2017 [^] [ответить]     [к модератору]  
  • +/
    отпишите баг репорт и точные шаги чтобы воспроизвести mysql select sleep 5 ... весь текст скрыт [показать]
     
  • 5.38, vitalif (ok), 10:37, 07/03/2017 [^] [ответить]     [к модератору]  
  • +/
    Хы-хы, будет ли эта поделка нормально автодополнять - большой вопрос Привычка сб... весь текст скрыт [показать]
     
  • 3.21, anonimous (?), 13:46, 03/03/2017 [^] [ответить]    [к модератору]  
  • +2 +/
    Зачем люди вообще используют mysql, если есть postgres?
     
     
  • 4.25, пох (?), 16:16, 03/03/2017 [^] [ответить]    [к модератору]  
  • +1 +/
    > Зачем люди вообще используют mysql, если есть postgres?

    обычно после первой или второй встречи с vacuum full - в зависимости от степени тяжести травм, полученных после первой.

     
     
  • 5.34, Вареник (?), 04:11, 05/03/2017 [^] [ответить]    [к модератору]  
  • +/
    Странные у Вас встречи...

    За дясятилетия никаких проблем, в разных проектах.

     
  • 4.27, KonstantinB (ok), 21:24, 03/03/2017 [^] [ответить]    [к модератору]  
  • +1 +/
    Смотря кто. Недовеб-программисты - потому что ничего другого не знают.

    Но бывают и объективные причины: https://eng.uber.com/mysql-migration/

     
     
  • 5.29, fi (ok), 23:18, 03/03/2017 [^] [ответить]    [к модератору]  
  • +/
    известный не кошерный пример - простое обоснование "почему я ХОЧУ mysql, а вы мне pg дали"
     
  • 5.35, Анонимец01 (?), 15:57, 05/03/2017 [^] [ответить]    [к модератору]  
  • +/
    > Но бывают и объективные причины: https://eng.uber.com/mysql-migration/

    Спасибо, очень толковая статья

     
  • 4.36, adminlocalhost (ok), 20:06, 05/03/2017 [^] [ответить]    [к модератору]  
  • +/
    Ну вот
    http://postgresql.ru.net/node/215495  

    Мало что ли?

     
  • 1.7, Аноним (-), 10:31, 03/03/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    неужто можно наконец-то будет выбросить этот чёртов sqlplus?!
     
     
  • 2.9, Аноним (-), 10:43, 03/03/2017 [^] [ответить]    [к модератору]  
  • +7 +/
    Откройте для себя SQLcl - это утилита командной из SQL Developer от Oracle
    Если не нравится ява - сделайте alias sqlplus='rlwrap sqlplus '

    Никогда не любил универсальные утилиты. Вечно в них что-то не поддерживается или поддерживается не так. А уж родной psql от постгри ни на что не променяю ни за какие коврижки. Лучше консольного клиента не видел.

     
     
  • 3.31, ACCA (ok), 07:09, 04/03/2017 [^] [ответить]    [к модератору]  
  • +/
    Невелика разница.

    В Орякеле получить аналог \l - это поубивать всех индусов апстену.

    Про \dt и проч. даже мечтать не придходится.

     
  • 2.10, БоБо (?), 10:45, 03/03/2017 [^] [ответить]    [к модератору]  
  • +/
    Я думаю, что у этой поделки функционал поменьше, нет? :) Скорее всего, через него только простые запросы типа select * from table можно делать.
     
     
  • 3.40, vitalif (ok), 10:39, 07/03/2017 [^] [ответить]    [к модератору]  
  • +/
    > Я думаю, что у этой поделки функционал поменьше, нет? :) Скорее всего,
    > через него только простые запросы типа select * from table можно
    > делать.

    У sql флюс тоже все оч грустно, оракл - худшая субд))

     
  • 2.39, vitalif (ok), 10:38, 07/03/2017 [^] [ответить]    [к модератору]  
  • +/
    > неужто можно наконец-то будет выбросить этот чёртов sqlplus?!

    Гы, я в консоли виесто него извращался и DBI::Shell юзал)))

     
  • 1.14, Аноним (-), 11:45, 03/03/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • +1 +/
    Что насчёт подключения и авторизации через unix-сокет? Ssl сертификат?
     
  • 1.22, Аноним (22), 14:40, 03/03/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • +1 +/
    Ура! Новость о проге в 400 строк.
     
     
  • 2.23, Admino (ok), 15:17, 03/03/2017 [^] [ответить]    [к модератору]  
  • –1 +/
    Это Go, он такой!
     
  • 1.26, ptr (??), 20:56, 03/03/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Толку только с такой утилиты на реальной БД с тысячами таблиц и десятками (если не сотнями) полей в каждой - никакого.
    Необходим горизонатальный скроллинг хотя бы. Да и вообще, интерактивная работа с рекордсетом. А лучше даже с несколькими. И автозавершение/перебор по именам объектов в БД.

     
  • 1.28, Аноним (-), 23:12, 03/03/2017 [ответить] [показать ветку] [···]     [к модератору]  
  • +1 +/
    Отличный стандарт ... весь текст скрыт [показать]
     
  • 1.30, ALex_hha (ok), 00:34, 04/03/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    > Можете немного прояснить в чём его убогость, и что за фичи в этом клиенте?

    а вы запустите штатный консольный клиент postgresql и больше возвращаться на mysql не захотите ;)

     
     
  • 2.41, vitalif (ok), 10:41, 07/03/2017 [^] [ответить]    [к модератору]  
  • +/
    >> Можете немного прояснить в чём его убогость, и что за фичи в этом клиенте?
    > а вы запустите штатный консольный клиент postgresql и больше возвращаться на mysql
    > не захотите ;)

    Не замечаю такого, единственное что лучше это дополнение, но мне некритично

    А вот то что \d и т.п это КОМАНДЫ psql, а не SQL запросы - очень неудобно. Потом когда надо определение таблицы программно вытащить, приходится его по кусочкам из каталога собирать. А в mysql просто такой же запрос делаешь SHOW CREATE TABLE и все...

     
  • 1.37, лютый жабист__ (?), 05:34, 06/03/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    С одной стороны, psql круче всех на голову, особенно ораклового поделия.

    С другой стороны, всё-равно на даже средних базах уже неудобно работать даже в psql. Гораздо удобнее когда у тебя на экране все 50++ твои основных команды и ты их запускаешь по ctrl+enter, а не мучительно ищешь в истории или не дай божЕ, набираешь, копипастишь. Графический показометр схемы итд итп

    В общем, увы, но нинужно.

     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:


      Закладки на сайте
      Проследить за страницей
    Created 1996-2018 by Maxim Chirkov  
    ДобавитьПоддержатьВебмастеруГИД  
    Hosting by Ihor