사용자 ID가 주어진 사용자 ID와 동일한 지정된 column-name의 값을 업데이트하는 prodecure를 작성하려고합니다.동적 MySQL 업데이트 문
_strong_1은 'category_1'과 같이 열 이름이 포함 된 변수입니다.
SELECT COLUMN_NAME FROM information_schema.`COLUMNS` C
WHERE table_name = 'subscribers_preferences' AND COLUMN_NAME LIKE _strong_1 INTO @columns;
SET @table = 'subscribers_preferences';
SET @s = CONCAT('UPDATE ',@table,' SET ', @columns = 1);
PREPARE stmt FROM @s;
EXECUTE stmt;
'SET @s ='문에 오류가 있습니다. 간단한 SELECT 문으로 작업 할 수 있지만 UPDATE는 까다 롭습니다.
미리 감사드립니다.
'@ columns'에 몇 개의 열이 나열되어 있습니까? 둘 이상인 경우 각 열의 끝에'= 1 '을 추가해야합니다. 그렇지 않으면'column1, column2 = 1'이 올바른 구문이 아니기 때문에'column1 = 1, column2 = 1'이되어야합니다. – Taryn
'@columns = 1' 문장이 맞습니까? – aldux