1 minute read

태그 입력 방식에 따른 구분

  • 인스타그램형
  • 본문 속에 #TAG 처럼 입력한다.
  • 단순입력에 사용
  • 장점 : 입력 부분을 하나로 처리할 수 있다.
  • 단점 : 내용이 복잡해지고 #~~ 같은 다른 내용도 TAG로 동작하게 된다.
  • 네이버 카페형
  • 태그 입력 부분이 따로 있다.
  • 을 굳이 붙이지 않아도 된다.

  • 보통 띄어쓰기나 ,(쉽표) 등으로 구분한다.)
  • 장점 : 정확한 TAG 설정이 가능하다. 글의 내용과 상관 없이 설정할 수 있다.
  • 단점 : 따로 태그 입력 부분이 있어야한다.

태그에 필요 내용

<tbody>&lt;tr class="captionfontstyle"&gt;&amp;lt;td class="pkcolcaptionstyle"&amp;gt;PK&amp;lt;/td&amp;gt;&amp;lt;td class="colcaptionstyleleft"&amp;gt;Field&amp;lt;/td&amp;gt;&amp;lt;td class="colcaptionstyleleft"&amp;gt;Type&amp;lt;/td&amp;gt;&amp;lt;td class="colcaptionstyleleft"&amp;gt;Comment&amp;lt;/td&amp;gt;&lt;/tr&gt;&lt;tr class="datafontstyleroweven"&gt;&amp;lt;td&amp;gt;PK&amp;lt;/td&amp;gt;&amp;lt;td class="cellstyleleft"&amp;gt;bt_tag&amp;lt;/td&amp;gt;&amp;lt;td class="cellstyleleft"&amp;gt;varchar(30) NOT NULL&amp;lt;/td&amp;gt;&amp;lt;td class="cellstyleleft"&amp;gt;태그명&amp;lt;/td&amp;gt;&lt;/tr&gt;&lt;tr class="datafontstylerowodd"&gt;&amp;lt;td&amp;gt;PK&amp;lt;/td&amp;gt;&amp;lt;td class="cellstyleleft"&amp;gt;b_idx&amp;lt;/td&amp;gt;&amp;lt;td class="cellstyleleft"&amp;gt;int(10) unsigned NOT NULL&amp;lt;/td&amp;gt;&amp;lt;td class="cellstyleleft"&amp;gt;게시물번호&amp;lt;/td&amp;gt;&lt;/tr&gt;&lt;tr class="datafontstyleroweven"&gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td class="cellstyleleft"&amp;gt;bt_update_count&amp;lt;/td&amp;gt;&amp;lt;td class="cellstyleleft"&amp;gt;int(10) unsigned NOT NULL&amp;lt;/td&amp;gt;&amp;lt;td class="cellstyleleft"&amp;gt;업데이트 횟수&amp;lt;/td&amp;gt;&lt;/tr&gt;&lt;tr class="datafontstylerowodd"&gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td class="cellstyleleft"&amp;gt;bt_isdel&amp;lt;/td&amp;gt;&amp;lt;td class="cellstyleleft"&amp;gt;tinyint(4) NOT NULL&amp;lt;/td&amp;gt;&amp;lt;td class="cellstyleleft"&amp;gt;삭제여부&amp;lt;/td&amp;gt;&lt;/tr&gt;&lt;tr class="datafontstyleroweven"&gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td class="cellstyleleft"&amp;gt;bt_insert_date&amp;lt;/td&amp;gt;&amp;lt;td class="cellstyleleft"&amp;gt;datetime NULL&amp;lt;/td&amp;gt;&amp;lt;td class="cellstyleleft"&amp;gt;삽입일&amp;lt;/td&amp;gt;&lt;/tr&gt;&lt;tr class="datafontstylerowodd"&gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td class="cellstyleleft"&amp;gt;bt_delete_date&amp;lt;/td&amp;gt;&amp;lt;td class="cellstyleleft"&amp;gt;datetime NULL&amp;lt;/td&amp;gt;&amp;lt;td class="cellstyleleft"&amp;gt;삭제일&amp;lt;/td&amp;gt;&lt;/tr&gt;</tbody>

CREATE TABLE tag (   bt_tag varchar(30) NOT NULL COMMENT ‘태그명’,   b_idx int(10) unsigned NOT NULL COMMENT ‘게시물번호’,   bt_update_count int(10) unsigned NOT NULL DEFAULT ‘1’ COMMENT ‘업데이트 횟수’,   bt_isdel tinyint(4) NOT NULL DEFAULT ‘0’ COMMENT ‘삭제여부’,   bt_insert_date datetime DEFAULT NULL COMMENT ‘삽입일’,   bt_delete_date datetime DEFAULT NULL COMMENT ‘삭제일’,   PRIMARY KEY (bt_tag,b_idx),   KEY IDX_B_IDX (b_idx) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT=’태그’

bt_tag와 b_idx 만 있어도 된다. 나머지는 통계용 등으로 사용할 데이터다.

추가내용

  • 태그 갯수를 무한개로 하면 안된다, 최대 30개까지하자 (많으면 insert 에 그만큼 부하가 된다.)
  • 태그의 길이도 최대 30글자 까지로 제한하자. (길이를 무한정 늘릴 수는 없다.)
  • instargam의 경우 무조건 소문자로 처리된다.
  • DB에 저장시 #는 저장하지 않아야한다. DB내에서는 무의미하고 index에도 방해된다.

🔗original-link

Updated: