2017-11-18 7 views
0

는, 나는 붙어 : 나는이 작업을 수행하기 위해 준비된 성명을 구축 할 수 어떻게, 3 개 테이블에서 문자열의 모든 항목을 제거하는 쿼리를 작성하는한 번에 3 개의 MySQL 테이블에서 텍스트를 제거하는 PDO 쿼리? 이 일에 절대 초보자로서

$sql = "UPDATE table_1, table_2, table_3 SET column=REPLACE(column, '$string', '')"; 

같은 뭔가가 필요 ? 예 :

$sql = "UPDATE table_1, table_2, table_3 SET column=:column"; 
$q = $dbh->prepare($sql); 
$q->execute(array(':column'=>"REPLACE(column, '$string', '')")); 

분명히 작동하지 않습니다.

답변

1

세 개의 쿼리를 실행하십시오. 단일 쿼리에서이를 수행 할 수있는 훌륭한 방법은 없습니다.

는 지금까지 준비된 명령문이가는대로되지 자리에서 쿼리의 REPLACE() 기능을 포함해야합니다

$q = $dbh->prepare("UPDATE table SET column = REPLACE(column, :string, '')"); 
$q->execute([ ':string' => $string ]);