Каков САМЫЙ ЗЛОЙ код, который Вы когда-либо видели в производственной корпоративной среде? [закрытый]

Простую альтернативу этой проблеме можно решить, предоставив соответствующие разрешения в самой базе данных. Например: если вы используете базу данных mysql, введите в базу данных через терминал или предоставленный интерфейс и просто следуйте этой команде:

 GRANT SELECT, INSERT, DELETE ON database TO username@'localhost' IDENTIFIED BY 'password';

Это ограничит пользователя ограничиться только указанным запросом только. Удалите разрешение удаления, и поэтому данные никогда не будут удалены из запроса, запущенного с php-страницы. Второе, что нужно сделать, это очистить привилегии, чтобы mysql обновлял разрешения и обновления.

FLUSH PRIVILEGES; 

Дополнительная информация о flush .

To см. текущие привилегии для пользователя, вызывают следующий запрос.

select * from mysql.user where User='username';

Подробнее о GRANT .

76
задан 12 revs, 10 users 62% 25 September 2015 в 22:14
поделиться

35 ответов

Какой-то парень написал пакетную программу для генерации случайных чисел на основе сторон кристалла на моем компьютере, подумал, что я поделюсь ею.

@echo off

set SIDES=6 

:start
set BUF=%random%
if %BUF% GTR %SIDES% (
goto start
)

echo %BUF%
pause

goto start

Выполняет свою работу, но угадайте, насколько она медленная ...

1
ответ дан 24 November 2019 в 11:02
поделиться

Я работал с подобными вещами, написанными индийскими разработчиками. Гигантская главная форма, глобальные vars и т.д. К счастью, мой босс после долгих трудов смог значительно уменьшить этот беспорядок. Но все равно я ненавидел работать с этим приложением. К сожалению, это было математическое приложение, а некоторые из этих индийских парней были хороши в математике, поэтому нам пришлось исправлять приложение, а не переписывать его.

Для меня худшей частью была невероятная медлительность Visual Studio + ReSharper на форме с 20000 строками. Если отключить ReSharper, то с этим можно справиться, но тогда вы не сможете рефакторить это дерьмо так быстро.

0
ответ дан 24 November 2019 в 11:02
поделиться
0
ответ дан 24 November 2019 в 11:02
поделиться

Из пакета Oracle в нашем приложении для комиссионных вычислений (до того, как я перестроил его с нуля)

CREATE OR REPLACE PACKAGE BODY Const AS
    FUNCTION Basisprov_offen
        RETURN INT
    IS
        BEGIN
            RETURN 4;
        END;

    FUNCTION Basisprov_offen_s
        RETURN VARCHAR
    IS
        BEGIN
            RETURN Const.Basisprov_offen || '';
        END;


/* ... a lot more creepy stuff ... */

END Const;

И в другом пакете для того же приложения

...
INSERT INTO Texpkorr
    SELECT
        Stammnummer,
        Nummer,
        Artikelnummer,
        GREATEST ( 0, Texp.Kommanditbetrag - NVL ( 0, 0 )) Kommanditbetrag,
        GREATEST ( 0, Texp.Bareinlagebetrag - NVL ( 0, 0 )) Bareinlagebetrag,
        GREATEST ( 0, Texp.Provisionohneagio - NVL ( 0, 0)) Provisionohneagio,
        GREATEST ( 0, Texp.Provisionmitagio - NVL ( 0, 0 )) Provisionmitagio,
        GREATEST ( 0, Texp.Agionachlass - NVL ( 0, 0 )) Agionachlass,
        Exportart
   FROM Provaltbv, Texp
...
0
ответ дан 24 November 2019 в 11:02
поделиться

Один парень, с которым я раньше работал, написал приложение для MS Access, которое соединялось с 10 другими базами данных Access, которые занимались начислением зарплаты для компании из списка Fortune 500. По последним данным, там работало около 70 000 сотрудников, и оно все еще использовалось...

Очень мало проверки ошибок в коде, неприятно смотреть, еще хуже устранять неполадки. Мы продолжали использовать базы данных доступа по максимуму, поэтому нам приходилось очищать их каждые пару месяцев.

Да, я знаю, что это не сегмент кода. Просто три факта: MS Access, зарплата и Fortune 500 - делают его злом. Очень злое. Хотел бы я пошутить.

0
ответ дан 24 November 2019 в 11:02
поделиться
Другие вопросы по тегам:

Похожие вопросы: