2016-12-21 7 views
-1
CREATE TABLE product(SNo INT AUTO INCREMENT, PId INT, pname VARCHAR(10),PRIMARY KEY (SNo)); 

私はSnoを自動インクリメントにしたいので、PIdをプライマリキーにします。プライマリキーとして初期化せずに自動インクリメントを作成する方法は?

ありがとうございます。

+0

あなたのコードを表示し、使用しているdbmsを教えてください。 – fizzi

+0

fizziは既にここでタグ付けされています** mysql ** –

+0

問題はどこですか? – shmosel

答えて

0

これを試してみてください。

  CREATE TABLE products 
      (
      SNo INT AUTO_INCREMENT, 
      PId INT, 
      pname VARCHAR(10), 
      PRIMARY KEY (SNo,PId) 
     ); 
+0

現時点ではこれは動作していますが、私はテーブルに複数のプライマリキーを持つことは許されないと思います。プライマリキーとして2つのフィールドを割り当てているので、テーブルの重みが増えます。すばらしいです! @氏。ボサール – Grijan

0
を使用でき

CREATE TABLE `product` (
`PId` INT NOT NULL, 
`SNo` INT NULL AUTO_INCREMENT, 
`pname` VARCHAR(10) NULL, 
PRIMARY KEY (`PId`)); 
+0

私はこれを既に試してみましたが、クエリーもタイプしました。カラムは1つしかなく、キーとして定義する必要があります。 – Grijan

関連する問題