답변 5개
UPDATE g5_write_게시판ID SET wr_subject = '제목변경';
이렇게 하시면됩니다.
와일드카드로 g5_write_ 접두어로 하는 방법이 있지만
게시판이 몇십개가 아닌이상 위 방식대로 안전하게 하세요..
댓글을 작성하려면 로그인이 필요합니다.
전체 게시판을 추출한 다음 하나씩 처리 하면 됩니다
$qq=sql_query(" select bo_table from {$g5['board_table']} ");
while($row=sql_fetch_array($qq)){
$g5_table =$g5['write_prefix'].$row['bo_table'];
sql_query("update $g5_table set wr_content = REPLACE(wr_content, ~~");
}
댓글을 작성하려면 로그인이 필요합니다.
※ 만약, """전체 그누 게시판(g5_write_*)에서 "특정 문자열" 변경/제거"""시라면~
모든 그누 게시판(g5_write_*)의 테이블을 검색한 후,
UPDATE 문을 동적으로 생성 및 실행하여
wr_content의 특정 문자열을 일괄 변경하는 방법을 사용하시면~
information_schema.tables에서 현재 데이터베이스의 모든 g5_write_* 테이블을 검색한 후,
GROUP_CONCAT을 사용하여 각 테이블에 대한 UPDATE 문을 동적으로 생성하고,
이를 PREPARE를 이용해 SQL 실행 계획으로 만든 뒤 EXECUTE로 실행하며,
마지막으로 DEALLOCATE PREPARE를 통해 사용이 끝난 SQL 문을 정리하여
모든 g5_write_* 테이블의 wr_content에서 특정 문자열을 일괄 변경.
SET @sql = (
SELECT GROUP_CONCAT(
CONCAT('UPDATE ', table_name,
' SET wr_content = REPLACE(wr_content, "기존내용", "새로운내용");')
SEPARATOR ' ')
FROM information_schema.tables
WHERE table_schema = DATABASE()
AND table_name LIKE 'g5_write_%'
);
PREPARE stmt FROM @sql;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인