Мои ИИ-агенты целый день пишут Oracle SQL: исправляют сценарии, диагностику, разовые отчеты для устаревшей системы объемом 2,3 миллиона строк. Их самая распространенная ошибка не в плохой логике. Это SQL, который ссылается на таблицу или столбец, которые почти существуют. У Oracle было фи...
Мои ИИ-агенты целый день пишут Oracle SQL: исправляют сценарии, диагностику, разовые отчеты для устаревшей системы объемом 2,3 миллиона строк. Их самая распространенная ошибка не в плохой логике. Это SQL, который ссылается на таблицу или столбец, которые почти существуют. У Oracle уже несколько десятилетий есть решение, оно требует одного оператора на запрос и никогда ничего не выполняет: EXPLAIN PLAN.
Режим неудачи: имена, которые почти существуют
Языковая модель не знает вашей схемы. Он знает, как обычно выглядят схемы. Таким образом, в базе данных 20-летней давности с тысячами таблиц он создает правдоподобные, а не настоящие имена: POLICY_STATUS, когда столбец имеет значение STATUS_CD, CUSTOMERS, когда таблица имеет статус CUSTOMER (единственное число) с 1998 года, соединение через таблицу связей, которая была удалена две версии назад.
Это худший вид ошибок, потому что они выглядят правильно. Человек-рецензент просматривает сценарий, соглашение об именах совпадает, все читается нормально. Ошибка проявляется только при запуске сценария, а в моем случае сценарии исправления выполняются более чем при 20 установках клиентов. Это именно то место, где не хочется обнаружить вымышленную колонку.
Почему нельзя просто запустить его для проверки
Очевидный тест, выполните его и посмотрите, недоступен. Эти сумы
