📖
테이블에서 wr_9 컬럼의 타입을 VARCHAR(255)에서 TEXT로 일괄 변경하는 SQL 쿼리
페이지 정보
본문
[code]ALTER TABLE 테이블1 MODIFY wr_9 TEXT;
ALTER TABLE 테이블2 MODIFY wr_9 TEXT;
ALTER TABLE 테이블3 MODIFY wr_9 TEXT;
ALTER TABLE 테이블4 MODIFY wr_9 TEXT;
ALTER TABLE 테이블5 MODIFY wr_9 TEXT;[/code]⚠️ 주의: 이 쿼리는 각 테이블의 wr_9 컬럼이 존재하고, 현재 VARCHAR(255) 타입인 경우에만 정상 작동합니다.
실행 전 백업을 권장하며, 실제 데이터베이스 구조에 따라 쿼리 실행 여부를 꼭 확인하세요.
☘️다음은 PHP를 이용해 지정된 테이블들의 wr_9 컬럼을 TEXT로 일괄 변경하는 자동화 스크립트입니다.
이 스크립트는 MySQL 데이터베이스에 접속해 각 테이블의 wr_9 컬럼 타입을 확인하고, VARCHAR(255)일 경우에만 TEXT로 변경합니다.[code]<?php
// 데이터베이스 접속 정보
$host = 'localhost';
$user = 'db_user';
$pass = 'db_pass';
$dbname = 'db_name';
// 변경할 테이블 목록
$tables = [
'테이블1',
'테이블2',
'테이블3',
'테이블4',
'테이블5',
'테이블6',
'테이블7',
'테이블8',
'테이블9',
];
// 데이터베이스 연결
$conn = new mysqli($host, $user, $pass, $dbname);
if ($conn->connect_error) {
die("연결 실패: " . $conn->connect_error);
}
foreach ($tables as $table) {
// 컬럼 wr_9의 타입 확인
$result = $conn->query("SHOW COLUMNS FROM `$table` LIKE 'wr_9'");
if ($result && $row = $result->fetch_assoc()) {
if (stripos($row['Type'], 'varchar') !== false) {
// varchar일 경우에만 변경
$alter = "ALTER TABLE `$table` MODIFY `wr_9` TEXT";
if ($conn->query($alter) === TRUE) {
echo "$table: wr_9 컬럼이 TEXT로 변경되었습니다.<br>";
} else {
echo "$table: 변경 실패 - " . $conn->error . "<br>";
}
} else {
echo "$table: wr_9 컬럼은 이미 TEXT이거나 다른 타입입니다.<br>";
}
} else {
echo "$table: wr_9 컬럼이 존재하지 않습니다.<br>";
}
}
$conn->close();
?>[/code]사용 방법
1. 위 스크립트를 change_column_type.php 같은 파일명으로 저장합니다.
2. DB 접속 정보 ($host, $user, $pass, $dbname)를 본인의 환경에 맞게 수정합니다.
3. 서버에서 실행하거나, 웹 서버에 업로드 후 웹 브라우저에서 호출합니다.
ALTER TABLE 테이블2 MODIFY wr_9 TEXT;
ALTER TABLE 테이블3 MODIFY wr_9 TEXT;
ALTER TABLE 테이블4 MODIFY wr_9 TEXT;
ALTER TABLE 테이블5 MODIFY wr_9 TEXT;[/code]⚠️ 주의: 이 쿼리는 각 테이블의 wr_9 컬럼이 존재하고, 현재 VARCHAR(255) 타입인 경우에만 정상 작동합니다.
실행 전 백업을 권장하며, 실제 데이터베이스 구조에 따라 쿼리 실행 여부를 꼭 확인하세요.
☘️다음은 PHP를 이용해 지정된 테이블들의 wr_9 컬럼을 TEXT로 일괄 변경하는 자동화 스크립트입니다.
이 스크립트는 MySQL 데이터베이스에 접속해 각 테이블의 wr_9 컬럼 타입을 확인하고, VARCHAR(255)일 경우에만 TEXT로 변경합니다.[code]<?php
// 데이터베이스 접속 정보
$host = 'localhost';
$user = 'db_user';
$pass = 'db_pass';
$dbname = 'db_name';
// 변경할 테이블 목록
$tables = [
'테이블1',
'테이블2',
'테이블3',
'테이블4',
'테이블5',
'테이블6',
'테이블7',
'테이블8',
'테이블9',
];
// 데이터베이스 연결
$conn = new mysqli($host, $user, $pass, $dbname);
if ($conn->connect_error) {
die("연결 실패: " . $conn->connect_error);
}
foreach ($tables as $table) {
// 컬럼 wr_9의 타입 확인
$result = $conn->query("SHOW COLUMNS FROM `$table` LIKE 'wr_9'");
if ($result && $row = $result->fetch_assoc()) {
if (stripos($row['Type'], 'varchar') !== false) {
// varchar일 경우에만 변경
$alter = "ALTER TABLE `$table` MODIFY `wr_9` TEXT";
if ($conn->query($alter) === TRUE) {
echo "$table: wr_9 컬럼이 TEXT로 변경되었습니다.<br>";
} else {
echo "$table: 변경 실패 - " . $conn->error . "<br>";
}
} else {
echo "$table: wr_9 컬럼은 이미 TEXT이거나 다른 타입입니다.<br>";
}
} else {
echo "$table: wr_9 컬럼이 존재하지 않습니다.<br>";
}
}
$conn->close();
?>[/code]사용 방법
1. 위 스크립트를 change_column_type.php 같은 파일명으로 저장합니다.
2. DB 접속 정보 ($host, $user, $pass, $dbname)를 본인의 환경에 맞게 수정합니다.
3. 서버에서 실행하거나, 웹 서버에 업로드 후 웹 브라우저에서 호출합니다.
댓글목록
등록된 댓글이 없습니다.
![]() ![]() |