Commit Graph

467 Commits

Author SHA1 Message Date
Jinzhu 189547f615 Fix new session with Begin, close #4120 2021-02-26 16:43:43 +08:00
Jinzhu 73d44a4f97 Fix create duplicated constraint, close #4090 2021-02-16 08:52:56 +08:00
Jinzhu 84ea3ec0cc Fix sub query argument order with multiple raw SQL 2021-02-09 19:56:45 +08:00
Jinzhu df24821896 Fix SubQuery for raw sql 2021-02-09 17:05:50 +08:00
yrong1997 2ba612e805
Add field tag to ignore migration (#4028)
* Add field tag to ignore migration

* Fix null value with space

* refactor migration tag
2021-02-09 16:03:02 +08:00
Jinzhu 883c32e59a Support Unscoped when delete with selected associations, close #4062 2021-02-07 14:36:27 +08:00
Jinzhu 4373aa01ab Don't call AfterFind hooks if no record found, close #4048 2021-02-07 12:44:59 +08:00
Jinzhu 3d3208ed60 initialize config plugins 2021-02-03 16:27:49 +08:00
Jinzhu 8500380e60 Add name checker test, close #4007 2021-01-27 17:45:59 +08:00
rorschach ba59065024 retrieving gorm object support pointer 2021-01-27 11:48:47 +08:00
Jinzhu 08678106a4 Support replace associations without the creation in association mode, close #3937 2021-01-26 14:34:21 +08:00
Jinzhu 916338a9e1 Test migrate constraints, close #3986 2021-01-26 13:39:34 +08:00
Jinzhu 35ebfe6874 Support group conditions with single OR condition 2021-01-20 18:24:05 +08:00
Jinzhu de850edb4f Fix Change UpdatedAt to current time when doing OnConflict UpdateAll 2021-01-11 19:16:47 +08:00
Jinzhu fe553a7c1a Fix prepared statement in transaction mode can't be shared in normal operations, close #3927 2021-01-10 16:46:06 +08:00
Jinzhu 7302c8a136 Fix tests and logger 2021-01-10 15:27:53 +08:00
Jinzhu d888c799d7 Change UpdatedAt to current time when doing OnConflict UpdateAll 2021-01-08 19:20:42 +08:00
Jinzhu 1b8cb07cf2 Allow Where select fields when searching with struct 2020-12-30 18:13:52 +08:00
Jinzhu ade0bd6d60 Fix SELECT with sql expression in some cases, close #3889 2020-12-28 10:40:30 +08:00
Jinzhu ad8a5c0d1a Add QueryFields mode when query many2many relations 2020-12-25 16:35:25 +08:00
Jinzhu 468152d45b Add DisableNestedTransaction support 2020-12-16 19:33:35 +08:00
Jinzhu 6848ae872f Fix gorm.Expr with SubQuery, fix #3857 2020-12-15 15:50:35 +08:00
Jinzhu 0f00493c50 Continue to update tracking fields even not selected with Select, but skip them if omited with Omit, fix #3856 2020-12-15 11:18:29 +08:00
Jinzhu 14a0976dd4 populate the DeletedAt field when soft delete, fix #3855 2020-12-15 10:39:20 +08:00
Jinzhu e1952924e2 Support named Joins, close #3833 2020-12-07 10:31:06 +08:00
Jinzhu 1ef1f0bfe4 Fix Count with complicated Select, close #3826 2020-12-06 14:30:42 +08:00
Jinzhu 0c12a4c360 Add CreateBatchSize option 2020-12-02 14:59:50 +08:00
Jinzhu 6950007d6a Fix failed to parse relations when using goroutinue, close #3790
commit ee0ec43e8dfa85c1c1a562c2d0d47776cf8abd92
Author: Jinzhu <wosmvp@gmail.com>
Date:   Fri Nov 27 14:31:57 2020 +0800

    Fix failed to parse relations when using goroutinue, close #3790

commit 590e73ff95
Author: rokeyzhao <rokeyzhao@tencent.com>
Date:   Thu Nov 26 20:27:55 2020 +0800

    test: no cache preload in goroutine
2020-11-27 14:32:20 +08:00
Luis Guillermo Gómez 47ffd0bef4
Select all fields in SQL queries avoiding the SELECT * FROM (#3731)
* Select all fields in SQL queries avoiding the SELECT * FROM

* Select table name with fields in SQL queries

* Use QueryFields to execute the SQL query with all fields of the table
2020-11-20 15:38:25 +08:00
Deviller d66af581b4
Fix Association.Replace() error returning (#3766)
* Fix Association.Replace() error returning

* Fallback to gorm.Model at TestAssociationNotNullClear()
2020-11-19 19:24:34 +08:00
Jinzhu 54b80b18bc Allow to omit fields in associations, close #3752 2020-11-17 21:49:40 +08:00
Jinzhu 50df9da6a1 Allow to skip associations when creating join table for many2many, close #3605 2020-11-17 20:24:08 +08:00
Jinzhu 26504f5cae Use NewDB to replace WithConditions for Session 2020-11-17 16:28:37 +08:00
Jinzhu f6e1786ca2 Add skip hooks support 2020-11-17 15:19:58 +08:00
Jinzhu f5c2126c29 Fix FindInBatches tests 2020-11-17 13:14:34 +08:00
Jinzhu 320f33061c Fix FindInBatches to modify the query conditions, close #3734 2020-11-17 11:19:04 +08:00
Jinzhu a8db54afd6 Add CreateInBatches supports 2020-11-16 21:42:30 +08:00
Jinzhu 62be27d3ca Add OnConflict UpdateAll support 2020-11-16 20:22:08 +08:00
Jinzhu fcf2ab6c0e Add deleted_at check when soft deleting, fix #3720 2020-11-05 11:20:08 +08:00
Jinzhu 560d303e71 Fix Scan with soft delete, close #3712 2020-11-04 11:03:22 +08:00
Jinzhu c915471169 Support Expression for OrderBy clause 2020-11-03 10:30:05 +08:00
Jinzhu a8141b6cc9 Fix DeletedAt marshal and unmarshal, close #3693 2020-10-30 18:15:07 +08:00
Jinzhu 4009ec5816 Fix call hook methods when updating with struct 2020-10-27 18:14:36 +08:00
Jinzhu 0aef8acc11 Add smart auto migrate tests 2020-10-22 16:36:27 +08:00
Jinzhu 231aba53c5 Fix count with order by 2020-10-22 11:28:43 +08:00
Jinzhu 5fee5b1b24 Add option tag support for index 2020-10-21 20:18:21 +08:00
Jinzhu 33a11767ea Upgrade test go.mod dependencies 2020-10-20 19:13:31 +08:00
Jinzhu 9b2181199d Fix soft delete with OrCondition, close #3627 2020-10-19 14:50:11 +08:00
Jinzhu 3d846957cd Compatible with tag notNull 2020-10-09 17:42:28 +08:00
Jinzhu 7faf1ca80f Fix Select with AS, close #3581, #3567 2020-10-09 11:52:12 +08:00
Jinzhu dbc6b34dce Add detailed error information when missing table name 2020-09-29 15:43:31 +08:00
Jinzhu ba253982bf Fix Pluck with Time and Scanner 2020-09-24 20:08:24 +08:00
Jinzhu c0de3c5051 Support FullSaveAssociations Mode, close #3487, #3506 2020-09-24 19:29:15 +08:00
Jinzhu 5228735915 Don't build IN condition if value implemented Valuer interface, #3517 2020-09-24 15:00:13 +08:00
Jinzhu 1a526e6802 Fix NamingStrategy with embedded struct, close #3513 2020-09-24 11:32:38 +08:00
Jinzhu d002c70cf6 Support named argument for struct 2020-09-17 21:52:41 +08:00
Jinzhu a932175ccf Refactor cascade delete associations 2020-09-15 14:28:26 +08:00
Jinzhu ed1b134e1c Fix use uint to for autoCreateTime, autoUpdateTime 2020-09-11 17:33:31 +08:00
Jinzhu 02fb382ec0 Support scan into int, string data types 2020-09-11 15:01:02 +08:00
Jinzhu e583dfa196 Allow negative number for limit 2020-09-11 11:54:21 +08:00
Jinzhu b8a74a80d7 Fix embedded struct with default value, close #3451 2020-09-11 11:18:54 +08:00
Jinzhu 70a7bd52ca Support delete associations with Select when deleting 2020-09-10 21:46:18 +08:00
Jinzhu 2242ac6c0e Fix tests & refactor for PR #3429 2020-09-09 10:31:48 +08:00
caelansar aceb3dad3b correct generated sql 2020-09-08 21:28:04 +08:00
Jinzhu c70c097e88 Refactor format SQL for driver.Valuer 2020-09-08 19:11:29 +08:00
Jinzhu c9d5c0b07a Fix create database foreign keys for same type having has many/one & many2many relationships, close #3424 2020-09-08 18:25:29 +08:00
Jinzhu 05794298bd Fix Save with specified table, close #3396 2020-09-06 12:22:08 +08:00
Jinzhu d8ddccf147 Don't marshal to null for associations after preloading, close #3395 2020-09-04 19:09:51 +08:00
Jinzhu 28121d4455 Fix panic when batch creating from slice contains invalid data, close #3385 2020-09-03 20:59:41 +08:00
Jinzhu dd0d74fad0 Fix transaction on closed conn when using prepared statement, close #3380 2020-09-03 19:16:55 +08:00
Jinzhu 3cd81ff646 Fix query with specified table and conditions, close #3382 2020-09-03 18:42:32 +08:00
Jinzhu cf31508095 Fix tests_all.sh 2020-09-03 15:02:04 +08:00
Jinzhu 3cc7a30712 Fix tests/go.mod 2020-09-03 13:28:37 +08:00
Jinzhu 98e15e0b95 Setup DB's ConnPool in PrepareStmt mode, fix #3362 2020-09-03 12:54:26 +08:00
Jinzhu 48b395b760 returns ErrEmptySlice when creating with zero length slice 2020-09-03 11:32:30 +08:00
Jinzhu fcb666cfa3 Fix associations using composite primary keys without ID field, close #3365 2020-09-03 10:58:48 +08:00
Jinzhu 130f24090d update default_value_test 2020-09-02 21:03:47 +08:00
Jinzhu dbe0f4d8d7 Allow use NULL as default value for string, close #3363 2020-09-02 20:15:12 +08:00
Jinzhu 680dda2c15 Fix combine conditions when using string conditions, close #3358 2020-09-02 20:09:51 +08:00
Jinzhu dbaa6b0ec3 Fix Scan struct with primary key, close #3357 2020-09-02 16:14:26 +08:00
Jinzhu d1e17d549f request ColumnTypes after new session method 2020-09-01 20:53:54 +08:00
Jinzhu e73147fa8e Better support for scan into map, fix unfriendly data type for interface, close #3351 2020-09-01 17:45:14 +08:00
Jinzhu e98a4a3a4e Change default timeout interval to avoid test fail on CI 2020-09-01 14:01:59 +08:00
Jinzhu 308d22b166 Clean up associations before Preload, close #3345 2020-09-01 13:48:37 +08:00
Jinzhu 496db1f13e Fix named argument with multiple line SQL, fix #3336 2020-08-31 15:45:56 +08:00
Jinzhu 9b0ad4730f Squashed commit of the following:
commit 759038a126122d5b3323979fdd7d867a4ab85585
Author: Jinzhu <wosmvp@gmail.com>
Date:   Mon Aug 31 12:06:31 2020 +0800

    Add PreparedStmt tests

commit 066d54db1f
Author: 王岚 <wanglan.backend@bytedance.com>
Date:   Fri Aug 28 18:40:59 2020 +0800

    prepare_stmt add ctx
2020-08-31 12:08:33 +08:00
Jinzhu b4166d9515 Fix V2 Save compatibility, close #3332 2020-08-30 10:21:11 +08:00
Jinzhu 59586dcd31 Fix unnecessary duplicated primary condition when using Save, close #3330 2020-08-29 23:02:19 +08:00
Jinzhu 06461b3254 GORM V2.0.0 2020-08-28 21:16:47 +08:00
Jinzhu dacbaa5f02 Fix update attrs order 2020-08-27 19:52:01 +08:00
Jinzhu cd54dddd94 Test update with GormValuer 2020-08-27 18:42:40 +08:00
Jinzhu 7a90496701 Test create from sql expr with map 2020-08-27 16:27:59 +08:00
Jinzhu ce8853e7a6 Add GormValuer interface support 2020-08-27 15:03:57 +08:00
Jinzhu 3195ae1207 Allow override alias table in preload conditions 2020-08-25 18:59:19 +08:00
Jinzhu 3dfa8a66f1 Fix panic when delet without pointer, close #3308 2020-08-25 17:27:28 +08:00
Jinzhu 84dbb36d3b Add Golang v1.15 2020-08-24 20:24:25 +08:00
Jinzhu ebdb4edda8 Add AllowGlobalUpdate mode 2020-08-23 20:08:23 +08:00
Jinzhu cc6a64adfb Support smart migrate, close #3078 2020-08-23 18:16:12 +08:00
Jinzhu 3a97639880 Fix unordered joins, close #3267 2020-08-23 10:45:10 +08:00
Jinzhu 0c9870d1ae Test Association Mode with conditions 2020-08-20 10:39:01 +08:00
Jinzhu c1782d60c1 Fix embedded scanner/valuer, close #3283 2020-08-19 15:47:08 +08:00
Jinzhu b5de8aeb42 Fix overrite SELECT clause 2020-08-18 18:58:53 +08:00
Jinzhu 50826742fd Add error gorm.ErrInvalidData 2020-08-18 18:00:36 +08:00
Jinzhu dc48e04896 Fix nested embedded struct, close #3278 2020-08-18 11:21:40 +08:00
Jinzhu 9fcc337bd1 Fix create from map 2020-08-17 17:41:36 +08:00
Jinzhu 2a716e04e6 Avoid panic for invalid transaction, close #3271 2020-08-17 12:16:42 +08:00
Jinzhu 2faff25dfb Fix FirstOr(Init/Create) when assigning with association 2020-08-13 18:38:39 +08:00
Jinzhu 2c4e857125 Should ignore association conditions when querying with struct 2020-08-13 18:09:04 +08:00
Jinzhu dea93edb6a Copy TableExpr when clone statement 2020-08-13 16:28:21 +08:00
Jinzhu ecc946be6e Test update from sub query 2020-08-13 16:05:06 +08:00
Jinzhu 045d5f8538 Fix count with join and no model, close #3255 2020-08-13 12:18:36 +08:00
Jinzhu 7d45833f3e Fix driver.Valuer interface returns nil, close #3248 2020-08-13 12:05:55 +08:00
Caelansar 15b96ed3f4 add testcase 2020-08-10 15:34:20 +08:00
Jinzhu 39c8d6220b Fix soft delete panic when using unaddressable value 2020-08-06 17:48:46 +08:00
Jinzhu 3df249c127 Use table expr when inserting table, close #3239 2020-08-06 17:12:31 +08:00
Jinzhu da1e54d5ab Add sql-cli 2020-08-06 15:37:36 +08:00
Jinzhu ff985b90cc Fix failed to guess relations for embedded types, close #3224 2020-08-04 12:25:34 +08:00
Jinzhu c11c939b95 callbacks support sort with wildcard 2020-08-03 21:48:36 +08:00
Jinzhu f83b00d20d Fix Count with Select when Model not specfied, close #3220 2020-08-03 10:30:25 +08:00
Jinzhu 2676fa4fb8 Remove autoincrement tag for join table, close #3217 2020-07-31 18:19:25 +08:00
Jinzhu 81c68db87f Fix zero time failed on mysql 8 2020-07-30 17:56:16 +08:00
lninl 7bb883b665
Auto creating/updating time with unix (milli) second (#3213)
* Auto creating/updating time with unix (milli) second

* add test for 'Auto creating/updating time with unix (milli) second'
2020-07-30 17:39:57 +08:00
Jinzhu 47a5196734 Fix uninitialized Valuer return time.Time, close #3214 2020-07-30 17:37:07 +08:00
Jinzhu 7c2ecdfc1c Fix use pointer of Valuer as foreign key, close #3212 2020-07-30 10:23:35 +08:00
Jinzhu c7667e9299 Refactor Prepared Statement 2020-07-28 14:46:48 +08:00
Jinzhu 6ed697dd02 TestFirstOrCreateWithPrimaryKey, close #3192 2020-07-23 23:41:56 +08:00
Jinzhu da16f7b475 Create extension uuid-ossp for postgres test database 2020-07-22 12:13:40 +08:00
Jinzhu 0546b59743 Fix save many2many associations with UUID primary key, close #3182 2020-07-22 11:28:00 +08:00
Jinzhu 5d05441067 Test From SubQuery with vars 2020-07-20 08:12:41 +08:00
Jinzhu a0477f94dd Allow Omit with Query, close #3165 2020-07-19 21:48:58 +08:00
Jinzhu 90183fadde Allow advanced table with args 2020-07-19 21:30:24 +08:00
Jinzhu 362779575c Fix Select with specific symbol, close #3157 2020-07-17 11:24:24 +08:00
Jinzhu 58e3241544 Fix Select with specific symbol, close #3158 2020-07-17 11:06:20 +08:00
Jinzhu e83e210971 Update postgres DSN 2020-07-16 17:15:57 +08:00
Jinzhu 1f05cb7e55 Handle Associations with pointer of pointer, close #3130 2020-07-10 22:53:03 +08:00
Jinzhu d4b462a351 Fix alias keyword with Table, close #3104 2020-07-10 21:11:28 +08:00
Jinzhu 33c48611b6 Fix customize table with Delete, close #3129 2020-07-10 13:08:29 +08:00
Jinzhu c0319f6eed Test map with named argument for raw sql 2020-07-10 12:52:01 +08:00
Jinzhu bba569af2b Add NamedArg support 2020-07-10 12:28:24 +08:00
Jinzhu a8655f7947 Fix auto select with smaller struct for slices 2020-07-09 12:15:35 +08:00
Jinzhu 2ae0653af2 Fix ambiguous column when using same column name in join table, close #3120 2020-07-09 09:03:48 +08:00
Jinzhu 619cd332ec Add index priority supports 2020-07-08 17:59:40 +08:00
Jinzhu de482f57ff Test raw sql with gorm.Expr 2020-07-06 15:47:33 +08:00
Jinzhu b5725940e9 Test Select with Update Struct 2020-07-06 11:20:43 +08:00
Jinzhu 9a4941ba70 Test Order/GroupBy 2020-07-06 09:47:14 +08:00
Jinzhu 4e066c9590 Test Or 2020-07-05 12:23:45 +08:00
Jinzhu 1a2fabb34d Test Not 2020-07-05 11:56:12 +08:00
Jinzhu 2416eabd3f Change unique_idnex to UniqueIndex 2020-07-04 00:36:27 +08:00
Jinzhu 8100ac7663 Change default postgres DSN for github action 2020-07-03 09:27:24 +08:00
Jinzhu 2d945a9641 Switch pgx as default driver 2020-07-03 08:54:12 +08:00
SmallTianTian 3c03b6e527
fix no limit no offset. (#3101)
* fix no limit no offset.

* add test for playground.
2020-07-02 18:14:33 +08:00
Jinzhu 63e48191a8 Test failed to save association should rollback, close #3100 2020-07-01 21:28:19 +08:00
Jinzhu d02b592c6c Better support Count in chain 2020-07-01 10:19:52 +08:00
Jinzhu 9075b33620 Query with smaller struct 2020-07-01 08:56:21 +08:00
Jinzhu 929c0c576c Test Hooks For Slice 2020-06-30 22:47:21 +08:00
Jinzhu f5566288de Add SetColumn, Changed method 2020-06-30 16:53:54 +08:00
Jinzhu 9bfe306975 Only query with readable fields 2020-06-27 08:04:12 +08:00
Jinzhu cb5a35a807 Test group with table name 2020-06-26 08:39:18 +08:00
Jinzhu 4eae3fea41 Test group by with multiple columns 2020-06-25 23:37:49 +08:00
Jinzhu f2b49437fb Test set string field's default value to blank string 2020-06-25 22:48:10 +08:00
Jinzhu c5feff1591 Fix go.mod 2020-06-25 08:08:37 +08:00
Jinzhu 1b28c187c0 Fix create with default value 2020-06-25 08:00:10 +08:00
Jinzhu fb56fe993a Add default value test 2020-06-25 06:38:07 +08:00
Jinzhu 3ec7ed1d51 Upgrade default mysql driver 2020-06-24 20:19:28 +08:00
Jinzhu 8ce2dd5548 Update test script 2020-06-24 19:09:19 +08:00
Jinzhu 4a01d4c263 Create join table with ReorderModels 2020-06-24 17:19:11 +08:00
Jinzhu 67bd842645 Update tests all script 2020-06-24 14:56:04 +08:00
Jinzhu 7e1fa4a44d Fix Count after Session 2020-06-23 22:41:41 +08:00
Jinzhu 4201f7bdab Fix create unique index when creating table, close #3081 2020-06-23 22:14:41 +08:00
Hinagiku Soranoba b733d16f56
Create supports Array / ArrayPtr (#3076)
* add Array / ArrayPtr create tests

* support create using array
2020-06-23 14:38:36 +08:00
Jinzhu e77e7bb842 Fix nested embedded field with pointer, close #3071 2020-06-23 09:12:57 +08:00
Jinzhu d0764bead1 Test migrate with comment and check created constraints 2020-06-21 13:59:43 +08:00
Jinzhu fee1e4aafd Fix create foreign keys for many2many relations 2020-06-21 10:48:23 +08:00
Jinzhu 5883490aa7 Select, Omit, Preload supports clause.Associations 2020-06-20 17:21:01 +08:00
Jinzhu a1e35bdc94 Support merge batch data some having primary values 2020-06-20 16:52:15 +08:00
Jinzhu 3d8f6f9cf9 Test GroupConditions 2020-06-20 01:55:30 +08:00
Jinzhu 4f19e2a7b3 Test ForeignKeyConstraints 2020-06-20 01:20:18 +08:00
Jinzhu d4d339f3b5 Handle data type cases 2020-06-19 22:51:46 +08:00
Jinzhu e3292b3b41 Test with latest driver vesion 2020-06-19 18:44:19 +08:00
Jinzhu 7dc255acfe Add SavePoint/RollbackTo/NestedTransaction 2020-06-19 18:30:04 +08:00
Jinzhu 2c1b04a2cf Fix failed to create second record in same transaction, close #3060 2020-06-19 12:38:03 +08:00
Jinzhu 07960fe661 Fix []byte support 2020-06-18 11:24:08 +08:00
Jinzhu 96368eb967 Test embedded struct implements Scan & Value interface 2020-06-18 09:15:23 +08:00
Jinzhu 6b2f37189e Fix few cases with postgres 2020-06-18 08:40:41 +08:00
Jinzhu e487f355a0 Add DB method 2020-06-17 19:57:54 +08:00
maiyama18 1bbaa43951
fix typos in test method names (#3052) 2020-06-14 09:24:07 +08:00
Jinzhu 1af325ab4f Upgrade sqlserver driver 2020-06-10 16:06:54 +08:00
Jinzhu 45cb6b49bf Add FindInBatches support 2020-06-10 15:36:34 +08:00
Jinzhu dbc3f8feb0 Add count soft deleted record test 2020-06-10 13:42:39 +08:00
Jinzhu 0d58d5a3a7 Upsert selected columns 2020-06-10 10:48:48 +08:00
Jinzhu f3424c6864 Support save slice of data 2020-06-10 00:02:14 +08:00
Jinzhu 22ff8377df Fix Pluck with Table only 2020-06-09 15:36:10 +08:00
Jinzhu 649d02fddd Add batch upsert tests 2020-06-09 09:04:32 +08:00
Jinzhu f0b6bd9ee0 Fix typo 2020-06-08 23:25:16 +08:00
Jinzhu 8f8d549ca3 Refactor merge where exprs 2020-06-08 09:13:34 +08:00
Jinzhu e7b2e92ce3 Remove RecordNotFound method 2020-06-07 22:03:45 +08:00
Jinzhu d11c424334 Fix typo 2020-06-07 15:26:43 +08:00
Jinzhu 82d55b1054 Add OnConflict DoUpdates test 2020-06-07 12:50:00 +08:00
Jinzhu a954d772d7 Support customize gorm field type 2020-06-06 10:47:32 +08:00
Jinzhu 1490a062db Refactor codebase and add benchmark test 2020-06-05 23:26:56 +08:00