mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2025-03-11 14:11:49 -05:00
Backport #28590 by @lunny
Fix https://github.com/go-gitea/gitea/pull/28547#issuecomment-1867740842
Since https://gitea.com/xorm/xorm/pulls/2383 merged, xorm now supports
UPDATE JOIN.
To keep consistent from different databases, xorm use
`engine.Join().Update`, but the actural generated SQL are different
between different databases.
For MySQL, it's `UPDATE talbe1 JOIN table2 ON join_conditions SET xxx
Where xxx`.
For MSSQL, it's `UPDATE table1 SET xxx FROM TABLE1, TABLE2 WHERE
join_conditions`.
For SQLITE per https://www.sqlite.org/lang_update.html, sqlite support
`UPDATE table1 SET xxx FROM table2 WHERE join conditions` from
3.33.0(2020-8-14).
POSTGRES is the same as SQLITE.
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
(cherry picked from commit
|
||
---|---|---|
.. | ||
assignees.go | ||
assignees_test.go | ||
comment.go | ||
comment_code.go | ||
comment_list.go | ||
comment_test.go | ||
content_history.go | ||
content_history_test.go | ||
dependency.go | ||
dependency_test.go | ||
issue.go | ||
issue_index.go | ||
issue_label.go | ||
issue_label_test.go | ||
issue_list.go | ||
issue_list_test.go | ||
issue_lock.go | ||
issue_project.go | ||
issue_search.go | ||
issue_stats.go | ||
issue_test.go | ||
issue_update.go | ||
issue_user.go | ||
issue_user_test.go | ||
issue_watch.go | ||
issue_watch_test.go | ||
issue_xref.go | ||
issue_xref_test.go | ||
label.go | ||
label_test.go | ||
main_test.go | ||
milestone.go | ||
milestone_list.go | ||
milestone_test.go | ||
pull.go | ||
pull_list.go | ||
pull_test.go | ||
reaction.go | ||
reaction_test.go | ||
review.go | ||
review_list.go | ||
review_test.go | ||
stopwatch.go | ||
stopwatch_test.go | ||
tracked_time.go | ||
tracked_time_test.go |