Cleanup and fix raw sql

This commit is contained in:
Pablu
2025-12-02 10:44:28 +01:00
parent b7147d03c2
commit f6ca16b1f0
4 changed files with 48 additions and 51 deletions

View File

@@ -20,5 +20,16 @@ func main() {
log.Fatal(err)
}
fmt.Print(m)
table, err := m.RunSql("select * from videos where id like 'gishi%' limit 1")
if err != nil {
log.Fatal(err)
}
for _, c := range table.Columns {
fmt.Println(c)
}
for _, r := range table.Rows {
fmt.Println(r.Values)
}
}

View File

@@ -6,9 +6,24 @@ import (
engine "git.pablu.de/pablu/sqv-engine"
"github.com/gdamore/tcell/v2"
"github.com/rivo/tview"
// "github.com/uaraven/logview"
)
func populateTable(tableView *tview.Table, table engine.Table) {
tableView.Clear()
tableView.SetFixed(1, 0)
for i, c := range table.Columns {
color := tcell.ColorDarkGreen
tableView.SetCell(0, i, tview.NewTableCell(c.Name).SetTextColor(color).SetAlign(tview.AlignCenter))
}
for ri, r := range table.Rows {
for rc, c := range r.Values {
tableView.SetCell(ri+1, rc, tview.NewTableCell(c).SetTextColor(tcell.ColorWhite).SetAlign(tview.AlignLeft).SetMaxWidth(30))
}
}
tableView.ScrollToBeginning()
}
func main() {
app := tview.NewApplication()
@@ -25,8 +40,6 @@ func main() {
tableView.Clear()
})
// logView := logview.NewLogView().SetTitle("Logs")
verticalFlex := tview.NewFlex().
AddItem(menuView, 0, 1, true).
AddItem(tableView, 0, 3, false)
@@ -35,7 +48,6 @@ func main() {
SetDirection(tview.FlexRow).
AddItem(verticalFlex, 0, 4, true).
AddItem(sqlEditor, 0, 1, false)
// AddItem(logView, 0, 0, false)
m, err := engine.NewManager("db.sqlite")
if err != nil {
@@ -59,23 +71,12 @@ func main() {
panic("AHHHHHHH")
}
tableView.SetFixed(1, 0)
for i, c := range t.Columns {
color := tcell.ColorDarkGreen
tableView.SetCell(0, i, tview.NewTableCell(c.Name).SetTextColor(color).SetAlign(tview.AlignCenter))
}
err = m.LoadTable(&t)
if err != nil {
log.Fatalf("Error while loading Table, err: %v\n", err)
if !ok {
panic("AHHHHHHH")
}
for ri, r := range t.Rows {
for rc, c := range r.Values {
tableView.SetCell(ri+1, rc, tview.NewTableCell(c).SetTextColor(tcell.ColorWhite).SetAlign(tview.AlignLeft).SetMaxWidth(30))
}
}
tableView.ScrollToBeginning()
populateTable(tableView, t)
})
// Idk this shouldnt be needed imo but with only 0 it doesnt work, and with 1, well we are on Table 1 not zero, WHICH WE CANT ALWAYS SAY THERE IS
@@ -105,22 +106,12 @@ func main() {
if event.Key() == tcell.KeyEnter {
t, err := m.RunSql(sqlEditor.GetText())
if err != nil {
sqlEditor.SetText(err.Error(), true)
}
tableView.Clear()
tableView.SetFixed(1, 0)
for i, c := range t.Columns {
color := tcell.ColorDarkGreen
tableView.SetCell(0, i, tview.NewTableCell(c.Name).SetTextColor(color).SetAlign(tview.AlignCenter))
}
for ri, r := range t.Rows {
for rc, c := range r.Values {
tableView.SetCell(ri+1, rc, tview.NewTableCell(c).SetTextColor(tcell.ColorWhite).SetAlign(tview.AlignCenter))
}
sqlEditor.Replace(0, sqlEditor.GetTextLength(), err.Error())
tableView.Clear()
return nil
}
populateTable(tableView, t)
return nil
}
@@ -155,19 +146,16 @@ func main() {
case tcell.KeyCtrlE:
if !editorHidden {
horizontalFlex.ResizeItem(sqlEditor, 0, 0)
app.SetFocus(verticalFlex)
if menuHidden {
app.SetFocus(tableView)
} else {
app.SetFocus(verticalFlex)
}
} else {
horizontalFlex.ResizeItem(sqlEditor, 0, 1)
app.SetFocus(sqlEditor)
}
editorHidden = !editorHidden
// case tcell.KeyCtrlD:
// if !logHidden {
// horizontalFlex.ResizeItem(logView, 0, 0)
// } else {
// horizontalFlex.ResizeItem(logView, 0, 1)
// }
// logHidden = !logHidden
}
return event