mirror of
				https://github.com/go-gitea/gitea.git
				synced 2025-10-29 10:57:44 +09:00 
			
		
		
		
	Fix error log when loading issues caused by a xorm bug (#7271)
* fix error log when loading issues caused by a xorm bug * upgrade packages * fix fmt * fix Consistency * fix tests
This commit is contained in:
		
							
								
								
									
										120
									
								
								vendor/xorm.io/builder/doc.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										120
									
								
								vendor/xorm.io/builder/doc.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,120 @@ | ||||
| // Copyright 2016 The XORM Authors. All rights reserved. | ||||
| // Use of this source code is governed by a BSD | ||||
| // license that can be found in the LICENSE file. | ||||
|  | ||||
| /* | ||||
|  | ||||
| Package builder is a simple and powerful sql builder for Go. | ||||
|  | ||||
| Make sure you have installed Go 1.1+ and then: | ||||
|  | ||||
|     go get github.com/go-xorm/builder | ||||
|  | ||||
| WARNNING: Currently, only query conditions are supported. Below is the supported conditions. | ||||
|  | ||||
| 1. Eq is a redefine of a map, you can give one or more conditions to Eq | ||||
|  | ||||
|     import . "github.com/go-xorm/builder" | ||||
|  | ||||
|     sql, args, _ := ToSQL(Eq{"a":1}) | ||||
|     // a=? [1] | ||||
|     sql, args, _ := ToSQL(Eq{"b":"c"}.And(Eq{"c": 0})) | ||||
|     // b=? AND c=? ["c", 0] | ||||
|     sql, args, _ := ToSQL(Eq{"b":"c", "c":0}) | ||||
|     // b=? AND c=? ["c", 0] | ||||
|     sql, args, _ := ToSQL(Eq{"b":"c"}.Or(Eq{"b":"d"})) | ||||
|     // b=? OR b=? ["c", "d"] | ||||
|     sql, args, _ := ToSQL(Eq{"b": []string{"c", "d"}}) | ||||
|     // b IN (?,?) ["c", "d"] | ||||
|     sql, args, _ := ToSQL(Eq{"b": 1, "c":[]int{2, 3}}) | ||||
|     // b=? AND c IN (?,?) [1, 2, 3] | ||||
|  | ||||
| 2. Neq is the same to Eq | ||||
|  | ||||
|     import . "github.com/go-xorm/builder" | ||||
|  | ||||
|     sql, args, _ := ToSQL(Neq{"a":1}) | ||||
|     // a<>? [1] | ||||
|     sql, args, _ := ToSQL(Neq{"b":"c"}.And(Neq{"c": 0})) | ||||
|     // b<>? AND c<>? ["c", 0] | ||||
|     sql, args, _ := ToSQL(Neq{"b":"c", "c":0}) | ||||
|     // b<>? AND c<>? ["c", 0] | ||||
|     sql, args, _ := ToSQL(Neq{"b":"c"}.Or(Neq{"b":"d"})) | ||||
|     // b<>? OR b<>? ["c", "d"] | ||||
|     sql, args, _ := ToSQL(Neq{"b": []string{"c", "d"}}) | ||||
|     // b NOT IN (?,?) ["c", "d"] | ||||
|     sql, args, _ := ToSQL(Neq{"b": 1, "c":[]int{2, 3}}) | ||||
|     // b<>? AND c NOT IN (?,?) [1, 2, 3] | ||||
|  | ||||
| 3. Gt, Gte, Lt, Lte | ||||
|  | ||||
|     import . "github.com/go-xorm/builder" | ||||
|  | ||||
|     sql, args, _ := ToSQL(Gt{"a", 1}.And(Gte{"b", 2})) | ||||
|     // a>? AND b>=? [1, 2] | ||||
|     sql, args, _ := ToSQL(Lt{"a", 1}.Or(Lte{"b", 2})) | ||||
|     // a<? OR b<=? [1, 2] | ||||
|  | ||||
| 4. Like | ||||
|  | ||||
|     import . "github.com/go-xorm/builder" | ||||
|  | ||||
|     sql, args, _ := ToSQL(Like{"a", "c"}) | ||||
|     // a LIKE ? [%c%] | ||||
|  | ||||
| 5. Expr you can customerize your sql with Expr | ||||
|  | ||||
|     import . "github.com/go-xorm/builder" | ||||
|  | ||||
|     sql, args, _ := ToSQL(Expr("a = ? ", 1)) | ||||
|     // a = ? [1] | ||||
|     sql, args, _ := ToSQL(Eq{"a": Expr("select id from table where c = ?", 1)}) | ||||
|     // a=(select id from table where c = ?) [1] | ||||
|  | ||||
| 6. In and NotIn | ||||
|  | ||||
|     import . "github.com/go-xorm/builder" | ||||
|  | ||||
|     sql, args, _ := ToSQL(In("a", 1, 2, 3)) | ||||
|     // a IN (?,?,?) [1,2,3] | ||||
|     sql, args, _ := ToSQL(In("a", []int{1, 2, 3})) | ||||
|     // a IN (?,?,?) [1,2,3] | ||||
|     sql, args, _ := ToSQL(In("a", Expr("select id from b where c = ?", 1)))) | ||||
|     // a IN (select id from b where c = ?) [1] | ||||
|  | ||||
| 7. IsNull and NotNull | ||||
|  | ||||
|     import . "github.com/go-xorm/builder" | ||||
|  | ||||
|     sql, args, _ := ToSQL(IsNull{"a"}) | ||||
|     // a IS NULL [] | ||||
|     sql, args, _ := ToSQL(NotNull{"b"}) | ||||
|      // b IS NOT NULL [] | ||||
|  | ||||
| 8. And(conds ...Cond), And can connect one or more condtions via AND | ||||
|  | ||||
|     import . "github.com/go-xorm/builder" | ||||
|  | ||||
|     sql, args, _ := ToSQL(And(Eq{"a":1}, Like{"b", "c"}, Neq{"d", 2})) | ||||
|     // a=? AND b LIKE ? AND d<>? [1, %c%, 2] | ||||
|  | ||||
| 9. Or(conds ...Cond), Or can connect one or more conditions via Or | ||||
|  | ||||
|     import . "github.com/go-xorm/builder" | ||||
|  | ||||
|     sql, args, _ := ToSQL(Or(Eq{"a":1}, Like{"b", "c"}, Neq{"d", 2})) | ||||
|     // a=? OR b LIKE ? OR d<>? [1, %c%, 2] | ||||
|     sql, args, _ := ToSQL(Or(Eq{"a":1}, And(Like{"b", "c"}, Neq{"d", 2}))) | ||||
|     // a=? OR (b LIKE ? AND d<>?) [1, %c%, 2] | ||||
|  | ||||
| 10. Between | ||||
|  | ||||
|     import . "github.com/go-xorm/builder" | ||||
|  | ||||
|     sql, args, _ := ToSQL(Between("a", 1, 2)) | ||||
|     // a BETWEEN 1 AND 2 | ||||
|  | ||||
| 11. define yourself conditions | ||||
| Since Cond is a interface, you can define yourself conditions and compare with them | ||||
| */ | ||||
| package builder | ||||
		Reference in New Issue
	
	Block a user