mirror of
https://github.com/seaweedfs/seaweedfs.git
synced 2024-01-19 02:48:24 +00:00
filer.store.mysql: Escape table columns in SQL query (#4095)
This commit is contained in:
parent
ed5f3f073b
commit
265a56630b
|
@ -21,32 +21,32 @@ func (gen *SqlGenMysql) GetSqlInsert(tableName string) string {
|
||||||
if gen.UpsertQueryTemplate != "" {
|
if gen.UpsertQueryTemplate != "" {
|
||||||
return fmt.Sprintf(gen.UpsertQueryTemplate, tableName)
|
return fmt.Sprintf(gen.UpsertQueryTemplate, tableName)
|
||||||
} else {
|
} else {
|
||||||
return fmt.Sprintf("INSERT INTO `%s` (dirhash,name,directory,meta) VALUES(?,?,?,?)", tableName)
|
return fmt.Sprintf("INSERT INTO `%s` (`dirhash`,`name`,`directory`,`meta`) VALUES(?,?,?,?)", tableName)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (gen *SqlGenMysql) GetSqlUpdate(tableName string) string {
|
func (gen *SqlGenMysql) GetSqlUpdate(tableName string) string {
|
||||||
return fmt.Sprintf("UPDATE `%s` SET meta=? WHERE dirhash=? AND name=? AND directory=?", tableName)
|
return fmt.Sprintf("UPDATE `%s` SET `meta` = ? WHERE `dirhash` = ? AND `name` = ? AND `directory` = ?", tableName)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (gen *SqlGenMysql) GetSqlFind(tableName string) string {
|
func (gen *SqlGenMysql) GetSqlFind(tableName string) string {
|
||||||
return fmt.Sprintf("SELECT meta FROM `%s` WHERE dirhash=? AND name=? AND directory=?", tableName)
|
return fmt.Sprintf("SELECT `meta` FROM `%s` WHERE `dirhash` = ? AND `name = ? AND `directory` = ?", tableName)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (gen *SqlGenMysql) GetSqlDelete(tableName string) string {
|
func (gen *SqlGenMysql) GetSqlDelete(tableName string) string {
|
||||||
return fmt.Sprintf("DELETE FROM `%s` WHERE dirhash=? AND name=? AND directory=?", tableName)
|
return fmt.Sprintf("DELETE FROM `%s` WHERE `dirhash` = ? AND `name` = ? AND `directory` = ?", tableName)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (gen *SqlGenMysql) GetSqlDeleteFolderChildren(tableName string) string {
|
func (gen *SqlGenMysql) GetSqlDeleteFolderChildren(tableName string) string {
|
||||||
return fmt.Sprintf("DELETE FROM `%s` WHERE dirhash=? AND directory=?", tableName)
|
return fmt.Sprintf("DELETE FROM `%s` WHERE `dirhash` = ? AND `directory` = ?", tableName)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (gen *SqlGenMysql) GetSqlListExclusive(tableName string) string {
|
func (gen *SqlGenMysql) GetSqlListExclusive(tableName string) string {
|
||||||
return fmt.Sprintf("SELECT NAME, meta FROM `%s` WHERE dirhash=? AND name>? AND directory=? AND name like ? ORDER BY NAME ASC LIMIT ?", tableName)
|
return fmt.Sprintf("SELECT `name`, `meta` FROM `%s` WHERE `dirhash` = ? AND `name` > ? AND `directory` = ? AND `name` LIKE ? ORDER BY `name` ASC LIMIT ?", tableName)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (gen *SqlGenMysql) GetSqlListInclusive(tableName string) string {
|
func (gen *SqlGenMysql) GetSqlListInclusive(tableName string) string {
|
||||||
return fmt.Sprintf("SELECT NAME, meta FROM `%s` WHERE dirhash=? AND name>=? AND directory=? AND name like ? ORDER BY NAME ASC LIMIT ?", tableName)
|
return fmt.Sprintf("SELECT `name`, `meta` FROM `%s` WHERE `dirhash` = ? AND `name` >= ? AND `directory` = ? AND `name` LIKE ? ORDER BY `name` ASC LIMIT ?", tableName)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (gen *SqlGenMysql) GetSqlCreateTable(tableName string) string {
|
func (gen *SqlGenMysql) GetSqlCreateTable(tableName string) string {
|
||||||
|
|
|
@ -53,7 +53,7 @@ func (store *MysqlStore) initialize(upsertQuery string, enableUpsert bool, user,
|
||||||
}
|
}
|
||||||
store.SqlGenerator = &SqlGenMysql{
|
store.SqlGenerator = &SqlGenMysql{
|
||||||
CreateTableSqlTemplate: "",
|
CreateTableSqlTemplate: "",
|
||||||
DropTableSqlTemplate: "drop table `%s`",
|
DropTableSqlTemplate: "DROP TABLE `%s`",
|
||||||
UpsertQueryTemplate: upsertQuery,
|
UpsertQueryTemplate: upsertQuery,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -58,7 +58,7 @@ func (store *MysqlStore2) initialize(createTable, upsertQuery string, enableUpse
|
||||||
}
|
}
|
||||||
store.SqlGenerator = &mysql.SqlGenMysql{
|
store.SqlGenerator = &mysql.SqlGenMysql{
|
||||||
CreateTableSqlTemplate: createTable,
|
CreateTableSqlTemplate: createTable,
|
||||||
DropTableSqlTemplate: "drop table `%s`",
|
DropTableSqlTemplate: "DROP TABLE `%s`",
|
||||||
UpsertQueryTemplate: upsertQuery,
|
UpsertQueryTemplate: upsertQuery,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue