mirror of
https://github.com/rails/rails.git
synced 2022-11-09 12:12:34 -05:00
Merge pull request #21697 from gdeglin/fix_returning_disabled_default_values_bug
Fix a bug with returning_disabled when using the postgresql adapter
This commit is contained in:
commit
3ae76f553f
2 changed files with 15 additions and 1 deletions
|
@ -761,7 +761,7 @@ module ActiveRecord
|
|||
end
|
||||
|
||||
def extract_table_ref_from_insert_sql(sql) # :nodoc:
|
||||
sql[/into\s+([^\(]*).*values\s*\(/im]
|
||||
sql[/into\s("[A-Za-z0-9_."\[\]\s]+"|[A-Za-z0-9_."\[\]]+)\s*/im]
|
||||
$1.strip if $1
|
||||
end
|
||||
|
||||
|
|
|
@ -123,6 +123,20 @@ module ActiveRecord
|
|||
assert_equal expect.to_i, result.rows.first.first
|
||||
end
|
||||
|
||||
def test_exec_insert_default_values_with_returning_disabled_and_no_sequence_name_given
|
||||
connection = connection_without_insert_returning
|
||||
result = connection.exec_insert("insert into postgresql_partitioned_table_parent DEFAULT VALUES", nil, [], 'id')
|
||||
expect = connection.query('select max(id) from postgresql_partitioned_table_parent').first.first
|
||||
assert_equal expect.to_i, result.rows.first.first
|
||||
end
|
||||
|
||||
def test_exec_insert_default_values_quoted_schema_with_returning_disabled_and_no_sequence_name_given
|
||||
connection = connection_without_insert_returning
|
||||
result = connection.exec_insert('insert into "public"."postgresql_partitioned_table_parent" DEFAULT VALUES', nil, [], 'id')
|
||||
expect = connection.query('select max(id) from postgresql_partitioned_table_parent').first.first
|
||||
assert_equal expect.to_i, result.rows.first.first
|
||||
end
|
||||
|
||||
def test_sql_for_insert_with_returning_disabled
|
||||
connection = connection_without_insert_returning
|
||||
result = connection.sql_for_insert('sql', nil, nil, nil, 'binds')
|
||||
|
|
Loading…
Reference in a new issue