Files
grafana/pkg/services/sqlstore/sqlsyntax/dialect.go
T

32 lines
721 B
Go

package sqlsyntax
type Dialect interface {
DBType() string
TableCheckSql(tableName string) (string, []interface{})
}
type Sqlite3 struct {
}
type Mysql struct {
}
func (db *Sqlite3) DBType() string {
return "sqlite3"
}
func (db *Mysql) DBType() string {
return "mysql"
}
func (db *Sqlite3) TableCheckSql(tableName string) (string, []interface{}) {
args := []interface{}{tableName}
return "SELECT name FROM sqlite_master WHERE type='table' and name = ?", args
}
func (db *Mysql) TableCheckSql(tableName string) (string, []interface{}) {
args := []interface{}{"grafana", tableName}
sql := "SELECT `TABLE_NAME` from `INFORMATION_SCHEMA`.`TABLES` WHERE `TABLE_SCHEMA`=? and `TABLE_NAME`=?"
return sql, args
}