글쎄요. 속성을 AUTO_INCREMENT로 주면 0으로 할 수 없을 것입니다.
근데 무슨 일로 디폴트를 0으로 주려는 것인데요?
>>natalie 님께서 쓰시길<<
:: 그럼 default값으로 숫자 0을쓰고 싶은데여..이럴땐 어떻게 해줘야 null이 아닌 0으로 나오나요?
:: 답변 좀 해주세요
::
:: >>허정수 님께서 쓰시길<<
::
:: :: 테이블 정의할 때의 NOT NULL은 uid가 PRIMARY KEY이기 때문에 그렇구요...
:: ::
:: :: 그리고 AUTO_INCREMENT로 컬럼을 만들면 무조건 디폴트가 NULL 입니다.
:: ::
:: :: 보통 INSERT로 레코드 삽입할 때, AUTO_INCREMENT 컬럼에는
:: ::
:: :: INSERT INTO table_name VALUES( NULL ) ;
:: ::
:: :: 이렇게 입력하잖아요...
:: ::
:: :: 그니깐 디폴트가 NULL..
:: ::
:: :: 이해가 되시려나.
:: ::
:: :: 그럼
:: ::
:: :: >>natalie 님께서 쓰시길<<
:: ::
:: :: :: 테이블을 생성하는데요.
:: :: ::
:: :: ::
:: :: :: 1 create table book1(
:: :: :: 2 uid mediumint(9) unsigned default '0' not null auto_increment,
:: :: :: 3 name varchar(12) default '' not null,
:: :: :: 4 email varchar(40),
:: :: :: 5 homepage varchar(60),
:: :: :: 6 comment text not null,
:: :: :: 7 signdate int(10) unsigned default '0' not null,
:: :: :: 8 clienthost varchar(20),
:: :: :: 9 primary key(uid)
:: :: :: 10 );
:: :: ::
:: :: :: 위와 같이 book1.sql이란 파일로
:: :: :: 만들어서
:: :: ::
:: :: :: mysql -u user -p guestbook < book1.sql
:: :: ::
:: :: :: 이라구 해줬거든요
:: :: :: guestbook이란 데이타베이스에
:: :: :: book1.sql에 있는 정의대로
:: :: :: 테이블을 생성했는데요.
:: :: :: 프라이멀 키로 지정된 uid를 보면요
:: :: :: not null로 default를 숫자 0으로 지정해
:: :: :: 줬는데 default에 null로 나오거든요..
:: :: :: 아래처럼요.
:: :: ::
:: :: :: mysql> desc book1;
:: :: :: +------------+-----------------------+------+-----+---------+----------------
:: :: +
:: :: :: | Field | Type | Null | Key | Default | Extra
:: :: |
:: :: :: +------------+-----------------------+------+-----+---------+----------------
:: :: +
:: :: :: | uid | mediumint(9) unsigned | | PRI | NULL | auto_increment
:: :: |
:: :: :: | name | varchar(12) | | | |
:: :: |
:: :: :: | email | varchar(40) | YES | | NULL |
:: :: |
:: :: :: | homepage | varchar(60) | YES | | NULL |
:: :: |
:: :: :: | comment | text | | | |
:: :: |
:: :: :: | signdate | int(10) unsigned | | | 0 |
:: :: |
:: :: :: | clienthost | varchar(20) | YES | | NULL |
:: :: |
:: :: :: +------------+-----------------------+------+-----+---------+----------------
:: :: +
:: :: ::
:: :: :: 위에 보면 signdate는 uid하구 같게
:: :: :: 지정해 줬는데 올바로 default에 숫자 0이
:: :: :: 나오는데 uid는 null이라구 나와요
:: :: :: 이거 왜 이래요?
:: :: :: 제가 멀 잘못 정의했나요?
:: :: :: 답변 부탁드려요..
:: :: ::
|