/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace kendra { namespace Model { /** *

Provides the configuration information to use a SQL database.

See * Also:

AWS * API Reference

*/ class SqlConfiguration { public: AWS_KENDRA_API SqlConfiguration(); AWS_KENDRA_API SqlConfiguration(Aws::Utils::Json::JsonView jsonValue); AWS_KENDRA_API SqlConfiguration& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_KENDRA_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

Determines whether Amazon Kendra encloses SQL identifiers for tables and * column names in double quotes (") when making a database query.

By * default, Amazon Kendra passes SQL identifiers the way that they are entered into * the data source configuration. It does not change the case of identifiers or * enclose them in quotes.

PostgreSQL internally converts uppercase * characters to lower case characters in identifiers unless they are quoted. * Choosing this option encloses identifiers in quotes so that PostgreSQL does not * convert the character's case.

For MySQL databases, you must enable the * ansi_quotes option when you set this field to * DOUBLE_QUOTES.

*/ inline const QueryIdentifiersEnclosingOption& GetQueryIdentifiersEnclosingOption() const{ return m_queryIdentifiersEnclosingOption; } /** *

Determines whether Amazon Kendra encloses SQL identifiers for tables and * column names in double quotes (") when making a database query.

By * default, Amazon Kendra passes SQL identifiers the way that they are entered into * the data source configuration. It does not change the case of identifiers or * enclose them in quotes.

PostgreSQL internally converts uppercase * characters to lower case characters in identifiers unless they are quoted. * Choosing this option encloses identifiers in quotes so that PostgreSQL does not * convert the character's case.

For MySQL databases, you must enable the * ansi_quotes option when you set this field to * DOUBLE_QUOTES.

*/ inline bool QueryIdentifiersEnclosingOptionHasBeenSet() const { return m_queryIdentifiersEnclosingOptionHasBeenSet; } /** *

Determines whether Amazon Kendra encloses SQL identifiers for tables and * column names in double quotes (") when making a database query.

By * default, Amazon Kendra passes SQL identifiers the way that they are entered into * the data source configuration. It does not change the case of identifiers or * enclose them in quotes.

PostgreSQL internally converts uppercase * characters to lower case characters in identifiers unless they are quoted. * Choosing this option encloses identifiers in quotes so that PostgreSQL does not * convert the character's case.

For MySQL databases, you must enable the * ansi_quotes option when you set this field to * DOUBLE_QUOTES.

*/ inline void SetQueryIdentifiersEnclosingOption(const QueryIdentifiersEnclosingOption& value) { m_queryIdentifiersEnclosingOptionHasBeenSet = true; m_queryIdentifiersEnclosingOption = value; } /** *

Determines whether Amazon Kendra encloses SQL identifiers for tables and * column names in double quotes (") when making a database query.

By * default, Amazon Kendra passes SQL identifiers the way that they are entered into * the data source configuration. It does not change the case of identifiers or * enclose them in quotes.

PostgreSQL internally converts uppercase * characters to lower case characters in identifiers unless they are quoted. * Choosing this option encloses identifiers in quotes so that PostgreSQL does not * convert the character's case.

For MySQL databases, you must enable the * ansi_quotes option when you set this field to * DOUBLE_QUOTES.

*/ inline void SetQueryIdentifiersEnclosingOption(QueryIdentifiersEnclosingOption&& value) { m_queryIdentifiersEnclosingOptionHasBeenSet = true; m_queryIdentifiersEnclosingOption = std::move(value); } /** *

Determines whether Amazon Kendra encloses SQL identifiers for tables and * column names in double quotes (") when making a database query.

By * default, Amazon Kendra passes SQL identifiers the way that they are entered into * the data source configuration. It does not change the case of identifiers or * enclose them in quotes.

PostgreSQL internally converts uppercase * characters to lower case characters in identifiers unless they are quoted. * Choosing this option encloses identifiers in quotes so that PostgreSQL does not * convert the character's case.

For MySQL databases, you must enable the * ansi_quotes option when you set this field to * DOUBLE_QUOTES.

*/ inline SqlConfiguration& WithQueryIdentifiersEnclosingOption(const QueryIdentifiersEnclosingOption& value) { SetQueryIdentifiersEnclosingOption(value); return *this;} /** *

Determines whether Amazon Kendra encloses SQL identifiers for tables and * column names in double quotes (") when making a database query.

By * default, Amazon Kendra passes SQL identifiers the way that they are entered into * the data source configuration. It does not change the case of identifiers or * enclose them in quotes.

PostgreSQL internally converts uppercase * characters to lower case characters in identifiers unless they are quoted. * Choosing this option encloses identifiers in quotes so that PostgreSQL does not * convert the character's case.

For MySQL databases, you must enable the * ansi_quotes option when you set this field to * DOUBLE_QUOTES.

*/ inline SqlConfiguration& WithQueryIdentifiersEnclosingOption(QueryIdentifiersEnclosingOption&& value) { SetQueryIdentifiersEnclosingOption(std::move(value)); return *this;} private: QueryIdentifiersEnclosingOption m_queryIdentifiersEnclosingOption; bool m_queryIdentifiersEnclosingOptionHasBeenSet = false; }; } // namespace Model } // namespace kendra } // namespace Aws