Browse Source

兼容高斯

master v1.0.9
loshiqi 3 days ago
parent
commit
d16c3ca83c
5 changed files with 33 additions and 0 deletions
  1. +7
    -0
      chain.go
  2. +9
    -0
      db.go
  3. +4
    -0
      prepare.go
  4. +6
    -0
      transaction.go
  5. +7
    -0
      transaction_chain.go

+ 7
- 0
chain.go View File

@ -231,6 +231,7 @@ func (this *Query) GetTableInfo(table string) (map[string]interface{}, error) {
} }
if DB_PROVIDER == "PgsqlDb" { if DB_PROVIDER == "PgsqlDb" {
sql = sqlx.Rebind(sqlx.DOLLAR, sql) sql = sqlx.Rebind(sqlx.DOLLAR, sql)
sql = strings.Replace(sql, "`", `"`, -1)
} }
stmtSql, err := this.conn.Prepare(sql) stmtSql, err := this.conn.Prepare(sql)
if err != nil { if err != nil {
@ -441,6 +442,7 @@ func (this *Query) BuildSelectSql() (map[string]interface{}, error) {
} }
if DB_PROVIDER == "PgsqlDb" { if DB_PROVIDER == "PgsqlDb" {
sql = sqlx.Rebind(sqlx.DOLLAR, sql) sql = sqlx.Rebind(sqlx.DOLLAR, sql)
sql = strings.Replace(sql, "`", `"`, -1)
} }
return map[string]interface{}{ return map[string]interface{}{
"sql": sql, "sql": sql,
@ -515,6 +517,7 @@ func (this *Query) UpdateStmt() error {
} }
if DB_PROVIDER == "PgsqlDb" { if DB_PROVIDER == "PgsqlDb" {
sql = sqlx.Rebind(sqlx.DOLLAR, sql) sql = sqlx.Rebind(sqlx.DOLLAR, sql)
sql = strings.Replace(sql, "`", `"`, -1)
} }
stmt, err = this.conn.Prepare(sql) stmt, err = this.conn.Prepare(sql)
@ -642,6 +645,7 @@ func (this *Query) UpdateAllStmt() error {
} }
if DB_PROVIDER == "PgsqlDb" { if DB_PROVIDER == "PgsqlDb" {
sql = sqlx.Rebind(sqlx.DOLLAR, sql) sql = sqlx.Rebind(sqlx.DOLLAR, sql)
sql = strings.Replace(sql, "`", `"`, -1)
} }
stmt, err = this.conn.Prepare(sql) stmt, err = this.conn.Prepare(sql)
@ -736,6 +740,7 @@ func (this *Query) CreateAllStmt() error {
} }
if DB_PROVIDER == "PgsqlDb" { if DB_PROVIDER == "PgsqlDb" {
sql = sqlx.Rebind(sqlx.DOLLAR, sql) sql = sqlx.Rebind(sqlx.DOLLAR, sql)
sql = strings.Replace(sql, "`", `"`, -1)
sql = helper.StringJoin(sql, " RETURNING id") sql = helper.StringJoin(sql, " RETURNING id")
} }
stmt, err = this.conn.Prepare(sql) stmt, err = this.conn.Prepare(sql)
@ -800,6 +805,7 @@ func (this *Query) CreateStmt() error {
} }
if DB_PROVIDER == "PgsqlDb" { if DB_PROVIDER == "PgsqlDb" {
sql = sqlx.Rebind(sqlx.DOLLAR, sql) sql = sqlx.Rebind(sqlx.DOLLAR, sql)
sql = strings.Replace(sql, "`", `"`, -1)
} }
stmt, err = this.conn.Prepare(sql) stmt, err = this.conn.Prepare(sql)
@ -851,6 +857,7 @@ func (this *Query) DeleteStmt() error {
} }
if DB_PROVIDER == "PgsqlDb" { if DB_PROVIDER == "PgsqlDb" {
sql = sqlx.Rebind(sqlx.DOLLAR, sql) sql = sqlx.Rebind(sqlx.DOLLAR, sql)
sql = strings.Replace(sql, "`", `"`, -1)
} }
stmt, err = this.conn.Prepare(sql) stmt, err = this.conn.Prepare(sql)


