1
0
mirror of https://github.com/lana-k/sqliteviz.git synced 2025-12-07 02:28:54 +08:00

fix column order in result set #74

This commit is contained in:
lana-k
2021-08-10 20:31:12 +02:00
parent 2ed5160f65
commit 9f32323a80
13 changed files with 155 additions and 92 deletions

View File

@@ -48,17 +48,22 @@ export default class Sql {
throw new Error('exec: Missing query string')
}
const sqlResults = this.db.exec(sql, params)
return sqlResults.map(result => _getDataSourcesFromSqlResult(result))
return sqlResults.map(result => {
return {
columns: result.columns,
values: _getDataSourcesFromSqlResult(result)
}
})
}
import (tabName, data, progressCounterId, progressCallback, chunkSize = 1500) {
if (this.db === null) {
this.createDb()
}
const columns = Object.keys(data)
const rowCount = data[columns[0]].length
this.db.exec(dbUtils.getCreateStatement(tabName, data))
const chunks = dbUtils.generateChunks(data, chunkSize)
const columns = data.columns
const rowCount = data.values[columns[0]].length
this.db.exec(dbUtils.getCreateStatement(tabName, data.values))
const chunks = dbUtils.generateChunks(data.values, chunkSize)
const chunksAmount = Math.ceil(rowCount / chunkSize)
let count = 0
const insertStr = dbUtils.getInsertStmt(tabName, columns)

View File

@@ -88,11 +88,11 @@ class Database {
const result = await this.execute(getSchemaSql)
// Parse DDL statements to get column names and types
const parsedSchema = []
if (result && result.name) {
result.name.forEach((table, index) => {
if (result && result.values && result.values.name) {
result.values.name.forEach((table, index) => {
parsedSchema.push({
name: table,
columns: stms.getColumns(result.sql[index])
columns: stms.getColumns(result.values.sql[index])
})
})
}