package xsql

import "github.com/ydb-platform/ydb-go-sdk/v3/internal/xsql"

Index

Constants

const (
	UnknownQueryMode = iota
	DataQueryMode
	ExplainQueryMode
	ScanQueryMode
	SchemeQueryMode
	ScriptingQueryMode

	DefaultQueryMode = DataQueryMode
)

Variables

var (
	ErrUnsupported = driver.ErrSkip
)

Functions

func GenerateDeclareSection

func GenerateDeclareSection(args []sql.NamedArg) (string, error)

GenerateDeclareSection generates DECLARE section text in YQL query by params

Warning: This is an experimental feature and could change at any time

func WithDataQueryOptions

func WithDataQueryOptions(ctx context.Context, opts ...options.ExecuteDataQueryOption) context.Context

func WithQueryMode

func WithQueryMode(ctx context.Context, m QueryMode) context.Context

WithQueryMode returns a copy of context with given QueryMode

func WithScanQueryOptions

func WithScanQueryOptions(ctx context.Context, opts ...options.ExecuteScanQueryOption) context.Context

func WithTxControl

func WithTxControl(ctx context.Context, txc *table.TransactionControl) context.Context

Types

type Connector

type Connector struct {
	// contains filtered or unexported fields
}

Connector is a producer of database/sql connections

func Open

func Open(d Driver, connection connection, opts ...ConnectorOption) (_ *Connector, err error)

func Unwrap

func Unwrap[T *sql.DB | *sql.Conn](v T) (connector *Connector, err error)

func (*Connector) Close

func (c *Connector) Close() (err error)

func (*Connector) Connect

func (c *Connector) Connect(ctx context.Context) (_ driver.Conn, err error)

func (*Connector) Connection

func (c *Connector) Connection() connection

func (*Connector) Driver

func (c *Connector) Driver() driver.Driver

type ConnectorOption

type ConnectorOption func(c *Connector) error

func Parse

func Parse(dataSourceName string) (opts []config.Option, connectorOpts []ConnectorOption, err error)

func WithDefaultDataQueryOptions

func WithDefaultDataQueryOptions(opts ...options.ExecuteDataQueryOption) ConnectorOption

func WithDefaultQueryMode

func WithDefaultQueryMode(mode QueryMode) ConnectorOption

func WithDefaultScanQueryOptions

func WithDefaultScanQueryOptions(opts ...options.ExecuteScanQueryOption) ConnectorOption

func WithDefaultTxControl

func WithDefaultTxControl(txControl *table.TransactionControl) ConnectorOption

func WithTrace

type Driver

type Driver interface {
	driver.Driver

	Attach(c *Connector)
	Detach(c *Connector)
}

type QueryMode

type QueryMode int

func QueryModeFromString

func QueryModeFromString(s string) QueryMode

func (QueryMode) String

func (t QueryMode) String() string

Source Files

conn.go connector.go context.go convert.go dsn.go errors.go fake_tx.go mode.go rows.go stmt.go tx.go unwrap_go1.18.go valuer.go

Directories

PathSynopsis
internal/xsql/badconn
internal/xsql/isolation
Version
v3.37.6
Published
Sep 6, 2022
Platform
linux/amd64
Imports
24 packages
Last checked
1 minute ago

Tools for package owners.