programing

ALTER 테이블 - MySQL에 자동 증가 추가

nicescript 2022. 10. 30. 12:50
반응형

ALTER 테이블 - MySQL에 자동 증가 추가

On 컬럼이 있는 MySQL에 테이블을 만들었습니다.itemID.

테이블을 만든 후 이 열을 다음으로 변경합니다.AUTOINCREMENT.

ALTER 문을 사용하여 이 작업을 수행하려면 어떻게 해야 합니까?

테이블 정의:

ALLITEMS (itemid int(10) unsigned, itemname varchar(50))

다음 코드를 사용하고 있지만 구문 오류가 발생합니다.

오류: 구문이 잘못되었습니다.

ALTER TABLE allitems
MODIFY itemid INT(10) UNSIGNED AUTOINCREMENT; 
CREATE TABLE ALLITEMS(
    itemid INT(10)UNSIGNED,
    itemname VARCHAR(50)
);

ALTER TABLE ALLITEMS CHANGE itemid itemid INT(10)AUTO_INCREMENT PRIMARY KEY;

DESC ALLITEMS;

INSERT INTO ALLITEMS(itemname)
VALUES
    ('Apple'),
    ('Orange'),
    ('Banana');

SELECT
    *
FROM
    ALLITEMS;

나는 와 혼동했다.CHANGE그리고.MODIFY키워드를 지정했습니다.

ALTER TABLE ALLITEMS CHANGE itemid itemid INT(10)AUTO_INCREMENT PRIMARY KEY;

ALTER TABLE ALLITEMS MODIFY itemid INT(5);

거기 있는 동안에도 주의해 주세요.AUTO_INCREMENT는 사전 정의된 수치로 시작할 수도 있습니다.

ALTER TABLE tbl AUTO_INCREMENT = 100;

구문:

   ALTER TABLE `table1` CHANGE `itemId` `itemId` INT( 11 ) NOT NULL AUTO_INCREMENT 

단, 테이블에는 정의된 키(예: itemId의 프라이머리 키)가 필요합니다.

ALTER TABLE `ALLITEMS`
    CHANGE COLUMN `itemid` `itemid` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT;

AUTO_INCREMENT PRIMAY KEY를 OP의 기존 테이블에 추가하기 위한 기본 구문:

ALTER TABLE allitems
MODIFY itemid INT(10) UNSIGNED AUTO_INCREMENT PRIMARY KEY;

또는 새 테이블의 경우 다음 문서의 구문 예를 참조하십시오.

CREATE TABLE animals (
     id MEDIUMINT NOT NULL AUTO_INCREMENT,
     name CHAR(30) NOT NULL,
     PRIMARY KEY (id)
);

트랩 및 주의사항:

  • AUTO_INCREMENT열에 인덱스가 있어야 합니다. (일반적으로 프라이머리 키로 사용할 수 있지만 MySQL에서는 이 키가 필요하지 않습니다.)
  • 일반적으로는 이 제품을 만드는 것이 좋습니다.AUTO_INCREMENTUNSIGNED. 문서에서:

    가능한 경우 더 큰 범위를 허용하려면 UNSIGNED 속성을 사용합니다.

  • 를 사용하는 경우CHANGE또는MODIFY기둥을 만드는 절AUTO_INCREMENT(또는 실제로 사용할 때마다)CHANGE또는MODIFYclause) 다음과 같이 컬럼의 모든 수식자를 포함하도록 주의해야 합니다.NOT NULL또는UNSIGNED를 호출하면 테이블 정의에 표시됩니다.SHOW CREATE TABLE yourtable. 그렇지 않으면 이러한 수식어가 손실됩니다.
ALTER TABLE allitems
CHANGE itemid itemid INT(10) AUTO_INCREMENT;
ALTER TABLE tblcatalog
    CHANGE COLUMN id id INT(11) NOT NULL AUTO_INCREMENT FIRST;

ALTER TABLE 직원이 AUTO_Increment 기본 키로 ID를 변경합니다.

ALTER TABLE t_name modify c_name INT(10) AUTO_INCREMENT PRIMARY KEY;

언급URL : https://stackoverflow.com/questions/6957370/alter-table-adding-autoincrement-in-mysql

반응형