diff --git a/pkg/datasource/sql/conn.go b/pkg/datasource/sql/conn.go index 7a2b0423..f745dcec 100644 --- a/pkg/datasource/sql/conn.go +++ b/pkg/datasource/sql/conn.go @@ -248,6 +248,13 @@ func (c *Conn) GetAutoCommit() bool { return c.autoCommit } +func (c *Conn) GetDbVersion() string { + if c.res == nil { + return "" + } + return c.res.GetDbVersion() +} + // Close invalidates and potentially stops any current // prepared statements and transactions, marking this // connection as no longer in use. diff --git a/pkg/datasource/sql/conn_at.go b/pkg/datasource/sql/conn_at.go index f1d0f5ed..abc31f26 100644 --- a/pkg/datasource/sql/conn_at.go +++ b/pkg/datasource/sql/conn_at.go @@ -63,6 +63,7 @@ func (c *ATConn) QueryContext(ctx context.Context, query string, args []driver.N NamedValues: args, Conn: c.targetConn, DBName: c.dbName, + DbVersion: c.GetDbVersion(), IsSupportsSavepoints: true, IsAutoCommit: c.GetAutoCommit(), } @@ -102,6 +103,7 @@ func (c *ATConn) ExecContext(ctx context.Context, query string, args []driver.Na NamedValues: args, Conn: c.targetConn, DBName: c.dbName, + DbVersion: c.GetDbVersion(), IsSupportsSavepoints: true, IsAutoCommit: c.GetAutoCommit(), } diff --git a/pkg/datasource/sql/types/types.go b/pkg/datasource/sql/types/types.go index 36b44a2e..aa911285 100644 --- a/pkg/datasource/sql/types/types.go +++ b/pkg/datasource/sql/types/types.go @@ -159,6 +159,7 @@ type ExecContext struct { Conn driver.Conn DBName string DBType DBType + DbVersion string // todo set values for these 4 param IsAutoCommit bool IsSupportsSavepoints bool