За несколько прошедших недель я узнал о GORM как базе данных ORM. После проверки внутри кода каждая команда (предел, порядок, где, или, выбор и т. Д.) Возвращает новый экземпляр путем клонирования текущей БД.
Есть ли кто-нибудь здесь знать, какова основная цель клонирования БД вместо использования текущего экземпляра?
Когда у меня есть команда select, where, limit, order, join, которая будет в 5 раз клонировать экземпляр DB. AFAIK, создание объекта в памяти дорого.GORM Golang: цель клонирования DB-экземпляра
1
A
ответ
3
Цель состоит в том, чтобы иметь возможность хранить «временный» экземпляр вашего запроса, чтобы получить их позже. То есть, если у вас есть ряд вопросов, которые разделяют некоторую часть последовательности, вы должны быть в состоянии сделать что-то вроде
q := gorm.Select(...).Limit(...).Order(...)
q1 := q.Where(...)
q2 := q.Where(...)
(Этого примера является rought примером, который, вероятно, даже не карты для GORM API, поскольку я не использую его сам.)
Теперь я считаю, что клонирование объектов в памяти, которые не будут храниться долго, не мешает большой производительности по сравнению с затратами на выполнение SQL-запроса, что подразумевает сеть в оба конца ...
Смежные вопросы
- 1. Какова цель клонирования репозитория в Mercurial?
- 2. Какова цель выделения структуры в поле (golang)?
- 3. Ошибка клонирования проекта клонирования AS
- 4. Xcode 6 GM с iPhone 5s (iOS 8 GM) - 0xE8000070
- 5. jQuery Form теряется после клонирования модального клонирования
- 6. Форма клонирования Без значений ввода клонирования
- 7. Xcode 6 GM - NSFetchedResultsSectionInfo
- 8. Xcode 6 GM - CLLocationManager
- 9. Невозможно выполнить bluebird.Promisifyall gm
- 10. Современные альтернативы для клонирования?
- 11. GM выпуск Xcode 6 компилировать
- 12. UIViewControllerAnimatedTransitioning в Xcode 6 GM
- 13. symbolicatecrash от XCODE 6 GM
- 14. nodejs gm, используя поток дважды
- 15. SKEmitterNode IOS 9 GM проблемы
- 16. Xcode6 GM «Code Sign error»
- 17. gm проблема преобразования в node.js
- 18. FS.Store ненадежное преобразование изображений gm
- 19. iOS5 Simulator на XCode5-GM
- 20. Strange node.js + http + gm + s3 поведение
- 21. Как дать классу метод клонирования? Что возвращается в методе клонирования?
- 22. Сова карусели 2 события клонирования объекта клонирования не срабатывают
- 23. Создание анимации клонирования в Libgdx
- 24. производительность массива клонирования
- 25. Репозиторий клонирования JGit
- 26. Контекст клонирования MVC
- 27. Проблема клонирования расширенного ByteArray
- 28. Лучший способ клонирования наблюдаемых?
- 29. C# Классы клонирования
- 30. История клонирования хранилища TFS
Спасибо @Elwinar за ваш ответ. Но для меня, если я хочу хранить временный экземпляр БД с конкретным запросом, я сделаю это вручную, вызывая gorm.Clone(), тем самым он будет более оптимизирован. – Apin