1

주제: 플러그인의 index.xml 설정에서 테이블 컬럼 옵션 여부

  <storage>
    <table>
                <name>Plugins_name</name>
                <fields>
                        <field>
                                <name>field_name</name>
                                <attribute>int</attribute>
                                <length>11</length>
                                <isnull>0</isnull>
                                <default>0</default>
                        </field>
                </fields>
        </table>
  </storage>

index.xml 설정에서 테이블의 컬럼을 설정할 때 int(11) unsigned 형식으로 만들려고 합니다.

그런데 속성을 보니 unsigned 가 어디에 들어가는지 안 보여서, length 속성을 빼고
<attribute>int(11) unsigned</attribute> 이런 식으로 하니 제대로 생성이 되긴 하더군요.

이런 식으로 하는 게 편법인지 모르겠습니다. 만약 속성이 없다면 추가해주셨으면 합니다.

2

답글: 플러그인의 index.xml 설정에서 테이블 컬럼 옵션 여부

http://help.tattertools.com/ko/Plugin_Tutorial

이 포럼에서 검색해 찾아간 위의 플러그인 튜토리얼 사이트를 가도 업데이트가 안 되어 있어서 몇가지 시도를 해봤으나 unsigned 설정은 없는 것 같군요.

필드에 auto_increment 설정도 필요해서 <autoincrement>1</autoincrement> 로 해주고 위의 편법과 같이 시도해보니 테이블 생성이 안 되었습니다.

unsigned 설정을 하면서도 auto_increment 설정도 같이 할 수 있으면 합니다.

3

답글: 플러그인의 index.xml 설정에서 테이블 컬럼 옵션 여부

추가로...
컬럼이 char이나 varchar형일 때 index.xml에서 default 값을 NULL이 아닌 (공백)으로 처리하는 방법이 있나요?

<default></default> 이렇게 되어 있을 경우 NULL이 들어가더군요.
<default>''</default> 이나 <default>""</default> 으로는 (공백)을 기본값으로 지정할 수가 없었습니다.

MySQL에서 default 값은 NULL일 때보다 기본값이 들어가 있는 게 더 빠르다고 알고 있습니다.
(3.x 때의 이야기라 4.x 나 5.x 에서도 그대로인지는 모르겠습니다. ^^;)

4

답글: 플러그인의 index.xml 설정에서 테이블 컬럼 옵션 여부

MySQL이 아닌 DBMS에도 돌리는 것을 목표로 로드맵이 서 있기 때문에 MySQL에서만 사용이 가능한 auto_increment는 앞으로도 제공하지 않을 예정입니다^^. (현재 지원기능이 일부 들어있는데, 제외될 예정입니다.) 텍스트큐브 자체의 테이블 다루는 부분에서도 auto_increment를 계속 걷어내고 있는 중입니다.

"Everything looks different on the other side."

-Ian Malcomm, from Michael Crichton's 'The Jurassic Park'