• Home
  • Tutorials
  • API Documentation
Search Results for

    Show / Hide Table of Contents
    • Oracle.NoSQL.SDK
      • AddReplicaOptions
        • AddReplicaOptions
        • Compartment
        • MatchETag
        • PollDelay
        • ReadUnits
        • Timeout
        • WriteUnits
      • AddReplicaRequest
        • Options
        • RegionId
      • AdminOptions
        • AdminOptions
        • PollDelay
        • Timeout
      • AdminRequest
        • Options
        • Statement
      • AdminResult
        • Output
        • State
        • Statement
        • WaitForCompletionAsync
      • AdminState
        • Complete
        • InProgress
        • value__
      • AdminStatusRequest
        • AdminResult
        • Options
      • ArrayValue
        • Add
        • ArrayValue
        • Clear
        • Contains
        • CopyTo
        • Count
        • DbType
        • IndexOf
        • Insert
        • Item
        • Remove
        • RemoveAt
        • SerializeAsJson
      • AuthorizationException
        • AuthorizationException
        • IsRetryable
      • AuthorizationStringProvider
        • ApplyAuthorizationAsync
        • AuthorizationStringProvider
        • ConfigureAuthorization
        • GetAuthorizationStringAsync
      • BadProtocolException
        • BadProtocolException
      • BatchOperationNumberLimitException
        • BatchOperationNumberLimitException
      • BinaryValue
        • AsByteArray
        • BinaryValue
        • DbType
        • SerializeAsJson
      • BooleanValue
        • AsBoolean
        • DbType
        • False
        • SerializeAsJson
        • True
      • CapacityMode
        • OnDemand
        • Provisioned
        • value__
      • ConnectionOptions
        • ConnectionOptions
        • DisableHostnameVerification
        • TrustedRootCertificateFile
        • TrustedRootCertificates
      • Consistency
        • Absolute
        • Eventual
        • value__
      • ConsumedCapacity
        • RateLimitDelay
        • ReadKB
        • ReadRateLimitDelay
        • ReadUnits
        • ToString
        • WriteKB
        • WriteRateLimitDelay
        • WriteUnits
      • ControlOperationThrottlingException
        • ControlOperationThrottlingException
      • DbType
        • Array
        • Binary
        • Boolean
        • Double
        • Empty
        • Integer
        • JsonNull
        • Long
        • Map
        • Null
        • Number
        • String
        • Timestamp
        • value__
      • DeleteIfVersionOperation
        • MatchVersion
      • DeleteIfVersionRequest<TRow>
        • MatchVersion
      • DeleteManyOptions
        • AbortIfUnsuccessful
        • DeleteManyOptions
      • DeleteOperation
        • AbortIfUnsuccessful
        • Options
        • PrimaryKey
        • TableName
      • DeleteOptions
        • Compartment
        • DeleteOptions
        • Durability
        • MatchVersion
        • Namespace
        • ReturnExisting
        • Timeout
      • DeleteRangeContinuationKey
      • DeleteRangeOptions
        • Compartment
        • ContinuationKey
        • DeleteRangeOptions
        • Durability
        • FieldRange
        • MaxWriteKB
        • Namespace
        • Timeout
      • DeleteRangeRequest
        • FieldRange
        • Options
        • PartialPrimaryKey
      • DeleteRangeResult
        • ConsumedCapacity
        • ContinuationKey
        • DeletedCount
      • DeleteRequest<TRow>
        • Options
        • PrimaryKey
      • DeleteResult<TRow>
        • ConsumedCapacity
        • ExistingModificationTime
        • ExistingRow
        • ExistingVersion
        • Success
      • DeploymentLimitException
        • DeploymentLimitException
      • DoubleValue
        • AsDouble
        • DbType
        • DoubleValue
        • SerializeAsJson
        • ToDecimal
        • ToInt32
        • ToInt64
      • DropReplicaOptions
        • Compartment
        • DropReplicaOptions
        • MatchETag
        • PollDelay
        • Timeout
      • DropReplicaRequest
        • Options
        • RegionId
      • Durability
        • CommitNoSync
        • CommitSync
        • CommitWriteNoSync
        • Durability
        • Equality
        • Equals
        • GetHashCode
        • Inequality
        • MasterSync
        • ReplicaAck
        • ReplicaSync
      • ETagMismatchException
        • ETagMismatchException
      • EvolutionLimitException
        • EvolutionLimitException
      • FieldRange
        • EndsBefore
        • EndsWith
        • EndValue
        • FieldName
        • FieldRange
        • IsEndInclusive
        • IsStartInclusive
        • StartsAfter
        • StartsWith
        • StartValue
      • FieldValue
        • AsArrayValue
        • AsBoolean
        • AsByteArray
        • AsDateTime
        • AsDecimal
        • AsDouble
        • AsInt32
        • AsInt64
        • AsMapValue
        • AsRecordValue
        • AsString
        • CompareTo
        • Count
        • DbType
        • DeserializeFromJson
        • Equality
        • Equals
        • Explicit
        • FieldValue
        • FromJsonString
        • GetHashCode
        • GreaterThan
        • GreaterThanOrEqual
        • Implicit
        • Inequality
        • Item
        • JsonNull
        • LessThan
        • LessThanOrEqual
        • Null
        • SerializeAsJson
        • ToBoolean
        • ToByteArray
        • ToDateTime
        • ToDecimal
        • ToDouble
        • ToInt32
        • ToInt64
        • ToJsonString
        • ToString
      • GetAdminStatusOptions
        • GetAdminStatusOptions
        • Timeout
      • GetIndexesRequest
        • Options
      • GetIndexOptions
        • Compartment
        • GetIndexOptions
        • Namespace
        • Timeout
      • GetIndexRequest
        • IndexName
      • GetOptions
        • Compartment
        • Consistency
        • GetOptions
        • Namespace
        • Timeout
      • GetReplicaStatsOptions
        • Compartment
        • GetReplicaStatsOptions
        • Limit
        • StartTime
        • Timeout
      • GetReplicaStatsRequest
        • Options
        • RegionId
      • GetRequest<TRow>
        • Options
        • PrimaryKey
      • GetResult<TRow>
        • ConsumedCapacity
        • ExpirationTime
        • ModificationTime
        • Row
        • Version
      • GetTableOptions
        • Compartment
        • GetTableOptions
        • Namespace
        • Timeout
      • GetTableRequest
        • Options
      • GetTableUsageOptions
        • Compartment
        • EndTime
        • FromIndex
        • GetTableUsageOptions
        • Limit
        • StartTime
        • Timeout
      • GetTableUsageRequest
        • Options
      • IAMAuthorizationProvider
        • ApplyAuthorizationAsync
        • CacheDuration
        • ConfigFile
        • ConfigureAuthorization
        • CreateWithInstancePrincipal
        • CreateWithInstancePrincipalForDelegation
        • CreateWithInstancePrincipalForDelegationFromFile
        • CreateWithOKEWorkloadIdentity
        • CreateWithOKEWorkloadIdentityAndTokenFile
        • CreateWithResourcePrincipal
        • CreateWithSessionToken
        • Credentials
        • CredentialsProvider
        • DelegationTokenFile
        • DelegationTokenProvider
        • Dispose
        • FederationEndpoint
        • IAMAuthorizationProvider
        • ProfileName
        • RefreshAhead
        • RequestTimeout
        • ServiceAccountTokenFile
        • UseInstancePrincipal
        • UseOKEWorkloadIdentity
        • UseResourcePrincipal
        • UseSessionToken
      • IAMCredentials
        • Fingerprint
        • IAMCredentials
        • Passphrase
        • PrivateKey
        • PrivateKeyFile
        • PrivateKeyPEM
        • TenantId
        • UserId
      • IAuthorizationProvider
        • ApplyAuthorizationAsync
        • ConfigureAuthorization
      • IndexExistsException
        • IndexExistsException
      • IndexLimitException
        • IndexLimitException
      • IndexNotFoundException
        • IndexNotFoundException
      • IndexResult
        • Fields
        • FieldTypes
        • IndexName
      • InstanceMetadataClient
        • Dispose
        • GetRegionAsync
        • InstanceMetadataClient
      • IntegerValue
        • AsInt32
        • DbType
        • IntegerValue
        • SerializeAsJson
        • ToDateTime
        • ToDecimal
        • ToDouble
        • ToInt64
      • InvalidAuthorizationException
        • InvalidAuthorizationException
      • IRateLimiter
        • ConsumeUnitsAsync
        • HandleThrottlingException
        • SetLimit
      • IRetryHandler
        • GetRetryDelay
        • ShouldRetry
      • IWriteOperation
        • AbortIfUnsuccessful
        • TableName
      • JsonInputOptions
        • AllowComments
        • AllowTrailingCommas
        • JsonInputOptions
        • PreferDecimal
      • JsonNullValue
        • DbType
        • SerializeAsJson
      • JsonOutputOptions
        • DateTimeAsMillis
        • DateTimeFormatString
        • DefaultDateTimeFormatString
        • Indented
        • JsonOutputOptions
      • JsonParseException
        • JsonParseException
      • KeySizeLimitException
        • KeySizeLimitException
      • KVStoreAuthorizationProvider
        • AutoRenew
        • ConfigureAuthorization
        • Credentials
        • CredentialsFile
        • CredentialsProvider
        • Dispose
        • GetAuthorizationStringAsync
        • KVStoreAuthorizationProvider
        • RequestTimeout
      • KVStoreCredentials
        • KVStoreCredentials
        • Password
        • UserName
      • ListTablesOptions
        • Compartment
        • FromIndex
        • Limit
        • ListTablesOptions
        • Namespace
        • Timeout
      • ListTablesRequest
        • Options
      • ListTablesResult
        • NextIndex
        • TableNames
      • LongValue
        • AsInt64
        • DbType
        • LongValue
        • SerializeAsJson
        • ToDateTime
        • ToDecimal
        • ToDouble
        • ToInt32
      • MapValue
        • Add
        • Clear
        • ContainsKey
        • Count
        • DbType
        • Item
        • Keys
        • MapValue
        • Remove
        • SerializeAsJson
        • TryGetValue
        • Values
      • NoSQLClient
        • AddReplicaAsync
        • AddReplicaWithCompletionAsync
        • DeleteAsync
        • DeleteIfVersionAsync
        • DeleteManyAsync
        • DeleteRangeAsync
        • Dispose
        • DropReplicaAsync
        • DropReplicaWithCompletionAsync
        • ExecuteAdminAsync
        • ExecuteAdminWithCompletionAsync
        • ExecuteTableDDLAsync
        • ExecuteTableDDLWithCompletionAsync
        • GetAdminStatusAsync
        • GetAsync
        • GetDeleteRangeAsyncEnumerable
        • GetIndexAsync
        • GetIndexesAsync
        • GetListTablesAsyncEnumerable
        • GetQueryAsyncEnumerable
        • GetReplicaStatsAsync
        • GetTableAsync
        • GetTableUsageAsync
        • GetTableUsageAsyncEnumerable
        • ListNamespacesAsync
        • ListRolesAsync
        • ListTablesAsync
        • ListUsersAsync
        • NoSQLClient
        • PrepareAsync
        • PutAsync
        • PutIfAbsentAsync
        • PutIfPresentAsync
        • PutIfVersionAsync
        • PutManyAsync
        • QueryAsync
        • ServiceType
        • SetTableLimitsAsync
        • SetTableLimitsWithCompletionAsync
        • SetTableTagsAsync
        • SetTableTagsWithCompletionAsync
        • WaitForLocalReplicaInitAsync
        • WaitForTableStateAsync
        • WriteManyAsync
      • NoSQLConfig
        • AdminPollDelay
        • AdminPollTimeout
        • AdminTimeout
        • AuthorizationProvider
        • Compartment
        • ConnectionOptions
        • Consistency
        • Durability
        • Endpoint
        • FromJsonFile
        • FromJsonString
        • MaxMemoryMB
        • Namespace
        • NoRetries
        • NoSQLConfig
        • RateLimiterCreator
        • RateLimiterPercent
        • RateLimitingEnabled
        • Region
        • RetryHandler
        • ServiceType
        • TableDDLTimeout
        • TablePollDelay
        • TablePollTimeout
        • Timeout
      • NoSQLException
        • IsRetryable
        • Message
        • NoSQLException
        • Request
      • NoSQLRateLimiter
        • ConsumeUnitsAsync
        • HandleThrottlingException
        • NoSQLRateLimiter
        • SetLimit
      • NoSQLRetryHandler
        • BaseDelay
        • ControlOperationBaseDelay
        • GetRetryDelay
        • MaxRetryAttempts
        • NoSQLRetryHandler
        • ShouldRetry
      • NullValue
        • DbType
        • SerializeAsJson
      • NumberValue
        • AsDecimal
        • DbType
        • NumberValue
        • SerializeAsJson
        • ToDouble
        • ToInt32
        • ToInt64
      • PreparedStatement
        • ClearVariables
        • ConsumedCapacity
        • CopyStatement
        • QueryPlan
        • ResultSchema
        • SetVariable
        • SQLText
        • Variables
      • PrepareOptions
        • Compartment
        • GetQueryPlan
        • GetResultSchema
        • Namespace
        • PrepareOptions
        • Timeout
      • PrepareRequest
        • Options
        • Statement
      • PutIfAbsentOperation
      • PutIfAbsentRequest<TRow>
      • PutIfPresentOperation
      • PutIfPresentRequest<TRow>
      • PutIfVersionOperation
        • MatchVersion
      • PutIfVersionRequest<TRow>
        • MatchVersion
      • PutManyOptions
        • AbortIfUnsuccessful
        • PutManyOptions
      • PutOperation
        • AbortIfUnsuccessful
        • Options
        • Row
        • TableName
      • PutOptions
        • Compartment
        • Durability
        • ExactMatch
        • IdentityCacheSize
        • IfAbsent
        • IfPresent
        • MatchVersion
        • Namespace
        • PutOptions
        • ReturnExisting
        • Timeout
        • TTL
        • UpdateTTLToDefault
      • PutRequest<TRow>
        • Options
        • Row
      • PutResult<TRow>
        • ConsumedCapacity
        • ExistingModificationTime
        • ExistingRow
        • ExistingVersion
        • GeneratedValue
        • Success
        • Version
      • QueryContinuationKey
      • QueryOptions
        • Compartment
        • Consistency
        • ContinuationKey
        • Durability
        • Limit
        • MaxMemoryMB
        • MaxReadKB
        • MaxWriteKB
        • Namespace
        • QueryOptions
        • Timeout
      • QueryRequest
      • QueryRequest<TRow>
        • IsPrepared
        • Options
        • PreparedStatement
        • Statement
      • QueryRequestBase
      • QueryResult<TRow>
        • ConsumedCapacity
        • ContinuationKey
        • Rows
      • ReadRequest
      • ReadThrottlingException
        • ReadThrottlingException
      • RecordValue
        • Equals
        • GetKeyAtIndex
        • GetValueAtIndex
        • Insert
        • Item
        • RecordValue
        • RemoveAt
      • Region
        • AF_JOHANNESBURG_1
        • AP_CHIYODA_1
        • AP_CHUNCHEON_1
        • AP_DCC_CANBERRA_1
        • AP_DCC_GAZIPUR_1
        • AP_DCC_OSAKA_1
        • AP_DCC_TOKYO_1
        • AP_HOBSONVILLE_1
        • AP_HYDERABAD_1
        • AP_IBARAKI_1
        • AP_MELBOURNE_1
        • AP_MUMBAI_1
        • AP_OSAKA_1
        • AP_SEOUL_1
        • AP_SINGAPORE_1
        • AP_SINGAPORE_2
        • AP_SYDNEY_1
        • AP_TOKYO_1
        • CA_MONTREAL_1
        • CA_TORONTO_1
        • Endpoint
        • EU_AMSTERDAM_1
        • EU_DCC_DUBLIN_1
        • EU_DCC_DUBLIN_2
        • EU_DCC_MILAN_1
        • EU_DCC_MILAN_2
        • EU_DCC_RATING_1
        • EU_DCC_RATING_2
        • EU_DCC_ROME_1
        • EU_DCC_ZURICH_1
        • EU_FRANKFURT_1
        • EU_FRANKFURT_2
        • EU_JOVANOVAC_1
        • EU_MADRID_1
        • EU_MADRID_2
        • EU_MARSEILLE_1
        • EU_MILAN_1
        • EU_PARIS_1
        • EU_STOCKHOLM_1
        • EU_ZURICH_1
        • FromRegionCodeOrId
        • FromRegionId
        • IL_JERUSALEM_1
        • ME_ABUDHABI_1
        • ME_ABUDHABI_3
        • ME_DCC_DOHA_1
        • ME_DCC_MUSCAT_1
        • ME_DUBAI_1
        • ME_JEDDAH_1
        • MX_MONTERREY_1
        • MX_QUERETARO_1
        • RegionCode
        • RegionId
        • SA_BOGOTA_1
        • SA_SANTIAGO_1
        • SA_SAOPAULO_1
        • SA_VALPARAISO_1
        • SA_VINHEDO_1
        • SecondLevelDomain
        • ToString
        • UK_CARDIFF_1
        • UK_GOV_CARDIFF_1
        • UK_GOV_LONDON_1
        • UK_LONDON_1
        • US_ASHBURN_1
        • US_CHICAGO_1
        • US_DCC_PHOENIX_1
        • US_DCC_PHOENIX_2
        • US_DCC_PHOENIX_4
        • US_DCC_SWJORDAN_1
        • US_DCC_SWJORDAN_2
        • US_GOV_ASHBURN_1
        • US_GOV_CHICAGO_1
        • US_GOV_PHOENIX_1
        • US_LANGLEY_1
        • US_LUKE_1
        • US_PHOENIX_1
        • US_SALTLAKE_2
        • US_SANJOSE_1
        • US_TACOMA_1
        • US_WESTJORDAN_1
        • Values
      • ReplicaAckPolicy
        • All
        • None
        • SimpleMajority
        • value__
      • ReplicaInfo
        • CapacityMode
        • Region
        • ReplicaName
        • ReplicaOCID
        • TableState
        • WriteUnits
      • ReplicaStatsRecord
        • CollectionTime
        • ReplicaLag
        • ToString
        • UnknownLag
      • ReplicaStatsResult
        • NextStartTime
        • StatsRecords
        • TableName
      • Request
        • Exceptions
        • LastException
        • PriorException
        • RetryCount
      • RequestSizeLimitException
        • RequestSizeLimitException
      • RequestWithTable
        • TableName
      • ResourceExistsException
        • ResourceExistsException
      • ResourceNotFoundException
        • ResourceNotFoundException
      • RetryableException
        • IsRetryable
        • RetryableException
      • RowSizeLimitException
        • RowSizeLimitException
      • RowVersion
        • Bytes
        • Encoded
        • RowVersion
        • ToString
      • SecurityInfoNotReadyException
        • SecurityInfoNotReadyException
      • ServerException
        • ServerException
      • ServiceResponseException
        • IsRetryable
        • ResponseMessage
        • ServiceResponseException
        • StatusCode
        • StatusMessage
      • ServiceType
        • Cloud
        • CloudSim
        • KVStore
        • Unspecified
        • value__
      • ServiceUnavailableException
        • ServiceUnavailableException
      • StringValue
        • AsString
        • DbType
        • SerializeAsJson
        • StringValue
        • ToBoolean
        • ToByteArray
        • ToDateTime
        • ToDecimal
        • ToDouble
        • ToInt32
        • ToInt64
      • SyncPolicy
        • NoSync
        • Sync
        • value__
        • WriteNoSync
      • TableBusyException
        • TableBusyException
      • TableCompletionOptions
        • PollDelay
        • TableCompletionOptions
      • TableDDLOptions
        • Compartment
        • DefinedTags
        • FreeFormTags
        • MatchETag
        • Namespace
        • PollDelay
        • TableDDLOptions
        • TableLimits
        • Timeout
      • TableDDLRequest
        • Options
        • Statement
      • TableExistsException
        • TableExistsException
      • TableLimitException
        • TableLimitException
      • TableLimits
        • CapacityMode
        • ReadUnits
        • StorageGB
        • TableLimits
        • WriteUnits
      • TableLimitsRequest
        • TableLimits
      • TableNotFoundException
        • TableNotFoundException
      • TableNotReadyException
        • TableNotReadyException
      • TableOperationRequest
      • TableResult
        • CompartmentId
        • DefinedTags
        • ETag
        • FreeFormTags
        • IsLocalReplicaInitialized
        • IsReplicated
        • IsSchemaFrozen
        • Namespace
        • Replicas
        • TableDDL
        • TableLimits
        • TableName
        • TableOCID
        • TableSchema
        • TableState
        • WaitForCompletionAsync
      • TableSizeLimitException
        • TableSizeLimitException
      • TableState
        • Active
        • Creating
        • Dropped
        • Dropping
        • Updating
        • value__
      • TableTagsRequest
        • DefinedTags
        • FreeFormTags
      • TableUsageRecord
        • Duration
        • MaxShardUsagePercent
        • ReadThrottleCount
        • ReadUnits
        • StartTime
        • StorageGB
        • StorageThrottleCount
        • TableUsageRecord
        • ToString
        • WriteThrottleCount
        • WriteUnits
      • TableUsageResult
        • NextIndex
        • TableName
        • UsageRecords
      • TimestampValue
        • AsDateTime
        • DbType
        • SerializeAsJson
        • TimestampValue
        • ToInt64
      • TimeToLive
        • DoNotExpire
        • FromExpirationTime
        • OfDays
        • OfHours
        • TimeUnit
        • ToExpirationTime
        • ToString
        • Value
      • TTLTimeUnit
        • Days
        • Hours
        • value__
      • UnauthorizedException
        • UnauthorizedException
      • UnsupportedProtocolException
        • UnsupportedProtocolException
      • UnsupportedQueryVersionException
        • UnsupportedQueryVersionException
      • UserInfo
        • Id
        • Name
      • WriteManyOptions
        • AbortIfUnsuccessful
        • Compartment
        • Durability
        • Namespace
        • Timeout
        • WriteManyOptions
      • WriteManyRequest
      • WriteManyRequest<TRow>
        • DeleteManyOptions
        • Operations
        • PutManyOptions
        • TableName
        • WriteManyOptions
      • WriteManyResult<TRow>
        • ConsumedCapacity
        • FailedOperationIndex
        • FailedOperationResult
        • Results
        • Success
      • WriteOperationCollection
        • AddDelete
        • AddDeleteIfVersion
        • AddPut
        • AddPutIfAbsent
        • AddPutIfPresent
        • AddPutIfVersion
        • Clear
        • Count
        • WriteOperationCollection
      • WriteOperationResult<TRow>
        • ExistingModificationTime
        • ExistingRow
        • ExistingVersion
        • GeneratedValue
        • Success
        • Version
      • WriteRequest
      • WriteThrottlingException
        • WriteThrottlingException

    Class NoSQLClient

    NoSQLClient class provides access to Oracle NoSQL Database and can be used both with Oracle NoSQL Database Cloud Service and with On-Premise Oracle NoSQL Database. Methods of this class are used to create and manage tables and indexes, and to read and write data. When used on-premise, they also support admin operations such as managing namespaces, users and roles. All operations are asynchronous and may be used with async/await.
    Inheritance
    Object
    NoSQLClient
    Implements
    IDisposable
    Namespace: Oracle.NoSQL.SDK
    Assembly: Oracle.NoSQL.SDK.dll
    Syntax
    public class NoSQLClient : Object
    Remarks

    To instantiate NoSQLClient, provide configuration in the form of NoSQLConfig object containing connection information, credentials and default values for operation options. Alternatively, you may provide a path to a JSON file containing this information. See NoSQLConfig for more details.

    The same interface is available to both users of Oracle NoSQL Database Cloud Service and on-premise Oracle NoSQL Database, however some methods and/or options are specific to each environment. For each such method or option, the documentation specifies which environment it is applicable to.

    NoSQLClient has memory and network resources associated with it. It implements IDisposable interface and must be disposed when application is done using it via calling Dispose() or via using statement. In most cases, an application only needs to create NoSQLClient instance once and dispose of it in the end. To minimize network activity as well as resource allocation and deallocation overheads, repeated creation and disposal of NoSQLClient instances is not recommended.

    NoSQLClient permits concurrent operations, so a single instance is sufficient to access tables in a multi-threaded application. The creation of multiple instances incurs additional resource overheads without providing any performance benefit.

    With the exception of Dispose() the operations on NoSQLClient follow a similar pattern. They accept a number of required parameters and and an optional options object providing optional parameters, with different options classes for different operations (e.g. TableDDLOptions, PutOptions, etc.). Note that you may reuse the same options object when performing the same operation multiple times.

    If an option or any of its values are not specified or set to null, corresponding values set in NoSQLConfig will be used as described in documentation for each option. For values not specified in NoSQLConfig appropriate defaults will be used.

    All operations are asynchronous and also accept optional CancellationToken parameter to cancel asynchronous operation.

    Each operation returns a Task<TResult> of corresponding operation result, with different result classes for different operations (e.g. TableResult, PutResult<TRow> etc.) Result objects returned are not thread safe and should be used by only one thread at a time unless synchronized externally.

    Operation failures throw exceptions. NoSQLClient may throw some standard exceptions such as ArgumentException, InvalidOperationException, TimeoutException, etc). All other exceptions are instances of NoSQLException which serves as a base class for NoSQL Database exceptions.

    Some exceptions allow an operation to be retried, with the expectation that it may succeed on retry, because they are caused by conditions that are temporary in nature. Examples of retryable exceptions are those which indicate resource consumption violation such as ReadThrottlingException, WriteThrottlingException and others. In addition, any network or IO errors are always retryable as the usually indicate temporary conditions. Other exceptions such as ArgumentException, TableNotFoundException, etc. are not retryable as they indicate a syntactic or semantic errors that require additional actions to be resolved. Exceptions that may be retried are those among the subclasses of NoSQLException and are indicated in the documentation for corresponding exception classes. For these subclasses the property IsRetryable is true.

    If a retryable exception is thrown, the driver will automatically retry the operation. The retry semantics is determined by retry handler provided as RetryHandler in the initial configuration. If not set, a default instance of NoSQLRetryHandler will be used. See IRetryHandler and NoSQLRetryHandler for details on retry behavior. This means that a result returned by an operation may be a result obtained after one or more retries (in case the initial attempt and previous retries have failed with retryable exceptions).

    When operation is retried by the driver, the operation timeout is considered cumulative over all retries (and not just for a single retry). The driver will keep retrying as long as retries are allowed by the retry handler and are within the specified timeout. TimeoutException is thrown once the timeout expires. TimeoutException may also be thrown even on a non-retryable operation (a single request) if the operation times out for other reasons such as network connectivity. If you are getting TimeoutException often and the service is operating properly, you may wish to adjust corresponding timeout values passed in the operation options or specified in NoSQLConfig.

    TimeoutException itself is not retryable automatically by the driver, although an application may choose to retry the operation. Note however that in general, TimeoutException only indicates inability for the driver to receive operation result within the specified timeout and thus it does not determine whether the operation itself was already started/completed by the service. Thus for non-idempotent operations, additional actions may need to be taken before retrying in this situation.

    Likewise, you may cancel operations on NoSQLClient instance for which you provided CancellationToken argument. In this case the operation may throw OperationCanceledException (or its subclass TaskCanceledException). As with TimeoutException, catching this exception does not provide any guarantees as to whether the operation was performed by the service.

    Instances of NoSQLClient are thread-safe and expected to be shared among threads.

    For cloud service only: Each of the options classes contains Compartment property which specifies the compartment of given table (or compartment used to perform given operation). A default value to use for all operations may also be set as Compartment. If neither is set, the root compartment of the tenancy is assumed. The compartment is a string that may be either the id (OCID) of the compartment or a compartment name. Both are acceptable. If a name is used it can be either the name of a top-level compartment, or for nested compartments, it should be a compartment path to the nested compartment that does not include the root compartment name (tenant), e.g. compartmentA.compartmentB.compartmentC. Alternatively, instead of using Compartment property, you may prefix the table name with its compartment name (for top-level compartments) or compartment path (for nested compartments), e.g. compartmentA.compartmentB.compartmentC:myTable. Note that the table name cannot be prefixed with compartment id. Prefixing the table with compartment name/path takes precedence over other methods of specifying the compartment.

    Examples
    This example instantiates NoSQLClient and uses it to create table, put record into that table and then retrieve it.
    using Oracle.NoSQL.SDK;
    
    public class Example
    {
        public static async Task Main()
        {
            // This will ensure client is disposed on exit from Main()
            using var client = new NoSQLClient("config.json");
    
            // We can also use ExecuteTableDDLWithCompletionAsync()
            var tableResult = await client.ExecuteTableDDLAsync(
                "CREATE TABLE foo(id INTEGER, name STRING, PRIMARY KEY(id))",
                new TableLimits(100, 100, 50));
    
            await tableResult.WaitForCompletionAsync();
            Console.WriteLine("Table name: {0}, table state: {1}",
                tableResult.TableName, tableResult.TableState);
    
            var putResult = await client.PutAsync("foo", new MapValue
            {
                ["id"] = 1,
                ["name"] = "John"
            });
            Console.WriteLine("Put succeeded: {0}", putResult.Success);
    
            var getResult = await client.GetAsync("foo", new MapValue
            {
                ["id"] = 1
            });
            Console.WriteLine("Get returned record:");
            // Check Row for null before converting to JSON string
            Console.WriteLine(getResult.Row?.ToJsonString());
        }
    }

    Constructors

    Name Description
    NoSQLClient(NoSQLConfig) Initializes new instance of NoSQLClient using provided configuration object. You may omit
    NoSQLClient(String) Initializes new instance of NoSQLClient using provided path to JSON configuration file.

    Properties

    Name Description
    ServiceType Gets the service type used by this NoSQLClient instance.

    Methods

    Name Description
    AddReplicaAsync(String, Region, AddReplicaOptions, CancellationToken) Cloud Service only. Adds replica to a table.
    AddReplicaAsync(String, String, AddReplicaOptions, CancellationToken) Cloud Service only. Adds replica to a table.
    AddReplicaWithCompletionAsync(String, Region, AddReplicaOptions, CancellationToken) Cloud Service only. Adds replica to a table and waits asynchronously for the operation completion.
    AddReplicaWithCompletionAsync(String, String, AddReplicaOptions, CancellationToken) Cloud Service only. Adds replica to a table and waits asynchronously for the operation completion.
    DeleteAsync(String, MapValue, DeleteOptions, CancellationToken) Deletes a row from a table.
    DeleteIfVersionAsync(String, MapValue, RowVersion, DeleteOptions, CancellationToken) Deletes a row from a table if there is an existing row that matches the primary key and its RowVersion matches the provided value.
    DeleteManyAsync(String, IReadOnlyCollection<MapValue>, DeleteManyOptions, CancellationToken) Atomically executes a sequence of Delete operations on a table.
    DeleteRangeAsync(String, Object, DeleteRangeOptions, CancellationToken) Deletes multiple rows from a table in an atomic operation.
    DeleteRangeAsync(String, Object, FieldRange, CancellationToken) Deletes multiple rows from a table in an atomic operation.
    DeleteRangeAsync(String, Object, CancellationToken) Deletes multiple rows from a table in an atomic operation.
    Dispose() Releases resources used by this NoSQLClient instance.
    Dispose(Boolean) Releases the unmanaged resources used by this instance and optionally releases the managed resources.
    DropReplicaAsync(String, Region, DropReplicaOptions, CancellationToken) Cloud Service only. Drops replica from a table.
    DropReplicaAsync(String, String, DropReplicaOptions, CancellationToken) Cloud Service only. Drops replica from a table.
    DropReplicaWithCompletionAsync(String, Region, DropReplicaOptions, CancellationToken) Cloud Service only. Drops replica from a table and waits asynchronously for the operation completion.
    DropReplicaWithCompletionAsync(String, String, DropReplicaOptions, CancellationToken) Cloud Service only. Drops replica from a table and waits asynchronously for the operation completion.
    ExecuteAdminAsync(Char[], AdminOptions, CancellationToken) On-premise only. Executes an administrative operation on the system.
    ExecuteAdminAsync(String, AdminOptions, CancellationToken) On-premise only. Executes an administrative operation on the system.
    ExecuteAdminWithCompletionAsync(Char[], AdminOptions, CancellationToken) On-premise only. Executes an administrative operation on the system and asynchronously waits for its completion.
    ExecuteAdminWithCompletionAsync(String, AdminOptions, CancellationToken) On-premise only. Executes an administrative operation on the system and asynchronously waits for its completion.
    ExecuteTableDDLAsync(String, TableDDLOptions, CancellationToken) Executes a DDL operation on a table.
    ExecuteTableDDLAsync(String, TableLimits, CancellationToken) Executes DDL operation on a table.
    ExecuteTableDDLAsync(String, CancellationToken) Executes DDL operation on a table.
    ExecuteTableDDLWithCompletionAsync(String, TableDDLOptions, CancellationToken) Executes DDL operation on a table and asynchronously waits for its completion.
    ExecuteTableDDLWithCompletionAsync(String, TableLimits, CancellationToken) Executes DDL operation on a table and waits asynchronously for its completion.
    ExecuteTableDDLWithCompletionAsync(String, CancellationToken) Executes DDL operation on a table and waits asynchronously for its completion.
    GetAdminStatusAsync(AdminResult, GetAdminStatusOptions, CancellationToken) On-premise only. Gets the status of the operation performed by ExecuteAdminAsync.
    GetAsync(String, MapValue, GetOptions, CancellationToken) Gets the row associated with a primary key.
    GetDeleteRangeAsyncEnumerable(String, Object, DeleteRangeOptions, CancellationToken) Returns IAsyncEnumerable<T> to delete range of rows from a table in multiple successive atomic operations.
    GetDeleteRangeAsyncEnumerable(String, Object, FieldRange, CancellationToken) Returns IAsyncEnumerable<T> to delete range of rows from a table in multiple successive atomic operations.
    GetDeleteRangeAsyncEnumerable(String, Object, CancellationToken) Returns IAsyncEnumerable<T> to delete range of rows from a table in multiple successive atomic operations.
    GetIndexAsync(String, String, GetIndexOptions, CancellationToken) Retrieves the information about specific index of the table.
    GetIndexesAsync(String, GetIndexOptions, CancellationToken) Retrieves the information about indexes of the table.
    GetListTablesAsyncEnumerable(ListTablesOptions, CancellationToken) Returns IAsyncEnumerable<T> to list table names.
    GetListTablesAsyncEnumerable(Int32, String, CancellationToken) Returns IAsyncEnumerable<T> to list table names.
    GetQueryAsyncEnumerable(PreparedStatement, QueryOptions, CancellationToken) Returns IAsyncEnumerable<T> to query a table based on the prepared query statement.
    GetQueryAsyncEnumerable(String, QueryOptions, CancellationToken) Returns IAsyncEnumerable<T> to query a table based on the query statement.
    GetReplicaStatsAsync(String, GetReplicaStatsOptions, CancellationToken) Cloud Service only. Gets replica statistics information.
    GetReplicaStatsAsync(String, Region, GetReplicaStatsOptions, CancellationToken) Cloud Service only. Gets replica statistics information.
    GetReplicaStatsAsync(String, String, GetReplicaStatsOptions, CancellationToken) Cloud Service only. Gets replica statistics information.
    GetTableAsync(TableResult, GetTableOptions, CancellationToken) Retrieves static information about a table in the form of TableResult.
    GetTableAsync(String, GetTableOptions, CancellationToken) Retrieves static information about a table in the form of TableResult.
    GetTableUsageAsync(String, GetTableUsageOptions, CancellationToken) Cloud Service Only. Retrieves dynamic information associated with a table in the form of TableUsageResult.
    GetTableUsageAsyncEnumerable(String, GetTableUsageOptions, CancellationToken) Cloud Service only. Returns IAsyncEnumerable<T> to list table usage records.
    GetTableUsageAsyncEnumerable(String, Nullable<DateTime>, Nullable<DateTime>, Nullable<Int32>, CancellationToken) Cloud Service only. Returns IAsyncEnumerable<T> to list table usage records.
    ListNamespacesAsync(AdminOptions, CancellationToken) On-premise only. Returns the namespaces in the store as a list of strings.
    ListRolesAsync(AdminOptions, CancellationToken) On-premise only. Returns the roles in the store as a list of strings.
    ListTablesAsync(ListTablesOptions, CancellationToken) Lists tables, returning table names.
    ListTablesAsync(String, CancellationToken) Lists tables, returning table names.
    ListTablesAsync(CancellationToken) Lists tables, returning table names.
    ListUsersAsync(AdminOptions, CancellationToken) On-premise only. Returns the users in the store as a list of UserInfo objects.
    PrepareAsync(String, PrepareOptions, CancellationToken) Prepares a query for execution and reuse.
    PutAsync(String, MapValue, PutOptions, CancellationToken) Puts a row into a table.
    PutIfAbsentAsync(String, MapValue, PutOptions, CancellationToken) Puts a row into a table if there is no existing row that matches the primary key.
    PutIfPresentAsync(String, MapValue, PutOptions, CancellationToken) Puts a row into a table if there is an existing row that matches the primary key.
    PutIfVersionAsync(String, MapValue, RowVersion, PutOptions, CancellationToken) Puts a row into a table if there is an existing row that matches the primary key and its RowVersion matches the provided value.
    PutManyAsync(String, IReadOnlyCollection<MapValue>, PutManyOptions, CancellationToken) Atomically executes a sequence of Put operations on a table.
    QueryAsync(PreparedStatement, QueryOptions, CancellationToken) Queries a table based on the prepared query statement.
    QueryAsync(String, QueryOptions, CancellationToken) Queries a table based on the query statement.
    SetTableLimitsAsync(String, TableLimits, TableDDLOptions, CancellationToken) Cloud Service Only. Sets new limits of throughput and storage for existing table.
    SetTableLimitsWithCompletionAsync(String, TableLimits, TableDDLOptions, CancellationToken) Cloud Service Only. Sets table limits on existing table and asynchronously waits for the operation completion.
    SetTableTagsAsync(String, IDictionary<String, IDictionary<String, String>>, IDictionary<String, String>, TableDDLOptions, CancellationToken) Cloud Service Only. Sets defined and free-form tags on existing table.
    SetTableTagsWithCompletionAsync(String, IDictionary<String, IDictionary<String, String>>, IDictionary<String, String>, TableDDLOptions, CancellationToken) Cloud Service Only. Sets defined and free-form tags on existing table and asynchronously waits for the operation completion.
    WaitForLocalReplicaInitAsync(String, TableCompletionOptions, CancellationToken) Cloud Service only. Waits asynchronously for local table replica to complete its initialization.
    WaitForLocalReplicaInitAsync(String, Nullable<TimeSpan>, Nullable<TimeSpan>, CancellationToken) Cloud Service only. Waits asynchronously for local table replica to complete its initialization.
    WaitForTableStateAsync(String, TableState, TableCompletionOptions, CancellationToken) Waits asynchronously for a table to reach a desired state.
    WriteManyAsync(WriteOperationCollection, WriteManyOptions, CancellationToken) Atomically executes a sequence of Put and Delete operations on one or more tables that share the same shard key.
    WriteManyAsync(String, WriteOperationCollection, WriteManyOptions, CancellationToken) Atomically executes a sequence of Put and Delete operations on a table.

    See Also

    NoSQLConfig
    NoSQLException
    NoSQLRetryHandler
    In This Article
    Back to top Copyright © 2020, 2024 Oracle and/or its affiliates. All rights reserved.