0

主キーを毎回0.1ずつ自動インクリメントしようとしています。0.1から。これは可能ですか?

CREATE TABLE NewTable
 (
ID    BigInt    IDENTITY    NOT NULL, 
CONSTRAINT PK_ID PRIMARY KEY (ID),
  )
4

4 に答える 4

1

いいえ。BigIntは8バイトのinteger値です。注:MicrosoftSQLServerを想定しています。

于 2013-03-03T20:58:06.780 に答える
0

いくつかの解決策はビューです:

CREATE VIEW v_NewTable AS
SELECT ID/10
FROM NewTable
于 2013-03-03T21:45:45.710 に答える
0

いいえ、フィールドのデータ型を変更した場合でも、ID増分は'18桁以下を含むゼロ以外の整数である必要があります'(これはSQLサーバーであると想定しています)

于 2013-03-03T21:05:13.560 に答える
0

SQL Serverでは、ID列のシードまたは増分に10進値を含めることはできません。

プレゼンテーションの目的で、なぜこれを行う必要があるのでしょうか。もしそうなら、しないでください。必要に応じて、1つのオプションはトリガーを作成することです。代わりにComputed列を使用することを検討することもできます-Idの値の1/10にします(Identityフィールドは1-Identity(1,1)でシードおよびインクリメントされます)。

繰り返しますが、なぜこれを行う必要があるのか​​わかりません。

于 2013-03-03T21:06:14.447 に答える