0

データベースを Sql Server 2008 から Teradata に移行していますが、次の問題に直面しています:

テーブル列の ddl の SQL Server では、次のように定義されます。

[rowguid] uniqueidentifier ROWGUIDCOL NOT NULL CONSTRAINT [DF_Address_rowguid] DEFAULT (NEWID())

この列は newid() 関数を使用して、ユーザーが入力を提供しない場合、列 [rowguid] にランダムな varchar 値を生成して挿入します。

Teradata には、この値を生成する同様の関数はありません。

Teradata 用の同様のテーブル ddl を作成する際に、Sql Server の NEWID() 関数の代わりに使用できるものは何ですか?

4

1 に答える 1

1

Teradata には、GUID/UUID に相当するネイティブのものはありません。Teradata は、自動インクリメント列を提供するために IDENTITY 列を提供します。IDENTITY 列には独自のニュアンスがないわけではありません。第 5 章 - SQL データ定義言語でテーブルを作成する- 詳細なトピックを読むことをお勧めします。これには、ID 列を説明するセクションがあります。

ただし、SQL Server から Teradata への移行の一環として、テーブルのプライマリ インデックスを使用して Teradata でデータを分散する方法の概念を理解する必要があります。これには、既存のデータ モデルを見直し、Teradata に物理的に実装する方法を再設計することが必要になる場合があります。

于 2013-07-25T14:46:47.763 に答える