Qx v0.7
Qt Extensions Library
Loading...
Searching...
No Matches
QxSql Namespace Reference

The QxSql namespace contains several utilities that are specific to the SQL module and grouped together for better organization and encapsulation when making use of using directives.

Classes

class  ConcreteInline
 The ConcreteInline class is used to implement each specific inline keyword. More...
 
class  Inline
 The Inline class is the base class from which all SQL inline keywords derive from. More...
 

Concepts

concept  sql_struct_inside
 Specifies that a type is a SQL-tied struct registered with QX_SQL_STRUCT().
 
concept  sql_struct_outside
 Specifies that a type is a SQL-tied struct registered with QX_SQL_STRUCT_OUTSIDE().
 
concept  sql_struct
 Specifies that a type is a SQL-tied struct.
 
concept  sql_convertible
 Specifies that a type is generally convertible to/from SQL.
 
concept  sql_override_convertible
 Specifies that a type has override conversions for changing to/from SQL.
 
concept  sql_keyable
 Specifies that a type has a known method for creating a corresponding key.
 
concept  sql_collective
 Specifies that a type is a non-associative container, the value type of which is convertible to/from SQL.
 
concept  sql_associative
 Specifies that a type is an associative container, the value type of which is convertible, to/from SQL, and for which a key/value type specializaton of keygen() exists.
 
concept  sql_containing
 Specifies that a type is a container, and abides by the other corresponding restrictions for that kind of a container.
 
concept  sql_optional
 Specifies that a type is a specialization of std::optional that manages values of a SQL convertible type.
 

Typedefs

using ALL
 
using ANY
 
using AS
 
using ASC
 
using AVG
 
using COUNT
 
using DEFAULT
 
using DESC
 
using ESCAPE
 
using ILIKE
 
using IN
 
using LIKE
 
using MAX
 
using MIN
 
using NUL
 
using SOME
 
using SUM
 
using UNKNOWN
 

Enumerations

enum  Location {
  BeforeFirstRow = -1 ,
  AfterLastRow = -2
}
 

Functions

Qx::SqlString operator! (const Inline &i)
 
Qx::SqlString operator""_sq (const char16_t *str, size_t size) noexcept
 
Qx::SqlString operator""_sqi (const char16_t *str, size_t size) noexcept
 
Qx::SqlString operator""_sqs (const char16_t *str, size_t size) noexcept
 
Qx::SqlString operator&= (const Inline &a, const Inline &b)
 
Qx::SqlString operator|= (const Inline &a, const Inline &b)
 
Qx::SqlString sq (const QString &s) noexcept
 
Qx::SqlString sqi (const QString &s) noexcept
 
Qx::SqlString sqs (const QString &s) noexcept
 

Typedef Documentation

◆ ALL

using QxSql::ALL
Initial value:
)>
The ConcreteInline class is used to implement each specific inline keyword.
Definition qx-sqlinlines.h:69
Constructor
Definition qx-sqlinlines.h:26
@ MultiStringable
Definition qx-sqlinlines.h:31
@ Query
Definition qx-sqlinlines.h:34

The keyword ALL

◆ ANY

◆ AS

using QxSql::AS
Initial value:
)>
@ Default
Definition qx-sqlinlines.h:28
@ SingleString
Definition qx-sqlinlines.h:29

The keyword AS

◆ ASC

using QxSql::ASC
Initial value:

The keyword ASC

◆ AVG

using QxSql::AVG
Initial value:

The keyword AVG

◆ COUNT

◆ DEFAULT

◆ DESC

using QxSql::DESC
Initial value:

The keyword DESC

◆ ESCAPE

◆ ILIKE

◆ IN

using QxSql::IN
Initial value:

The keyword IN

◆ LIKE

◆ MAX

◆ MIN

◆ NUL

using QxSql::NUL
Initial value:

The keyword NUL

◆ SOME

◆ SUM

◆ UNKNOWN

Enumeration Type Documentation

◆ Location

This enum type describes special locations of an SqlResult

Enumerator
BeforeFirstRow 

Before the first record.

AfterLastRow 

After the last record.

Function Documentation

◆ operator!()

Qx::SqlString QxSql::operator! ( const Inline & i)
inline

Returns a string of "NOT i".

◆ operator""_sq()

Qx::SqlString QxSql::operator""_sq ( const char16_t * str,
size_t size )
inlinenoexcept

Creates a regular SQL string.

◆ operator""_sqi()

Qx::SqlString QxSql::operator""_sqi ( const char16_t * str,
size_t size )
inlinenoexcept

Creates an SQL identifier string; that is, the original string is automatically double-quoted.

◆ operator""_sqs()

Qx::SqlString QxSql::operator""_sqs ( const char16_t * str,
size_t size )
inlinenoexcept

Creates an SQL string literal string; that is, the original string is automatically single-quoted.

◆ operator&=()

Qx::SqlString QxSql::operator&= ( const Inline & a,
const Inline & b )
inline

Returns the concatenation of and b.

This is the same as operator+() for normal strings.

◆ operator|=()

Qx::SqlString QxSql::operator|= ( const Inline & a,
const Inline & b )
inline

Returns the concatenation of a and b with a space between.

◆ sq()

Qx::SqlString QxSql::sq ( const QString & s)
inlinenoexcept

Creates an SQL identifier string from s; that is, the original string is automatically double-quoted.

There is generally no need to use this over the QString constructors or literal operators, other than consistency.

◆ sqi()

Qx::SqlString QxSql::sqi ( const QString & s)
inlinenoexcept

Creates an SQL identifier string from s; that is, the original string is automatically double-quoted.

◆ sqs()

Qx::SqlString QxSql::sqs ( const QString & s)
inlinenoexcept

Creates an SQL string literal string from s; that is, the original string is automatically single-quoted.