0

SQL Server 2014 をインストールしました。

ドキュメントから直接の構文は失敗します。

これは次の場合に失敗しますSales:

CREATE TYPE [Sales].[SalesOrderDetailType_inmem] AS TABLE(
  [OrderQty] [smallint] NOT NULL,
  [ProductID] [int] NOT NULL,
  [SpecialOfferID] [int] NOT NULL,
  [LocalID] [int] NOT NULL,

  INDEX [IX_ProductID] HASH ([ProductID]) WITH ( BUCKET_COUNT = 8),
  INDEX [IX_SpecialOfferID] NONCLUSTERED 
)
WITH ( MEMORY_OPTIMIZED = ON )

しかし、削除Salesしてもまだ失敗します

CREATE TYPE [SalesOrderDetailType_inmem] AS TABLE(
  [OrderQty] [smallint] NOT NULL,
  [ProductID] [int] NOT NULL,
  [SpecialOfferID] [int] NOT NULL,
  [LocalID] [int] NOT NULL,

  INDEX [IX_ProductID] HASH ([ProductID]) WITH ( BUCKET_COUNT = 8),
  INDEX [IX_SpecialOfferID] NONCLUSTERED 
)
WITH ( MEMORY_OPTIMIZED = ON )

次のエラーで

メッセージ 8135、レベル 16、状態 0、行 10
テーブル レベルの制約で列リスト、テーブル 'SalesOrderDetailType_inmem' が指定されていません。

メモリ最適化テーブル タイプを作成する方法は?

4

1 に答える 1

1

次の構文は機能しているようです。dboスキーマのスクリプトを作成しました。BUCKET_COUNT保持される一意の値の ~1x-2x に設定することをお勧めします。

CREATE TYPE [SalesOrderDetailType_inmem] AS TABLE(
  [OrderQty] [smallint] NOT NULL,
  [ProductID] [int] NOT NULL 
    INDEX [IX_ProductID] HASH ([ProductID]) WITH ( BUCKET_COUNT = 8),
  [SpecialOfferID] [int] NOT NULL 
    INDEX [IX_SpecialOfferID] NONCLUSTERED ,
  [LocalID] [int] NOT NULL

)
WITH ( MEMORY_OPTIMIZED = ON )
于 2014-05-13T04:40:55.400 に答える