MCPcopy
hub / github.com/go-sql-driver/mysql / handleParams

Method handleParams

connection.go:106–127  ·  view source on GitHub ↗

Handles parameters set in DSN after the connection is established

()

Source from the content-addressed store, hash-verified

104
105// Handles parameters set in DSN after the connection is established
106func (mc *mysqlConn) handleParams() (err error) {
107 var cmdSet strings.Builder
108
109 for param, val := range mc.cfg.Params {
110 if cmdSet.Len() == 0 {
111 // Heuristic: 29 chars for each other key=value to reduce reallocations
112 cmdSet.Grow(4 + len(param) + 3 + len(val) + 30*(len(mc.cfg.Params)-1))
113 cmdSet.WriteString("SET ")
114 } else {
115 cmdSet.WriteString(", ")
116 }
117 cmdSet.WriteString(param)
118 cmdSet.WriteString(" = ")
119 cmdSet.WriteString(val)
120 }
121
122 if cmdSet.Len() > 0 {
123 err = mc.exec(cmdSet.String())
124 }
125
126 return
127}
128
129// markBadConn replaces errBadConnNoWrite with driver.ErrBadConn.
130// This function is used to return driver.ErrBadConn only when safe to retry.

Callers 1

ConnectMethod · 0.95

Calls 2

execMethod · 0.95
StringMethod · 0.80

Tested by

no test coverage detected