sqlui 0.1.7 → 0.1.8

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/sqlui.rb +8 -6
  3. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 428bf7cc27927c4639b1f03f645a10b7885c0413574ca09e405233573f20214a
4
- data.tar.gz: 74c6979b878bf52f5bd524960bba24a37c6e586421c991614df1496383717a28
3
+ metadata.gz: 841f89dc1fb61aa4395aca199aba43cd855e34e9641ea9cf2dc18b356b53cb93
4
+ data.tar.gz: f34d885b1c9f40e804fde6426bdfd7217ef912b2968b6987861ee6624fd60b27
5
5
  SHA512:
6
- metadata.gz: 99407ce252d89559853785e6e7ee70b93d0661d6005cf04465640936d3b4fcec455bc1806d18dd17e8d133bf1859c04072e8ffbd19ca9f6bc01c03a30163b928
7
- data.tar.gz: 33fd47d3d88fddcc38b3b252e7341dbd4f99d93b4fd52665ba3f2c4a58acabbf5c7052d0430cfd71c92053755f85e44be80d2e15d7a33879c19e00d2c89cf9ea
6
+ metadata.gz: dea76e1239e97123db860d4f7d729c2a8c317e827105f5ef9c690e23001a2dd5070ad594fe9b87036eeeefd545c004a1c64a51a4f6b48fa7e40cd1e43efdc286
7
+ data.tar.gz: 671cbc3930edda13b041dae163075e64b59e7069abaa299cb14121e9272c91887aea03165d69ffe4abb60ac49b1d5d6acfb8c72aae2c2c34c4e84877b8897220
data/lib/sqlui.rb CHANGED
@@ -174,13 +174,15 @@ class SQLUI
174
174
 
175
175
  def execute_query(sql)
176
176
  result = @queryer.call(sql)
177
- rows = result.rows
178
- column_types = result.columns.map { |_| 'string' }
177
+ rows = result.map { |row| row.values }
178
+ columns = result.first&.keys || []
179
+ column_types = columns.map { |_| 'string' }
179
180
  unless rows.empty?
180
- maybe_non_null_column_value_exemplars = result.columns.each_with_index.map do |_, index|
181
- rows.find do |row|
181
+ maybe_non_null_column_value_exemplars = columns.each_with_index.map do |_, index|
182
+ row = rows.find do |row|
182
183
  !row[index].nil?
183
- end.try(:[], index)
184
+ end
185
+ row.nil? ? nil : row[index]
184
186
  end
185
187
  column_types = maybe_non_null_column_value_exemplars.map do |value|
186
188
  case value
@@ -197,7 +199,7 @@ class SQLUI
197
199
  end
198
200
  {
199
201
  query: sql,
200
- columns: result.columns,
202
+ columns: columns,
201
203
  column_types: column_types,
202
204
  total_rows: rows.size,
203
205
  rows: rows.take(@max_rows)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sqlui
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.7
4
+ version: 0.1.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nick Dower