0

私は悲しいことに私が継承したスクリプトに取り組んでいます-コメントも何もありません。ああ!テストの目的で、自動インクリメントIDを持つデータベース内のテーブルの1つを複製しました。ただし、データがデータベースに保存されると、ID番号は「0」になります。これはその列のデフォルトです。なぜ自動増加しないのかわかりません...何か考えはありますか?ありがとうございました!

4

4 に答える 4

4

複製テーブルのフィールドを自動インクリメントに設定してもよろしいですか?実行してみてください:

 ALTER TABLE `duplicate_table` CHANGE `ai_key` `ai_key` INT( key_length ) NOT NULL AUTO_INCREMENT  

そして、それが設定されているかどうかを確認します。

于 2009-01-08T00:08:48.080 に答える
2

新しいテーブルを最初から作成しましたか、それとも実際のコピーとして作成しましたか?列が自動インクリメントすることになっている場合は、デフォルト値のないプライマリ(または少なくとも一意の)キーである必要があります。

于 2009-01-08T00:11:20.963 に答える
1

もう一度確認するには、sqlステートメントを使用して、両方のテーブルのshowcreatetable構文を表示して比較します

show create table <table>
于 2009-01-08T00:22:24.917 に答える
0

あなたのコラムは実際にはもうないようauto_incrementです。auto_incrementバックアップを作成するために使用した phpMyAdmin にバグ (?) があったため、これは私に数回発生しました: CREATE TABLE ステートメントにキーワードを追加しませんでした。ものすごいお尻の痛みでした

于 2009-01-08T00:26:07.843 に答える