1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/listen_w-sqltomongo-converter

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

sqltomongo-converter

Описание

Основной конвертер для перевода синтаксиса SQL в синтаксис MongoDB.

Инструкции по использованию

  1. Код хранится в центральном репозитории Maven
<dependency>
  <groupId>cn.org.wangchangjiu</groupId>
  Yöntem adı: sqltomongo-converter
  <artifactId>sqltomongo-converter</artifactId>
  <version>{sqltomongo.version}</version>
</dependency>
  1. Используйте статический метод SelectSQLTypeParser.defaultConverterToString(String sql) класса SelectSQLTypeParser для конвертации;

Пример:

String sql = "SELECT n._id, n.languageList, n.score, ne.enable FROM novel n left join novelEpisodes ne on n._id = objectId(ne.novelId) limit 0,10"
String mongo = SelectSQLTypeParser.defaultConverterToString(sql)

Ограничения:

  • Выражения после where поддерживаются только в формате: a.id=1

Ограничения:

  • Выражения после where поддерживаются только в формате: a.id=1- Поддерживаются только левые и внутренние соединения
  • Функции в части соединений поддерживаются только для одной стороны для преобразования в string() или ObjectId()
    Неподдерживаемый: SELECT * FROM table_a as a JOIN table_b as b on string(b.a_id)=string(a.id) 
    Поддерживаемый: SELECT * FROM table_a as a JOIN table_b as b on string(b.a_id)=a.id
  • Соединения поддерживаются только для равных соединений, и условие соответствия должно быть только одно
    Неподдерживаемый: SELECT * FROM table_a as a JOIN table_b as b on b.a_id=a.id and a.id=1 
    Поддерживаемый: SELECT * FROM table_a as a JOIN table_b as b on b.a_id=a.id
  • При соединении таблиц, можно соединять только от основной таблицы к другим таблицам, нельзя соединять a с b, а затем b с c
    Неподдерживаемый: SELECT * FROM table_a as a JOIN table_b as b on b.a_id=a.id JOIN table_c as c on b.id=c.b_id
    Поддерживаемый: SELECT * FROM table_a as a JOIN table_b as b on b.a_id=a.id JOIN table_c as c on a.id=c.a_id
  • Не поддерживаются операции на уровне базы данных, такие как создание или изменение базы данных
  • При создании таблицы, MongoDB не поддерживает ограничения на количество знаков после запятой
  • При создании таблицы, MongoDB не поддерживает автоматическое увеличение значений для полей
  • При создании таблицы, индексы поддерживаются только как отдельные объявления, в результате выводятся несколько строк MongoDB, разделённые точкой с запятой
Неподдерживаемый:
CREATE TABLE employees (
    employee_id INT NOT NULL AUTO_INCREMENT PRIMARY KEY
);
Поддерживаемый:
CREATE TABLE employees (
    employee_id INT NOT NULL AUTO_INCREMENT,
```    PRIMARY KEY (employee_id)
);
  • При создании таблицы, MongoDB не поддерживает типы данных bigint, time, year, ENUM, SET, bit, blob

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Конвертер языка SQL в язык MongoDB Развернуть Свернуть
Apache-2.0
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/listen_w-sqltomongo-converter.git
git@api.gitlife.ru:oschina-mirror/listen_w-sqltomongo-converter.git
oschina-mirror
listen_w-sqltomongo-converter
listen_w-sqltomongo-converter
master