wip
This commit is contained in:
@@ -10,6 +10,7 @@ type schema struct {
|
||||
}
|
||||
|
||||
type table struct {
|
||||
driver string //
|
||||
Name string // Name in SQL
|
||||
Type string // Go type
|
||||
NoInsert bool
|
||||
@@ -29,6 +30,19 @@ type column struct {
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
func (t *table) translateQuery(in string) string {
|
||||
if t.driver == DRIVER_SQLITE {
|
||||
return in
|
||||
}
|
||||
|
||||
i := 1
|
||||
for strings.Contains(in, "?") {
|
||||
in = strings.Replace(in, "?", fmt.Sprintf("$%d", i), 1)
|
||||
i++
|
||||
}
|
||||
return in
|
||||
}
|
||||
|
||||
func (t *table) colSQLNames() []string {
|
||||
names := make([]string, len(t.Columns))
|
||||
for i := range names {
|
||||
@@ -72,7 +86,7 @@ func (t *table) InsertQuery() string {
|
||||
b.WriteString(`?`)
|
||||
}
|
||||
b.WriteString(`)`)
|
||||
return b.String()
|
||||
return t.translateQuery(b.String())
|
||||
}
|
||||
|
||||
func (t *table) InsertArgs() string {
|
||||
@@ -116,7 +130,7 @@ func (t *table) UpdateQuery() string {
|
||||
b.WriteString(` ` + c.SqlName + `=?`)
|
||||
}
|
||||
|
||||
return b.String()
|
||||
return t.translateQuery(b.String())
|
||||
}
|
||||
|
||||
func (t *table) UpdateArgs() string {
|
||||
@@ -166,7 +180,7 @@ func (t *table) UpdateFullQuery() string {
|
||||
b.WriteString(` ` + c.SqlName + `=?`)
|
||||
}
|
||||
|
||||
return b.String()
|
||||
return t.translateQuery(b.String())
|
||||
}
|
||||
|
||||
func (t *table) UpdateFullArgs() string {
|
||||
@@ -222,7 +236,7 @@ func (t *table) DeleteQuery() string {
|
||||
b.WriteString(col.SqlName)
|
||||
b.WriteString(`=?`)
|
||||
}
|
||||
return b.String()
|
||||
return t.translateQuery(b.String())
|
||||
}
|
||||
|
||||
func (t *table) DeleteArgs() string {
|
||||
@@ -248,7 +262,7 @@ func (t *table) GetQuery() string {
|
||||
}
|
||||
b.WriteString(col.SqlName + `=?`)
|
||||
}
|
||||
return b.String()
|
||||
return t.translateQuery(b.String())
|
||||
}
|
||||
|
||||
func (t *table) ScanArgs() string {
|
||||
|
||||
Reference in New Issue
Block a user