You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
20 lines
499 B
20 lines
499 B
6 years ago
|
package sqlparser
|
||
|
|
||
|
import querypb "github.com/xwb1989/sqlparser/dependency/querypb"
|
||
|
|
||
|
// RedactSQLQuery returns a sql string with the params stripped out for display
|
||
|
func RedactSQLQuery(sql string) (string, error) {
|
||
|
bv := map[string]*querypb.BindVariable{}
|
||
|
sqlStripped, comments := SplitMarginComments(sql)
|
||
|
|
||
|
stmt, err := Parse(sqlStripped)
|
||
|
if err != nil {
|
||
|
return "", err
|
||
|
}
|
||
|
|
||
|
prefix := "redacted"
|
||
|
Normalize(stmt, bv, prefix)
|
||
|
|
||
|
return comments.Leading + String(stmt) + comments.Trailing, nil
|
||
|
}
|