• MSSQL and mysql в чем отличие?

    @Akina
    Сетевой и системный админ, SQL-программист.
    Но это такое убожество что я толком ничерта не понимаю

    Не надо путать причину и следствие. Причина - это что ты ни хрена не понимаешь. А следствие - оно тебе кажется убожеством.
    offtop
    В скобках отмечу, что если ты не только ни хрена не понимаешь, но и жалуешься на это, и считаешь это достаточным обоснованием того, чтобы назвать убожеством - то ты и не хочешь понимать, и не пытаешься понять. В смысле не пытаешься по-настоящему, прочтение пары страниц из мануала под этот термин не проходит.


    отличаются ли запросы sql MSSQL от Mysql

    Да. Точнее, самые простейшие базовые запросы могут выглядеть одинаково. Но не более, чуть только хоть какая-то сложность, и одинаковость заканчивается. Синтаксис различается, и весьма сильно. А кое-где даже подходы к решению задачи различаются, и код с одной СУБД на другую не адаптируется совсем - только полное переписывание.

    возможно ли сменить БД без нарушения функциональности софта.

    Если запросы хардкодом - крайне маловероятно. Если тексты запросов - ресурс, вероятность несколько выше. Если вся лигика находится на сервере, общение с ним выполняется исключительно обращением к представлениям и вызовом процедур, а само приложение является чистым интерфейсом - скорее всего возможно.
    Ответ написан
    Комментировать
  • Беспл. хостинг beget не отправляет письма по php командой mail?

    @zkrvndm
    Софт для автоматизации
    Используй SMTP для отправки письма, на бесплатном хостинге встроенная отправка писем не работает.
    Ответ написан
    Комментировать
  • Беспл. хостинг beget не отправляет письма по php командой mail?

    SagePtr
    @SagePtr
    Еда - это святое
    Бесплатные хостинги не позволяют отправлять почту, иначе это будет халявой для различных спамеров. А если бы и позволяли - то почтовые сервера давно бы их в блеклист добавили из-за обилия спама с них - и письма получателю всё равно попасть не смогли. Да что там почта, многие бесплатные хостинги вообще фильтруют исходящие подключения, чтобы злоумышленники не могли с них осуществлять атаки на другие ресурсы.
    Ответ написан
    Комментировать
  • Почему выдаёт ошибку?

    Потому-что в методе encode ожидает 3 параметра (там у вас даже написано это). Перейдите в метод encode и посмотрите, чего не хватает. Обычно передается payload, secret key и algorithm.
    $jwt = JWT::encode($payload, $key, 'HS256');
    Ответ написан
    Комментировать
  • Хранение ссылок в бд, каким образом?

    @dimkabelkov
    Если у вас отдаются просто mp3 файлы для плеера, то как бы вы их не хранили и не отдавали, все ровно скачают, тут можно только усложнить процесс скачивания, бить файл на чанки, отдавать в потоке и т.д, все зависит от того кто хочет скачать, т.е. тут вопрос в усложнении, закрыть не получиться ни как

    По поводу хранения, если есть возможность не хранить абсолютные пути - не храните, завтра у вас поменяется роутинг, домен, что-то еще, и вы приобретаете кучу геморроя, отсюда вывод - храните uuid, slug, что-то еще что формировало бы понятие об этой записи
    Ответ написан
    Комментировать
  • Как связать таблицу с собой?

    @Akina
    Сетевой и системный админ, SQL-программист.
    SELECT t1.id, COALESCE(t1.f2, t2.f2) f2, t1.f3       
    FROM test t1
    LEFT JOIN test t2 ON t2.id = t1.f1

    Если пустые ячейки - не NULL, а пустая строка, то COALESCE(NULLIF(t1.f2, ''), t2.f2).
    Ответ написан
    Комментировать
  • Как эффективно освоить backend-разработку на Java?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Java
    Седой и строгий
    1. Читаешь учебник для начающих и практикуешься с примерами из него.
    2. Читаешь учебники для продолжающих и пилишь простой пет-проект.
    3. Пилишь пет-проект посложнее и читаешь документацию.
    Ответ написан
    Комментировать
  • Как правильно разбить текст по переносам строк?

    seven5674
    @seven5674
    Старый я уже что бы что-то в себе менять
    Как то так
    s = """
    Название (1строка)
    Описание(несколько строк)
    Описание(несколько строк)
    Описание(несколько строк)
    Описание(несколько строк)
    Описание(несколько строк)
    Стоймость (1 строка)
    """
    
    l = s.strip().split("\n")
    
    name = l[0]
    price = l[-1]
    desc = ' '.join(l[1:-1])
    Ответ написан
    1 комментарий
  • Как правильно исключить пользователя из запроса?

    LaRN
    @LaRN
    Senior Developer
    Попробуйте так:
    select e.mark, course, g.name, s.name, lastname, surname, p.name, f.name from students s
    left join groupa g on s.group_id = g.id
    inner join exam_mark e on s.id = e.student_id
    inner join peciality p on g.peciality_id = p.id
    inner join facult f on p.facult_id = f.id
    where e.mark >= 4
        and not exists (select 1 
                                   from exam_mark e1
                                 where e1.student_id = s.id
                                     and e1.mark        <> 2)
    Ответ написан
    2 комментария
  • Как вывести имена клиентов банка, у которых сумма зачислений выше средней суммы зачисления?

    Adamos
    @Adamos
    1. Написать запрос, выводящий счета, у которых сумма зачислений больше нуля.
    2. Написать на основе п. 1 запрос, выводящий имена клиентов, которым принадлежат счета, у которых сумма зачислений больше нуля.
    3. Написать запрос на вычисление среднего зачисления
    4. Заменить в запросе из п. 2 ноль подзапросом из п. 3
    Ответ написан
    Комментировать
  • Не проходит авторизация?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Прочитайте внимательно про биндинг, а точнее про именованные и неименованные псевдопеременные, а то у вас каша получилась.
    Ответ написан
    Комментировать
  • Как передать массив из input в БД?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Для начала вам надо правильно спроектировать базу данных.
    Многострочные документы классически делятся на две части - заголовок документа orders (order_id, client_id, state, ...) и табличную часть ordrers_rows (order_id, goods_id, quantity, price). В табличную часть делается одна запись для каждой строки заказа. Таким образом, никакие массивы записывать в таблицу не надо.
    Ответ написан
    Комментировать
  • Как выбрать нужные записи из бд?

    @Akina
    Сетевой и системный админ, SQL-программист.
    SELECT *
    FROM table
    ORDER BY user_id = @user_id DESC, id DESC LIMIT 1

    Если заданный @user_id есть - вернётся соотв. запись. Если таких записей несколько - вернётся запись из них с максимальным id. Иначе вернётся просто запись с макс. id.

    Если же под "Если есть user_id вернуть запись с user_id" разумеется "ну хоть какой-то, лишь бы не NULL", то
    SELECT *
    FROM table
    ORDER BY user_id IS NULL, id DESC LIMIT 1
    Ответ написан
    Комментировать
  • Как корректно подставлять текст к ссылке?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Как можно реализовать это?
    Если я правильно понял, вам нужно сравнение без кейс сенситив.
    Будем считать что у вас адекватный архитектурный подход и для хранения данных используется БД. Тогда вариантов два:
    1) Магия strtolower(). При регистрации все данные перегоняем в нижний регистр и так и записываем. Соответственно перед выборкой тоже делаем искомой строке strtolower().
    2) Задаем таблице кодировку с постфиксом _ci, то есть кейс инсенситив. Тогда выборка будет игнорировать регистр, и в выборке GazEs12 = gazes12.
    Ответ написан
    7 комментариев
  • Корректно ли генерировать SQL без использования query-builder?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Да. Корректно. Но если вы не пользуетесь билдером то вам придется вручную отслеживать открывающие и закрывающие скобки в тек местах где есть приоритет и вручную форматировать отступы и переносы если есть такое требование. Тоесть в какой-то момент времени сложность кодогенерации перейдет с билдера в ваш рукотворный код и вам эту сложность также придется поддерживать и объяснять ее происхождение коллегам.

    Кстати на каком языке вы разрабатываете? Для Java есть готовые билдеры в QueryDSL, JooQ.
    Ответ написан
    3 комментария
  • Как залить файл Excell в Mysql через консоль или по крону?

    @AVKor
    XLSX - писать скрипт на ЯП, который знаете и который умеет работать с XLSX (наверно, любой ЯП общего назначения умеет).

    CSV - штатными средствами встроенного клиента MySQL
    LOAD DATA LOCAL INFILE...
    Ответ написан
    8 комментариев
  • Как разбить Date и Time в PostgreSQL запросе?

    @Akina
    Сетевой и системный админ, SQL-программист.
    Ну что за детский сад?

    SELECT '2022-04-01 09:23:45'::DATE, '2022-04-01 09:23:45'::TIME
    Ответ написан
    Комментировать
  • Как лучше проверять строку на пустоту в php?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    if ($str === '')
    Ответ написан
    Комментировать
  • Как синхронизировать столбцы в SQL?

    @Akina
    Сетевой и системный админ, SQL-программист.
    Если связь между значениями - статическая, жёсткая и никогда не изменяемая, то используйте вычисляемое поле (generated column). Если значение поля, от которого зависит другое поле - числовое от единицы и далее, можно обойтись одним полем типа ENUM.

    Если же связь более сложная и/или может меняться со временем, то гораздо разумнее не заполнять второе поле в зависимости от первого, а использовать его значение как ссылку (foreign key) в словарную таблицу.

    Крайний случай - использование BEFORE INSERT/UPDATE триггеров.
    Ответ написан
    Комментировать
  • Как перенести контейнер Docker на другую машину?

    IgorPI
    @IgorPI
    1. Копируете файлы базы данных на хост
    2. Архивируете/Переносите
    3. Поднимаете проект на другом хосте
    4. Копируете файлы с хоста в контейнер

    В вашем распоряжении есть
    docker compose cp

    https://docs.docker.com/engine/reference/commandli...

    А вообще не вижу проблем с созданием полного дампа с последующим восстановлением.

    docker-compose exec [service] mysqldump -u [user name] –p [password] [options] [database_name] [tablename] > [dumpfilename.sql]


    Или

    docker exec -t [hash container] mysqldump -u [user name] –p [password] [options] [database_name] [tablename] > [dumpfilename.sql]
    Ответ написан
    Комментировать