# Functions
ColsRowsToCSV is a convenient function to convert columns and rows of sql.Rows to CSV format.
ColsToCSV is a convenient function to convert columns of sql.Rows to CSV format.
FormatBytes formats a byte slice query argument for Athena by escaping special characters and surrounding it with single quotes.
FormatString formats a string type query argument for Athena by escaping special characters and surrounding the string with single quotes.
GetDefaultWGConfig to create a default WorkGroupConfiguration.
GetFromEnvVal is to get environmental variable value by keys.
GetTableNamesInQuery is a pessimistic function to return tables involved in query in format of DB.TABLE https://regoio.herokuapp.com/ https://golang.org/pkg/regexp/syntax/.
GetTidySQL is to return a tidy SQL string.
IsQID is to check if a query string is a Query ID the hexadecimal Athena query ID like a44f8e61-4cbb-429a-b7ab-bea2c4a5caed https://aws.amazon.com/premiumsupport/knowledge-center/access-download-athena-query-results/.
NewConfig is to create Config from a string.
NewDefaultConfig is to new a Config with some default values.
NewDefaultObservability is to create an observability object with logger and scope as default(noops object).
NewDefaultWG is to create new default Workgroup.
NewNonOpsRows is to create a new Rows.
NewNoOpsConfig is to create a noop version of driver Config WITHOUT credentials.
NewNoOpsObservability is for testing purpose.
NewObservability is to create an observability object.
NewRows is to create a new Rows.
NewServiceLimitOverride is to create an empty ServiceLimitOverride.
NewWG is to create a new Workgroup.
NewWGConfig to create a WorkGroupConfiguration.
NewWGTags is to create a new WGTags.
NoopsSQLConnector is to create a noops SQLConnector.
PrettyPrintCSV is to print rows in CSV format with default style.
PrettyPrintFancy is to print rows in table format with fancy style.
PrettyPrintMD is to print rows in markdown format with default style.
PrettyPrintSQLColsRows is to print rows beautifully with header.
PrettyPrintSQLRows is to print rows beautifully.
RowsToCSV is to convert rows of sql.Rows to CSV format.
# Constants
DateUniXFormat comes along the same way as TimestampUniXFormat.
DDLQueryTimeout is DDL query timeout 600 minutes(unit second).
DebugLevel logs are typically voluminous, and are usually disabled in production.
DefaultBytesScannedCutoffPerQuery is 1G for every user.
DefaultDBName is the default database name in Athena.
DefaultRegion is the default region in Athena.
DefaultWGName is the default workgroup name in Athena.
DMLQueryTimeout is DML query timeout 30 minutes(unit second).
DriverName is the Name of this DB driver.
DriverVersion is athenadriver's version.
DummyAccessID is used when AWS CLI Config is used, ie AWS_SDK_LOAD_CONFIG is set.
DummyRegion is used when AWS CLI Config is used, ie AWS_SDK_LOAD_CONFIG is set.
DummySecretAccessKey is used when AWS CLI Config is used, ie AWS_SDK_LOAD_CONFIG is set.
ErrorLevel logs are high-priority.
InfoLevel is the default logging priority.
LoggerKey is the key for Logger in context.
The maximum allowed query string length is 262144 bytes, where the strings are encoded in UTF-8.
MetricsKey is the key for Metrics in context.
PCGetDriverVersion is the pseudo command to get the version of athenadriver.
PCGetQID is the pseudo command of getting query execution id of an SQL.
PCGetQIDStatus is the pseudo command of getting status of a query execution id.
PCStopQID is the pseudo command to stop a query execution id.
PoolInterval is the interval between two status checks(unit second).
TimestampUniXFormat is from https://docs.aws.amazon.com/athena/latest/ug/data-types.html.
Version of the library.
WarnLevel logs are more important than Info, but don't need individual human review.
ZeroDateTimeString is the invalid or zero result for a time.Time.
# Variables
AthenaColumnTypes is a fixed array of Athena Column Types.
Various errors the driver might return.
Various errors the driver might return.
Various errors the driver might return.
Various errors the driver might return.
Various errors the driver might return.
Various errors the driver might return.
Various errors the driver might return.
Various errors the driver might return.
Various errors the driver might return.
Various errors the driver might return.
Various errors the driver might return.
Various errors the driver might return.
Various errors the driver might return.
Various errors the driver might return.
Various errors the driver might return.
Various errors the driver might return.
OutputFormats are all the formats we can choose to print query result.
OutputStyles are all the styles we can choose to print query result.
# Structs
AthenaResult is the result of an Athena query execution.
AthenaTime represents a time.Time value that can be null.
Config is for AWS Athena Driver Config.
Connection is a connection to AWS Athena.
DriverTracer is supported in athenadriver builtin.
QIDMetaData is the meta data for QID.
Rows defines rows in AWS Athena ResultSet.
ServiceLimitOverride allows users to override service limits, hardcoded in constants.go.
SQLConnector is the connector for AWS Athena Driver.
SQLDriver is an implementation of sql/driver interface for AWS Athena.
Statement is to implement Go's database/sql Statement.
WGConfig wraps WorkGroupConfiguration.
WGTags is a wrapper of []*athena.Tag.
Workgroup is a wrapper of Athena Workgroup.
# Interfaces
AthenaCache is for Cached Query.
# Type aliases
TContextKey is a type for key in context.