출석부 인삿말 글자수를 조금 늘리려면
CMS/프레임워크 | XE 1.x |
---|---|
개발 언어 | PHP 7.2 |
오늘이 저희 사이트 8주년 생일이라 출석부에 문구를 생일 축하 문구로 할 수 있게 미리 입력된 문구를 넣어 놓았는데요.
평소보다 약간 더 많은 글자수 인데
db에서 글자수가 너무 적게 되어 있어 인삿말 insert에서 글자가 잘려버리네요.
<column name="greetings" type="varchar" size="250" notnull="notnull" />
if (!$oDB->isColumnExists("attendance", "greetings"))
{
$oDB->addColumn("attendance", "greetings", "varchar", 20);
}
db에서 만들어질 때 20으로 만들어진 것 같습니다.
이걸 조금 더 3배 정도로 안전하게 늘리는 방법이 어떤 것일까요??
누구나 그렇지만 db를 건드리는건 무서워 하죠 ㅎ
댓글 13
p.s.) XE는 열 추가/삭제만 지원하고 열 수정(크기, 타입)은 지원하지 않습니다. 정말 수정해야 한다면 _query로 직접 쿼리해야 합니다.
기본 제공하는 함수와 XML만을 사용해서는 구현할 수 없다는 뜻일 뿐이므로, ALTER TABLE 쿼리를 직접 작성한다면 얼마든지 가능합니다. 실제로 이렇게 하는 자료도 있을 거고요. 라이믹스용으로 만들어진 자료라면 $oDB->modifyColumn()을 사용할 수도 있지만, 그대로 배포해 버리면 XE에서는 에러납니다.
XE는 안된다 라이믹스 전용은 가능하다 라는 이야기 내용이 혼돈이 생기네요.
https://github.com/bjrambo/attendance/commit/f812078cefb82bd6e6375af09ff6e31018bccbcc
위 커밋 보면 XE 자료인데 $oDB->modifyColumn('attendance', 'ipaddress', 'varchar', '128', '', true);
사용이 있습니다. 이게 라이믹스에게나 유효하다는 건지..
코드를 제공하면 당연히 수정이 이루어진다의 코드가 이게 아니란건지..
종합해 본다면 저 커밋 그대로 배포가 되면 XE에서는 에러가 난다 그러니 고쳐야 한다 정도로 이해가 되네요.
XE는 modifyColumn 함수를 제공하지 않습니다.
네. 감사합니다. 2012년 5월 10에 개설된 커뮤니티에요. XE와 만난지도 8년이 넘었다는 이야기네요 ㅎ
혹시 람보님의 출석부를 사용하고 계신가요? 똑같은 곳을 찾아서 잘리는걸 늘리고 싶은데 안보이네요 ㅠㅠㅠ...