Refactor parsing & select order by impl (#6)
Go Tests / test (push) Successful in 1m3s

Reviewed-on: #6
This commit was merged in pull request #6.
This commit is contained in:
2026-06-05 15:22:41 +00:00
parent d10d0f8414
commit 238361b066
11 changed files with 792 additions and 528 deletions
+17 -8
View File
@@ -3,14 +3,16 @@ package schema
import (
"errors"
"strings"
"git.gdulai.com/gdulai/simpleorm/util"
)
type Constraint struct {
Name string
Type string
Columns []Column
RefTable *Table
RefColumns []Column
Name string
Type string
Columns []Column
RefTypeName string
RefColumns []Column
}
func (c *Constraint) GetDDL() (string, error) {
@@ -26,7 +28,9 @@ func (c *Constraint) GetDDL() (string, error) {
func (c *Constraint) getPkDDL() string {
var ddl strings.Builder
ddl.WriteString("CONSTRAINT " + c.Name + " PRIMARY KEY(")
ddl.WriteString("CONSTRAINT ")
ddl.WriteString(c.Name)
ddl.WriteString(" PRIMARY KEY(")
for i, col := range c.Columns {
if i != 0 {
ddl.WriteString(", ")
@@ -39,7 +43,9 @@ func (c *Constraint) getPkDDL() string {
func (c *Constraint) getFkDDL() string {
var ddl strings.Builder
ddl.WriteString("CONSTRAINT " + c.Name + " FOREIGN KEY(")
ddl.WriteString("CONSTRAINT ")
ddl.WriteString(c.Name)
ddl.WriteString(" FOREIGN KEY(")
for i, col := range c.Columns {
if i != 0 {
@@ -47,7 +53,10 @@ func (c *Constraint) getFkDDL() string {
}
ddl.WriteString(col.Name)
}
ddl.WriteString(") REFERENCES " + c.RefTable.Name + "(")
ddl.WriteString(") REFERENCES ")
ddl.WriteString(util.CamelToSnake(c.RefTypeName))
ddl.WriteString("(")
for i, col := range c.RefColumns {
if i != 0 {