2014-11-23 3 views
0

으로 업데이트합니다. update 문을 사용하여 home_country 필드의 기본값을 설정하고 싶습니다. 내가 사용MySql은 열의 모든 필드를 기본값 인

CREATE TABLE `countries` (
    `id` smallint(6) NOT NULL AUTO_INCREMENT, 
    `name` varchar(70) COLLATE utf8_unicode_ci NOT NULL, 
    `home_country` tinyint(1) unsigned NOT NULL DEFAULT '0', 
    PRIMARY KEY (`id`), 
) ENGINE=MyISAM; 

:

$sql = "UPDATE countries SET home_country = DEFAULT WHERE id = 1" 

그러나 어떤 이유로 나를 위해 작동하지 않습니다

이 데이터베이스 테이블입니다. 당신은 더 낫다 0

답변

3

다른 모든 리셋 그냥 값을 직접

UPDATE countries SET home_country = 0 WHERE id = 1; 

을 실행하는 동안 동적으로 기본값을 원하는 경우 ID 1 위의 나라에서 는 1로 설정 HOME_COUNTRY 값을 가져야한다 세트, 당신은 이런 미친 짓을해야 할거야

UPDATE countries SET home_country = 
(SELECT column_default FROM information_schema.columns 
WHERE table_schema=DATABASE() 
AND table_name ='countries' 
AND column_name = 'home_country') WHERE id = 1;