Wing Gao
26262ef9bb
autoIndex should throw an error on failed
2017-11-28 13:05:48 +08:00
Horacio Duran
3a9e91ab37
Correct ModifyColumn SQL syntax. ( #1614 )
...
* Correct ModifyColumn SQL syntax.
The generated SQL for ModifyColumn was:
`ALTER TABLE "tablename" MODIFY "columname" type`
But should have been:
`ALTER TABLE "tablename" ALTER COLUMN "columname" TYPE type`
since Modify does not seem to be entirely compatible with all Engines
* Test ModifyColumn
* Skip ModifyColumnType test on incompatible DBs
Some DB Engines don't fully support alter table so we skip
when the dialect does not correspond to one of the ones that
are known to support it.
2017-09-28 22:48:21 +08:00
Code
56fffcb25b
fix count() …
...
COUNT()函数逻辑有错误,本应该是在执行任何SQL的时候,都可以返回正确的行数。而现在复杂的SQL集合无法正确获取行数。
2017-08-29 18:50:40 +08:00
Jinzhu
e5432b14d2
Add QueryExpr, thanks @ManReinsp for PR #1548
2017-08-11 18:41:04 +08:00
Ivan Valkov
2a1463811e
Allow use number as column name ( #1517 )
...
* Updated scope.go to always quote when adding index
I am using numbers for column names (to be compatible with protobuf) and adding unique index to them does not work since they are not quoted. I do not see a reason to check if the column name is a string in order to quote it. Correct me if I am wrong.
* Updated the columnRegexp to include decimals
* Update scope.go
2017-07-03 21:49:54 +08:00
Jinzhu
2a041971f9
Change bind var to 24652$ to avoid possible confliction
2017-04-18 16:13:02 +08:00
Jinzhu
66d5b42ee9
Add error if exists after parse raw query results, fix #1398
2017-03-24 09:28:06 +08:00
Russ Egan
45f1a95051
Replace all use of *sql.DB with sqlCommon
...
Exporting sqlCommon as SQLCommon.
This allows passing alternate implementations of the database connection, or wrapping the connection with middleware. This change didn't change any usages of the database variables. All usages were already only using the functions defined in SQLCommon.
This does cause a breaking change in Dialect, since *sql.DB was referenced in the interface.
2017-03-14 17:02:14 -04:00
Jinzhu
e4b130d2d7
Fix customize DeletedAt's column name
2017-02-01 21:33:36 +08:00
Jinzhu
c62e9bcabe
Query Row, Rows inside RowQuery callbacks
2017-01-15 18:03:12 +08:00
Geofrey Ernest
eb0880e710
Fix *Scope.buildNotCondition
...
this fixes the logic of handling empty slice of int family in a query i.e something linke `[]int64{}`
This code snipped doesn't look like it was intended to be this way
```
if reflect.ValueOf(value).Len() > 0 {
str = fmt.Sprintf("(%v.%v NOT IN (?))", scope.QuotedTableName(), scope.Quote(primaryKey))
clause["args"] = []interface{}{value}
}
return ""
```
The `return ""` is always guaranteed to be executed regardless of whether the length of value is greater than 0. I believe the intended behavior is to return `""` when the length of value is zero.
2017-01-05 10:38:39 +03:00
Xavier Sandal
5a4dca7645
Compile regexp ahead of time
...
Signed-off-by: Xavier Sandal <sandalwing@sandalwing.com>
2016-12-19 22:36:13 -05:00
Jinzhu
0f2ceb5a77
Add gorm:association:source for association operations for plugins to extend GORM
2016-12-05 18:30:07 +08:00
Jinzhu
eb06255b66
Skip order sql when quering with distinct
2016-12-01 16:16:20 +08:00
Jinzhu
066abcef40
Merge pull request #1132 from zardak/preload-dedupe
2016-11-10 09:33:15 +08:00
slockij
e26cb8dbc4
In some cases (Error not checked, missed data) one can perform very harmful operation - global update or delete (all records)
...
This is to prevent it.
2016-11-04 17:54:43 +01:00
Jinzhu
f2fe351aa0
Merge pull request #1243 from smacker/raw_first_last
...
db.Raw().First() makes wrong sql fix #1214
2016-11-03 21:45:29 +08:00
Jinzhu
4a540f3ac8
Add tag to support skip nested save for associations
2016-10-27 10:31:46 +08:00
smacker
cf7fbb56d5
db.Raw().First() makes wrong sql fix #1214
2016-10-26 21:32:27 +07:00
Jinzhu
56a7d1b69e
Change query's prefix table for generated conditions
2016-10-26 17:35:51 +08:00
Jinzhu
39165d4980
Refactor named value support for PolymorphicType
2016-10-07 22:19:28 +08:00
slockij
1413e55339
Add named value for PolymorphicType (to replace scope.TableName)
2016-09-28 22:44:43 +02:00
Jinzhu
041cd3dd31
Fix scan ignored fields, close #1117
2016-09-13 09:29:36 +08:00
Jinzhu
35a2a004d8
Strict select argument check for Count
2016-08-15 21:28:07 +08:00
Jinzhu
2f27f0f27f
Fix TestUpdateDecodeVirtualAttributes
2016-08-14 16:13:50 +08:00
elgris
fb09befb9b
Adds processing of ignored fields on Update
2016-08-14 16:12:57 +08:00
Jinzhu
34e75afb42
Support specify count select argument
2016-08-14 15:15:09 +08:00
Jinzhu
fde205f758
Refactor joining multiple tables with the same fields
2016-08-13 21:23:18 +08:00
Vladislav Fursov
e8c14bd1b3
Fixed a bug when joining multiple tables with the same fields and where on the same field.
2016-08-09 14:28:43 +09:00
Jinzhu
ca46038cb4
Fix preload duplicates has many related objects
2016-07-10 21:34:37 +08:00
Jinzhu
c1c4f9f86e
Add ORDER BY sql expression support
2016-06-28 11:15:42 +08:00
Michael Goff
e7f00bd2cd
Add support for multiple indexes seperated by commas for issue #884
2016-06-15 16:06:22 -07:00
Nikola Kovacs
6eb73ae654
Fix too long foreign key names in mysql.
...
The dialect must define its own foreign key generator method.
The previous default is available as a method on gorm.DefaultForeignKeyNamer
and can be embedded in other dialects.
The mysql dialect uses the first 24 characters plus an sha1 hash of the
full key name if the key name is more than 64 characters.
2016-05-22 00:13:26 +02:00
Jinzhu
4786e830d6
Fix create join table
2016-05-09 22:32:33 +08:00
Jinzhu
5174cc5c24
Only get address from non pointer when call method, fix #912
2016-04-04 22:49:28 +08:00
Jinzhu
9fd05d1bad
Print warning message when using unaddressable value with Update
2016-04-04 21:33:11 +08:00
Jinzhu
c49e68fac2
Make Update works with unaddressable value
2016-04-04 20:57:42 +08:00
Jinzhu
2530dcbccd
Quote order column name, fix #918
2016-03-23 10:29:52 +08:00
Jinzhu
83002c4d5f
Include default search attributes when query with Join, close #906
2016-03-14 08:05:45 +08:00
Jinzhu
7c43d9fc36
Fix scan columns with same name
2016-03-10 17:35:19 +08:00
Jinzhu
846a2d401a
Fix scan columns with same name
2016-03-10 17:13:48 +08:00
Jinzhu
8de97c2883
Refactor Scope updatedAttrsWithValues
2016-03-09 16:45:53 +08:00
Jinzhu
a0aa21aec5
Refactor
2016-03-08 22:29:58 +08:00
Jinzhu
d08894cd69
Rename test files
2016-03-08 22:00:15 +08:00
Jinzhu
88184a989e
Update godoc
2016-03-07 21:09:05 +08:00
Jinzhu
ec110657da
Refactor based on golint
2016-03-07 17:49:55 +08:00
Jinzhu
3055bad1e8
scope.Fields() return slice of *Field
2016-03-07 14:25:41 +08:00
Jinzhu
6bd0862811
Only update non blank fields that has been changed
2016-02-18 23:17:35 +08:00
Jinzhu
d92c5db9e7
Refactor dialect
2016-01-19 13:11:11 +08:00
Jinzhu
e159ca1914
Refactor dialect
2016-01-18 20:32:52 +08:00
Jinzhu
896ee534e2
Add indirect method
2016-01-18 12:20:27 +08:00
Jinzhu
19e9bd29e3
Refactor Scope CallMethod
2016-01-17 21:43:20 +08:00
Jinzhu
e38b1e0948
Remove uncessary NeedPtr method
2016-01-17 17:12:19 +08:00
Jinzhu
4f84bf0d94
Hide method QuoteIfPossible
2016-01-17 16:37:17 +08:00
Jinzhu
31366f388f
Remove uncessary method CallMethodWithErrorCheck for Scope
2016-01-17 16:14:14 +08:00
Jinzhu
8d716be896
Fix some go vet/lint reports
2016-01-15 21:16:48 +08:00
Jinzhu
d9229c5a7b
Extract method Scan from rows
2016-01-13 16:53:11 +08:00
Jinzhu
d53f5cf6dd
Rename scope.Trace to trace
2016-01-13 16:00:08 +08:00
shenli
499b5b7615
scope: Catch error for db.Commit()
2016-01-04 13:32:35 +08:00
Jinzhu
92e0809716
Don't save associations if has any error happened
2015-08-18 11:09:03 +08:00
Jinzhu
018a7e69ec
Handle DB error in callbacks
2015-08-17 16:38:01 +08:00
Jinzhu
309740983e
Add Errors
2015-08-14 11:04:05 +08:00
Jinzhu
1a07673e97
Fix can't call callbacks for embedded pointers
2015-08-10 12:51:12 +08:00
Jinzhu
fd9e42655f
Handle children db's Error in callbacks
2015-08-07 16:35:48 +08:00
Jinzhu
8a88d665d5
Add QuoteIfPossible for Scope
2015-08-01 09:25:06 +08:00
Jay Taylor
923ca15b6f
Surface errors emitted by `RowsAffected'.
2015-07-02 12:06:06 -07:00
Jinzhu
5ddca7c427
Fix table name for association
2015-06-30 10:39:29 +08:00
Jinzhu
308c96ee4c
Add PrimaryFields
2015-06-29 18:04:15 +08:00
Jinzhu
0b8c9f29a9
Find Field by db name also
2015-06-04 12:10:14 +08:00
Jinzhu
b96ca76e59
Set table name handler
2015-05-27 12:19:48 +08:00
Jinzhu
dc55c59b84
Fix use SQL as table name
2015-05-19 10:43:32 +08:00
Jinzhu
5af077cd2d
Handle []string for Select
2015-05-11 15:17:35 +08:00
Jinzhu
055bf79f8b
Don't call method if value is nil
2015-04-21 11:24:48 +08:00
li3p
f9bd6bcc64
look up the Field.Name at Scope.SetColumn
2015-04-16 14:28:55 +08:00
li3p
7966cde514
look up the Field.Name at Scope.SetColumn
2015-04-16 14:08:13 +08:00
Jinzhu
e2eef50fb4
Add SetTableNameHandler
2015-04-08 14:56:03 +08:00
Jinzhu
b9a39be9c5
Add Tabler
2015-04-08 11:36:01 +08:00
Jay Taylor
ab48cd222a
`UpdateColumns(...)` no longer triggers save of associated records.
2015-03-28 14:15:12 -07:00
Jinzhu
2989e42d4d
Support UpdateColumn with Select and Omit
2015-03-13 11:01:05 +08:00
Jinzhu
187eae8d9c
Update with Select and Omit
2015-03-12 18:30:59 +08:00
Jinzhu
ad251b9deb
Create with Select
2015-03-12 17:47:31 +08:00
Jinzhu
6e5d46bf37
Refactor Search API
2015-03-12 14:47:07 +08:00
Jinzhu
49454839bd
Support Multi primary keys
2015-03-11 11:28:30 +08:00
Jinzhu
33e6b14632
Clear value from db after set table name
2015-02-26 16:08:26 +08:00
Jinzhu
ce72988e96
Refactoring API for plugin system
2015-02-26 14:40:30 +08:00
Jinzhu
10340e6ad7
Support SQL expression
2015-02-24 22:06:35 +08:00
Jinzhu
0f08058713
Fix quote table name with database
2015-02-24 18:02:22 +08:00
Jinzhu
83ee11e184
Don't call callbacks if has error
2015-02-24 16:28:15 +08:00
Jinzhu
406a01875c
Test using pointer as struct fields
2015-02-20 22:06:49 +08:00
Jinzhu
5c478b46e1
Use Common Initialisms from golint
2015-02-18 10:36:32 +08:00
Jinzhu
672ba4ffc9
Rename ToSnake to ToDBColumnName
2015-02-18 09:26:35 +08:00
Jinzhu
9b355ee86c
Fix Associations with slice of pointer
2015-02-17 23:36:23 +08:00
Jinzhu
0b32041135
Review and Refactor
2015-02-17 22:55:14 +08:00
Jinzhu
a38f83527a
Fix all tests
2015-02-17 18:37:47 +08:00
Jinzhu
d6439f4147
Fix tests after refactor
2015-02-17 18:01:24 +08:00
Jinzhu
803343fbe5
Fix scope.getField
2015-02-17 14:30:37 +08:00
Jinzhu
139b9a37e7
Merge branch 'master' into refactor
2015-02-17 08:38:32 +08:00
Jinzhu
73b6f0eace
Linting according to golint
2015-02-17 08:34:01 +08:00
Andrew Martin
52775992ec
golinting
2015-02-17 10:15:34 +11:00
Jinzhu
de3f2a5c46
Refactor Fields
2015-02-16 17:47:07 +08:00