2012-09-10 3 views
1

3 개의 열을 추가하고 싶습니다. 내가 얻을이 오류이름에 공백이있는 테이블 바꾸기

ALTER TABLE app name and url 
ADD COLUMN price VARCHAR(200) 
ADD COLUMN type_of_membership VARCHAR(200) 
ADD COLUMN special_deal VARCHAR(200) 

:

을 나는 잘 모릅니다 두 가지 중 하나는 각 열에 대한 기본 값을 지정하는 방법은 다음 다음 공간을 가지고 테이블을 변경하는 방법은있다

1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'name and url ADD COLUMN price VARCHAR(200) ADD COLUMN type_of_membership VARCH' at line 1

공백이있는 테이블 이름이있는 것 같습니다. 이것은 내가 실행 무엇

ALTER TABLE app name and url 
ADD COLUMN price VARCHAR(200) DEFAULT 'None' 
ADD COLUMN type_of_membership VARCHAR(200) DEFAULT 'None' 
ADD COLUMN special_deal VARCHAR(200) DEFAULT 'None' 

UPDATE :

는 기본 값을 삽입하는 방법이 있나요

ALTER TABLE `app name and url` 
ADD COLUMN price VARCHAR(200) DEFAULT 'None', 
ADD COLUMN type_of_membership VARCHAR(200) DEFAULT 'None', 
ADD COLUMN special_deal VARCHAR(200) DEFAULT 'None'; 

을 그리고 이것은 내가 가진 것입니다 :

'mydb.app name and url' is not BASE TABLE 

그것은보기이기 때문에 오류입니다. 나는 그것을 지금 얻습니다. 내가보기 MySQL의에서

답변

2

사용 ``

당신은

ALTER TABLE `app name and url` 


SQL Fiddle demo

+0

mytable이 기본 테이블 오류가 아닙니다. 1347 –

+0

@DmitryMakovetskiyd : '앱 이름 및 URL'이 뷰 또는 테이블입니까? –

+0

보기입니다. 롤 –

3

을 수정해야합니다, 당신은 backtick (액센트)

ALTER TABLE `app name and url` 
ADD COLUMN price VARCHAR(200) 
ADD COLUMN type_of_membership VARCHAR(200) 
ADD COLUMN special_deal VARCHAR(200) 

What is the meaning of grave accent (AKA backtick) quoted characters in MySQL?

PS 사용하여 탈출해야합니다에 영숫자 다음 번 사용하여 테이블 및 열 이름

+0

흠은 ... 내가 테이블 이름을 변경하고 문제를 해결할 수있는 테이블 이름을 교체해야? –

+0

@DmitryMakovetskiyd 다른 테이블에 변경하려는 테이블에 대한 참조가있는 경우 변경되지 않습니다. 그렇지 않으면 .. –

+0

이 오류가 발생합니다. mytable은 기본 테이블 오류 1347이 아닙니다. 그게 무슨 뜻입니까 –

관련 문제