+ 9
- 0
db.go View File

@ -49,6 +49,7 @@ func Insert(dbName, table string, data map[string]string) (int64, error) {
Sql = "insert into " + dbName + " (" + strings.Join(keyList, ",") + ") values (" + strings.Join(keyStr, ",") + ")" Sql = "insert into " + dbName + " (" + strings.Join(keyList, ",") + ") values (" + strings.Join(keyStr, ",") + ")"
if DB_PROVIDER == "PgsqlDb" { if DB_PROVIDER == "PgsqlDb" {
Sql = sqlx.Rebind(sqlx.DOLLAR, Sql) Sql = sqlx.Rebind(sqlx.DOLLAR, Sql)
Sql = strings.Replace(Sql, "`", `"`, -1)
Sql = helper.StringJoin(Sql, " RETURNING id") Sql = helper.StringJoin(Sql, " RETURNING id")
stmt, err = DB.Prepare(Sql) stmt, err = DB.Prepare(Sql)
if err != nil { if err != nil {
@ -130,6 +131,7 @@ func Update(dbName, table string, data map[string]string, where map[string]strin
Sql = "update " + dbName + " set " + strings.Join(keyList, " , ") + " where " + strings.Join(whereStr, " and ") Sql = "update " + dbName + " set " + strings.Join(keyList, " , ") + " where " + strings.Join(whereStr, " and ")
if DB_PROVIDER == "PgsqlDb" { if DB_PROVIDER == "PgsqlDb" {
Sql = sqlx.Rebind(sqlx.DOLLAR, Sql) Sql = sqlx.Rebind(sqlx.DOLLAR, Sql)
Sql = strings.Replace(Sql, "`", `"`, -1)
} }
result, err := DB.Exec(Sql, valueList...) result, err := DB.Exec(Sql, valueList...)
@ -192,6 +194,7 @@ func Delete(dbName, table string, data map[string]string, del_count ...string) (
Sql = "delete from " + dbName + " where " + strings.Join(keyList, " and ") + limitStr Sql = "delete from " + dbName + " where " + strings.Join(keyList, " and ") + limitStr
if DB_PROVIDER == "PgsqlDb" { if DB_PROVIDER == "PgsqlDb" {
Sql = sqlx.Rebind(sqlx.DOLLAR, Sql) Sql = sqlx.Rebind(sqlx.DOLLAR, Sql)
Sql = strings.Replace(Sql, "`", `"`, -1)
} }
result, err := DB.Exec(Sql, valueList...) result, err := DB.Exec(Sql, valueList...)
@ -274,6 +277,7 @@ func GetData(dbName, table string, title string, where map[string]string, limit
Sql = "SELECT " + title + " FROM " + dbName + " where " + strings.Join(keyList, " and ") + " " + limitStr Sql = "SELECT " + title + " FROM " + dbName + " where " + strings.Join(keyList, " and ") + " " + limitStr
if DB_PROVIDER == "PgsqlDb" { if DB_PROVIDER == "PgsqlDb" {
Sql = sqlx.Rebind(sqlx.DOLLAR, Sql) Sql = sqlx.Rebind(sqlx.DOLLAR, Sql)
Sql = strings.Replace(Sql, "`", `"`, -1)
} }
rows, err = DB.Query(Sql, valueList...) rows, err = DB.Query(Sql, valueList...)
@ -464,6 +468,7 @@ func GetRow(dbName, table_name, alias string, titles string, with, join [][]stri
for queryNum < 2 { //如发生错误,继续查询2次,防止数据库连接断开问题 for queryNum < 2 { //如发生错误,继续查询2次,防止数据库连接断开问题
if DB_PROVIDER == "PgsqlDb" { if DB_PROVIDER == "PgsqlDb" {
sql_str = sqlx.Rebind(sqlx.DOLLAR, sql_str) sql_str = sqlx.Rebind(sqlx.DOLLAR, sql_str)
sql_str = strings.Replace(sql_str, "`", `"`, -1)
} }
rows, err = db.Query(sql_str, valueList...) rows, err = db.Query(sql_str, valueList...)
@ -672,6 +677,7 @@ func FetchRows(dbName, table_name, alias string, titles string, with, join [][]s
for queryNum < 2 { //如发生错误,继续查询2次,防止数据库连接断开问题 for queryNum < 2 { //如发生错误,继续查询2次,防止数据库连接断开问题
if DB_PROVIDER == "PgsqlDb" { if DB_PROVIDER == "PgsqlDb" {
sql_str = sqlx.Rebind(sqlx.DOLLAR, sql_str) sql_str = sqlx.Rebind(sqlx.DOLLAR, sql_str)
sql_str = strings.Replace(sql_str, "`", `"`, -1)
} }
rows, err = db.Query(sql_str, valueList...) rows, err = db.Query(sql_str, valueList...)
@ -820,6 +826,7 @@ func GetList(dbName, table string, title string, where map[string]string, limit
Sql = "select " + title + " from " + dbName + " where " + strings.Join(whereStr, " and ") + " " + limitStr Sql = "select " + title + " from " + dbName + " where " + strings.Join(whereStr, " and ") + " " + limitStr
if DB_PROVIDER == "PgsqlDb" { if DB_PROVIDER == "PgsqlDb" {
Sql = sqlx.Rebind(sqlx.DOLLAR, Sql) Sql = sqlx.Rebind(sqlx.DOLLAR, Sql)
Sql = strings.Replace(Sql, "`", `"`, -1)
} }
rows, err = DB.Query(Sql, valueList...) rows, err = DB.Query(Sql, valueList...)
@ -989,6 +996,7 @@ func GetCount(dbName, table string, where map[string]string, args ...string) (to
Sql = "select count(" + title + ") as count from " + dbName + " where " + strings.Join(whereStr, " and ") + " limit 1" Sql = "select count(" + title + ") as count from " + dbName + " where " + strings.Join(whereStr, " and ") + " limit 1"
if DB_PROVIDER == "PgsqlDb" { if DB_PROVIDER == "PgsqlDb" {
Sql = sqlx.Rebind(sqlx.DOLLAR, Sql) Sql = sqlx.Rebind(sqlx.DOLLAR, Sql)
Sql = strings.Replace(Sql, "`", `"`, -1)
} }
rows, err = DB.Query(Sql, valueList...) rows, err = DB.Query(Sql, valueList...)
@ -1051,6 +1059,7 @@ func DoQuery(args ...interface{}) ([]map[string]string, error) {
if len(args) > 1 { if len(args) > 1 {
if DB_PROVIDER == "PgsqlDb" { if DB_PROVIDER == "PgsqlDb" {
queryStr = sqlx.Rebind(sqlx.DOLLAR, queryStr) queryStr = sqlx.Rebind(sqlx.DOLLAR, queryStr)
queryStr = strings.Replace(queryStr, "`", `"`, -1)
} }
rows, err = DB.Query(queryStr, args[1:]...) //strings.Join(args[1:], ",") rows, err = DB.Query(queryStr, args[1:]...) //strings.Join(args[1:], ",")
if err != nil { if err != nil {


+ 4
- 0
prepare.go View File

@ -60,6 +60,7 @@ func StmtForRead(dbName, table string, title string, where []string, limit map[s
Sql = "SELECT " + title + " FROM " + dbName + " where " + strings.Join(where, " and ") + limitStr Sql = "SELECT " + title + " FROM " + dbName + " where " + strings.Join(where, " and ") + limitStr
if DB_PROVIDER == "PgsqlDb" { if DB_PROVIDER == "PgsqlDb" {
Sql = sqlx.Rebind(sqlx.DOLLAR, Sql) Sql = sqlx.Rebind(sqlx.DOLLAR, Sql)
Sql = strings.Replace(Sql, "`", `"`, -1)
} }
stmt, err = DB.Prepare(Sql) stmt, err = DB.Prepare(Sql)
} else { } else {
@ -199,6 +200,7 @@ func StmtForUpdate(dbName, table string, data []string, where []string) (*sql.St
Sql = "update " + dbName + " set " + strings.Join(data, " , ") + " where " + strings.Join(where, " and ") Sql = "update " + dbName + " set " + strings.Join(data, " , ") + " where " + strings.Join(where, " and ")
if DB_PROVIDER == "PgsqlDb" { if DB_PROVIDER == "PgsqlDb" {
Sql = sqlx.Rebind(sqlx.DOLLAR, Sql) Sql = sqlx.Rebind(sqlx.DOLLAR, Sql)
Sql = strings.Replace(Sql, "`", `"`, -1)
} }
stmt, err = DB.Prepare(Sql) stmt, err = DB.Prepare(Sql)
@ -261,6 +263,7 @@ func StmtForInsert(dbName, table string, data []string) (*sql.Stmt, error) {
} }
if DB_PROVIDER == "PgsqlDb" { if DB_PROVIDER == "PgsqlDb" {
sql = sqlx.Rebind(sqlx.DOLLAR, sql) sql = sqlx.Rebind(sqlx.DOLLAR, sql)
sql = strings.Replace(sql, "`", `"`, -1)
} }
//stmt, err = DB.Prepare("insert into " + dbName + " set " + strings.Join(data, " , ")) //stmt, err = DB.Prepare("insert into " + dbName + " set " + strings.Join(data, " , "))
@ -404,6 +407,7 @@ func StmtForQuery(querysql string) (*sql.Stmt, error) {
var err error var err error
if DB_PROVIDER == "PgsqlDb" { if DB_PROVIDER == "PgsqlDb" {
querysql = sqlx.Rebind(sqlx.DOLLAR, querysql) querysql = sqlx.Rebind(sqlx.DOLLAR, querysql)
querysql = strings.Replace(querysql, "`", `"`, -1)
} }
stmt, err = DB.Prepare(querysql) stmt, err = DB.Prepare(querysql)


+ 6
- 0
transaction.go View File

@ -49,6 +49,7 @@ func TxInsert(tx *sql.Tx, dbname, table string, data map[string]string) (int64,
var Sql string var Sql string
Sql = "insert into " + dbName + " (" + strings.Join(keyList, ",") + ") value(" + strings.Join(keyStr, ",") + ")" Sql = "insert into " + dbName + " (" + strings.Join(keyList, ",") + ") value(" + strings.Join(keyStr, ",") + ")"
Sql = sqlx.Rebind(sqlx.DOLLAR, Sql) Sql = sqlx.Rebind(sqlx.DOLLAR, Sql)
Sql = strings.Replace(Sql, "`", `"`, -1)
Sql = helper.StringJoin(Sql, " RETURNING id") Sql = helper.StringJoin(Sql, " RETURNING id")
stmt, err = tx.Prepare(Sql) stmt, err = tx.Prepare(Sql)
if err != nil { if err != nil {
@ -116,6 +117,7 @@ func TxPreInsert(tx *sql.Tx, dbname, table string, data map[string]interface{})
if DB_PROVIDER == "PgsqlDb" { if DB_PROVIDER == "PgsqlDb" {
Sql := helper.StringJoin("insert into ", dbName, " ("+strings.Join(insert_data, " , ")+")", " VALUES ", "("+strings.Join(value_data, " , ")+")", " RETURNING id") Sql := helper.StringJoin("insert into ", dbName, " ("+strings.Join(insert_data, " , ")+")", " VALUES ", "("+strings.Join(value_data, " , ")+")", " RETURNING id")
Sql = sqlx.Rebind(sqlx.DOLLAR, Sql) Sql = sqlx.Rebind(sqlx.DOLLAR, Sql)
Sql = strings.Replace(Sql, "`", `"`, -1)
stmt, err = tx.Prepare(Sql) stmt, err = tx.Prepare(Sql)
if err != nil { if err != nil {
return 0, errors.New("创建失败:" + err.Error()) return 0, errors.New("创建失败:" + err.Error())
@ -202,6 +204,7 @@ func TxUpdate(tx *sql.Tx, dbname, table string, data map[string]string, where ma
Sql = "update " + dbName + " set " + strings.Join(keyList, " , ") + " where " + strings.Join(whereStr, " and ") Sql = "update " + dbName + " set " + strings.Join(keyList, " , ") + " where " + strings.Join(whereStr, " and ")
if DB_PROVIDER == "PgsqlDb" { if DB_PROVIDER == "PgsqlDb" {
Sql = sqlx.Rebind(sqlx.DOLLAR, Sql) Sql = sqlx.Rebind(sqlx.DOLLAR, Sql)
Sql = strings.Replace(Sql, "`", `"`, -1)
} }
result, err := tx.Exec(Sql, valueList...) result, err := tx.Exec(Sql, valueList...)
@ -243,6 +246,7 @@ func TxPreUpdate(tx *sql.Tx, dbname, table string, data []string, where []string
sql := "update " + dbName + " set " + strings.Join(data, " , ") + " where " + strings.Join(where, " and ") sql := "update " + dbName + " set " + strings.Join(data, " , ") + " where " + strings.Join(where, " and ")
if DB_PROVIDER == "PgsqlDb" { if DB_PROVIDER == "PgsqlDb" {
sql = sqlx.Rebind(sqlx.DOLLAR, sql) sql = sqlx.Rebind(sqlx.DOLLAR, sql)
sql = strings.Replace(sql, "`", `"`, -1)
} }
stmt, err = tx.Prepare(sql) stmt, err = tx.Prepare(sql)
@ -309,6 +313,7 @@ func TxDelete(tx *sql.Tx, dbname, table string, where map[string]string, del_cou
Sql = "delete from " + dbName + " where " + strings.Join(keyList, " and ") + limitStr Sql = "delete from " + dbName + " where " + strings.Join(keyList, " and ") + limitStr
if DB_PROVIDER == "PgsqlDb" { if DB_PROVIDER == "PgsqlDb" {
Sql = sqlx.Rebind(sqlx.DOLLAR, Sql) Sql = sqlx.Rebind(sqlx.DOLLAR, Sql)
Sql = strings.Replace(Sql, "`", `"`, -1)
} }
result, err := tx.Exec(Sql, valueList...) result, err := tx.Exec(Sql, valueList...)
@ -350,6 +355,7 @@ func TxForRead(tx *sql.Tx, dbName, table string, title string, where []string) (
Sql = "SELECT " + title + " FROM " + dbName + " where " + strings.Join(where, " and ") + " FOR UPDATE" Sql = "SELECT " + title + " FROM " + dbName + " where " + strings.Join(where, " and ") + " FOR UPDATE"
if DB_PROVIDER == "PgsqlDb" { if DB_PROVIDER == "PgsqlDb" {
Sql = sqlx.Rebind(sqlx.DOLLAR, Sql) Sql = sqlx.Rebind(sqlx.DOLLAR, Sql)
Sql = strings.Replace(Sql, "`", `"`, -1)
} }
stmt, err = tx.Prepare(Sql) stmt, err = tx.Prepare(Sql)
} else { } else {


+ 7
- 0
transaction_chain.go View File

@ -356,6 +356,7 @@ func (this *TxQuery) BuildSelectSql() (map[string]interface{}, error) {
} }
if DB_PROVIDER == "PgsqlDb" { if DB_PROVIDER == "PgsqlDb" {
sql = sqlx.Rebind(sqlx.DOLLAR, sql) sql = sqlx.Rebind(sqlx.DOLLAR, sql)
sql = strings.Replace(sql, "`", `"`, -1)
} }
return map[string]interface{}{ return map[string]interface{}{
"sql": sql, "sql": sql,
@ -376,6 +377,7 @@ func (this *TxQuery) GetTableInfo(table string) (map[string]interface{}, error)
sql := "select `" + strings.Join(field, "`,`") + "` from information_schema.COLUMNS where table_name = ? and table_schema = ?" sql := "select `" + strings.Join(field, "`,`") + "` from information_schema.COLUMNS where table_name = ? and table_schema = ?"
if DB_PROVIDER == "PgsqlDb" { if DB_PROVIDER == "PgsqlDb" {
sql = sqlx.Rebind(sqlx.DOLLAR, sql) sql = sqlx.Rebind(sqlx.DOLLAR, sql)
sql = strings.Replace(sql, "`", `"`, -1)
} }
stmtSql, err := this.tx.Prepare(sql) stmtSql, err := this.tx.Prepare(sql)
if err != nil { if err != nil {
@ -484,6 +486,7 @@ func (this *TxQuery) UpdateStmt() error {
} }
if DB_PROVIDER == "PgsqlDb" { if DB_PROVIDER == "PgsqlDb" {
sql = sqlx.Rebind(sqlx.DOLLAR, sql) sql = sqlx.Rebind(sqlx.DOLLAR, sql)
sql = strings.Replace(sql, "`", `"`, -1)
} }
stmt, err = this.tx.Prepare(sql) stmt, err = this.tx.Prepare(sql)
@ -607,6 +610,7 @@ func (this *TxQuery) UpdateAllStmt() error {
} }
if DB_PROVIDER == "PgsqlDb" { if DB_PROVIDER == "PgsqlDb" {
sql = sqlx.Rebind(sqlx.DOLLAR, sql) sql = sqlx.Rebind(sqlx.DOLLAR, sql)
sql = strings.Replace(sql, "`", `"`, -1)
} }
stmt, err = this.tx.Prepare(sql) stmt, err = this.tx.Prepare(sql)
@ -668,6 +672,7 @@ func (this *TxQuery) CreateStmt() error {
} }
if DB_PROVIDER == "PgsqlDb" { if DB_PROVIDER == "PgsqlDb" {
sql = sqlx.Rebind(sqlx.DOLLAR, sql) sql = sqlx.Rebind(sqlx.DOLLAR, sql)
sql = strings.Replace(sql, "`", `"`, -1)
} }
stmt, err = this.tx.Prepare(sql) stmt, err = this.tx.Prepare(sql)
@ -762,6 +767,7 @@ func (this *TxQuery) CreateAllStmt() error {
} }
if DB_PROVIDER == "PgsqlDb" { if DB_PROVIDER == "PgsqlDb" {
sql = sqlx.Rebind(sqlx.DOLLAR, sql) sql = sqlx.Rebind(sqlx.DOLLAR, sql)
sql = strings.Replace(sql, "`", `"`, -1)
sql = helper.StringJoin(sql, " RETURNING id") sql = helper.StringJoin(sql, " RETURNING id")
} }
stmt, err = this.tx.Prepare(sql) stmt, err = this.tx.Prepare(sql)
@ -811,6 +817,7 @@ func (this *TxQuery) DeleteStmt() error {
} }
if DB_PROVIDER == "PgsqlDb" { if DB_PROVIDER == "PgsqlDb" {
sql = sqlx.Rebind(sqlx.DOLLAR, sql) sql = sqlx.Rebind(sqlx.DOLLAR, sql)
sql = strings.Replace(sql, "`", `"`, -1)
} }
stmt, err = this.tx.Prepare(sql) stmt, err = this.tx.Prepare(sql)


Loading…
Cancel
Save