Нашли или выдавили из себя код, который нельзя назвать нормальным,
на который без улыбки не взглянешь?
Не торопитесь его удалять или рефакторить, — запостите его на
говнокод.ру, посмеёмся вместе!
Ну как бы для таких целей используется запрос вида "select max(Код) from Таблица", а не бегание по полной выборке текстовых наименований из всей таблицы с выделением из строки числа. И все это с выводом процесса пользователю.
На удивление нормально. По началу парило, что все по-русски, но потом освоил двуязычие и стал писать на обычном SQL. В отличии от стандарта добавлена конструкция TOTALS. Плюс есть поддержка пакетных запросов - одним запросом можно сразу много выборок делать, и при этом промежуточно селектить ими из друг друга.
может восьмерка стала лучше -- хз)
я знаю, что они перенесли структуру БД из dbf в ms-sql, и даже primary key делают не средставми бд) хотя опять же -- может быть это уже не так
Используются базы на основе DBF-файлов в 7.7, собственный формат 1CD с версии 8.0 или СУБД Microsoft SQL Server на любой из этих версий. Кроме того, с версии 8.1 хранение данных возможно в PostgreSQL и IBM DB2, а с версии 8.2 добавилась и Oracle. Имеется возможность использовать и другие сервера баз данных при помощи проектов: CodeBase 6.5, Advantage 8.1/9.1.
Кстати, как дела с языком запросов при обращении к этим СУБД? 1С транслирует свой внутренний SQL-подобный язык в настоящий SQL?
ORM (англ. Object-relational mapping, рус. Объектно-реляционное отображение) - технология программирования, которая связывает базы данных с концепциями объектно-ориентированных языков программирования, создавая «виртуальную объектную базу данных».
В старом ядре на каждую сущность программируется свой GetList, Update, Add, Delete.
Недостатки такой идеологии:
разный набор параметров;
разный синтаксис полей фильтров;
события могут быть или не быть;
иногда разный код под разные БД (Add). Цели в новом ядре:
Сделать операции выборки и сохранения в БД однотипными, с одинаковыми параметрами и фильтрами. По возможности, таблицы сущностей должны обслуживаться с минимумом нового кода. Стандартные события добавления/изменения/удаления должны быть доступны автоматически.
Для реализации этих целей были введены понятия:
Cущности (Bitrix\Main\Entity\Base);
Поля сущностей (Bitrix\Main\Entity\Field и его наследники);
Датаменеджер (Bitrix\Main\Entity\DataManager).
она была еще на dbf, а не на ms-sql.
так вот там кажется sql не было
видимо что-то изменилось
я знаю, что они перенесли структуру БД из dbf в ms-sql, и даже primary key делают не средставми бд) хотя опять же -- может быть это уже не так
Кстати, как дела с языком запросов при обращении к этим СУБД? 1С транслирует свой внутренний SQL-подобный язык в настоящий SQL?
да
ты не только пхп трогал, но и 1С?
вот это зашквар!!
Сбылось?
>Сбылось?
Да.
https://dev.1c-bitrix.ru/learning/course/?COURSE_ID=43&CHAPTER_ID=05748&LESSON_PA TH=3913.5062.5748
ORM (англ. Object-relational mapping, рус. Объектно-реляционное отображение) - технология программирования, которая связывает базы данных с концепциями объектно-ориентированных языков программирования, создавая «виртуальную объектную базу данных».
В старом ядре на каждую сущность программируется свой GetList, Update, Add, Delete.
Недостатки такой идеологии:
разный набор параметров;
разный синтаксис полей фильтров;
события могут быть или не быть;
иногда разный код под разные БД (Add).
Цели в новом ядре:
Сделать операции выборки и сохранения в БД однотипными, с одинаковыми параметрами и фильтрами. По возможности, таблицы сущностей должны обслуживаться с минимумом нового кода. Стандартные события добавления/изменения/удаления должны быть доступны автоматически.
Для реализации этих целей были введены понятия:
Cущности (Bitrix\Main\Entity\Base);
Поля сущностей (Bitrix\Main\Entity\Field и его наследники);
Датаменеджер (Bitrix\Main\Entity\DataManager).
Впрочем да, там русифицированный бейсик, а там пхп+мускуль.