duckdb 1.4.1.0 → 1.4.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +2 -0
- data/Dockerfile +2 -2
- data/Gemfile.lock +1 -1
- data/lib/duckdb/connection.rb +17 -11
- data/lib/duckdb/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: d200c70dfab88b1a94fa077f03cdd1d5f982f0895e2032ed9fc7c73b6a103b0e
|
|
4
|
+
data.tar.gz: c0003402de6e08504a4a9cf762bf4e0735810196d4e5a4dc144eb3ee20fbee07
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 9cbaeef230722faeca71ada1b187a71c3ab5793323086639493a136f88642ac09a13e1ec69f542d893fe0f73f665d98e16518415c272b796c32aae8cac14dfb5
|
|
7
|
+
data.tar.gz: 5c935ba35bd85398e56a150b88caa8b4ea26d5524fdd85f9dd3883e7a7e2fad8101dbec88a92688e5d501e7cce381393e78f45110d1d08fbd9e43e9fd2252473
|
data/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,8 @@ All notable changes to this project will be documented in this file.
|
|
|
4
4
|
|
|
5
5
|
# Unreleased
|
|
6
6
|
|
|
7
|
+
# 1.4.1.1 - 2025-11-03
|
|
8
|
+
- DuckDB::Connection#appender_from_query accepts block.
|
|
7
9
|
# 1.4.1.0 - 2025-11-01
|
|
8
10
|
- add DuckDB::Connection#appender_from_query.
|
|
9
11
|
- add DuckDB::Appender.create_query.
|
data/Dockerfile
CHANGED
data/Gemfile.lock
CHANGED
data/lib/duckdb/connection.rb
CHANGED
|
@@ -126,14 +126,9 @@ module DuckDB
|
|
|
126
126
|
|
|
127
127
|
# returns Appender object.
|
|
128
128
|
# The first argument is table name
|
|
129
|
-
def appender(table)
|
|
129
|
+
def appender(table, &)
|
|
130
130
|
appender = create_appender(table)
|
|
131
|
-
|
|
132
|
-
return appender unless block_given?
|
|
133
|
-
|
|
134
|
-
yield appender
|
|
135
|
-
appender.flush
|
|
136
|
-
appender.close
|
|
131
|
+
run_appender_block(appender, &)
|
|
137
132
|
end
|
|
138
133
|
|
|
139
134
|
if Appender.respond_to?(:create_query)
|
|
@@ -141,8 +136,10 @@ module DuckDB
|
|
|
141
136
|
# connection.appender_from_query(query, types, table_name = nil, column_names = nil) -> DuckDB::Appender
|
|
142
137
|
#
|
|
143
138
|
# Creates an appender object that executes the given query with any data appended to it.
|
|
144
|
-
# The `table_name` parameter is used to refer to the appended data in the query. If omitted, it defaults
|
|
145
|
-
#
|
|
139
|
+
# The `table_name` parameter is used to refer to the appended data in the query. If omitted, it defaults
|
|
140
|
+
# to "appended_data".
|
|
141
|
+
# The `column_names` parameter provides names for the columns of the appended data. If omitted, it
|
|
142
|
+
# defaults to "col1", "col2", etc.
|
|
146
143
|
#
|
|
147
144
|
# require 'duckdb'
|
|
148
145
|
# db = DuckDB::Database.open
|
|
@@ -153,13 +150,22 @@ module DuckDB
|
|
|
153
150
|
# appender = con.appender_from_query(query, types, 'my_appended_data', %w[i val])
|
|
154
151
|
# appender.append_row(1, 'hello world')
|
|
155
152
|
# appender.close
|
|
156
|
-
def appender_from_query(query, types, table_name = nil, column_names = nil)
|
|
157
|
-
Appender.create_query(self, query, types, table_name, column_names)
|
|
153
|
+
def appender_from_query(query, types, table_name = nil, column_names = nil, &)
|
|
154
|
+
appender = Appender.create_query(self, query, types, table_name, column_names)
|
|
155
|
+
run_appender_block(appender, &)
|
|
158
156
|
end
|
|
159
157
|
end
|
|
160
158
|
|
|
161
159
|
private
|
|
162
160
|
|
|
161
|
+
def run_appender_block(appender, &)
|
|
162
|
+
return appender unless block_given?
|
|
163
|
+
|
|
164
|
+
yield appender
|
|
165
|
+
appender.flush
|
|
166
|
+
appender.close
|
|
167
|
+
end
|
|
168
|
+
|
|
163
169
|
def create_appender(table)
|
|
164
170
|
t1, t2 = table.split('.')
|
|
165
171
|
t2 ? Appender.new(self, t1, t2) : Appender.new(self, t2, t1)
|
data/lib/duckdb/version.rb
CHANGED