반응형
MySQL에서 문자열을 실행할 수 있습니까?
나는 a를 통과하는 MSSQL 저장 프로시저를 변환해야 합니다.varchar다음과 같은 질문:
INSERT INTO Results
EXEC (@Expresion);
이거 안 돼요.저는 그것을 꽤 확신합니다.EXEC그리고.EXECUTEMySQL 명령어는 아니지만,CALL역시 안 통합니다.
자바스크립트 같은 것이 가능한지 아는 사람?evalMySQL의 기능?
이런 걸 찾으시는 것 같네요
SET @queryString = (
SELECT CONCAT('INSERT INTO user_group (`group_id`,`user_id`) VALUES ', www.vals) as res FROM (
SELECT GROUP_CONCAT(qwe.asd SEPARATOR ',') as vals FROM (
SELECT CONCAT('(59,', user_id, ')') as asd FROM access WHERE residency = 9
) as qwe
) as www
);
PREPARE stmt FROM @queryString;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
SET @asd = NULL;
이것은 다음과 같은 SQL에 해당합니다.eval(my_string);:
@Expression = 'SELECT "Hello, World!";';
PREPARE myquery FROM @Expression;
EXECUTE myquery;
기본적으로 기존 답변을 종합해봤는데, 평가하는 방법을 알려주지 않습니다.
매개 변수를 추가하려면 다음을 사용할 수 있습니다.
@username = "test";
@password = "asdf";
@Expression = 'SELECT id FROM Users WHERE name = ? AND pass = ?;'
PREPARE myquery FROM @Expression;
EXECUTE myquery USING @username, @password;
그리고 원래 질문에 정확하게 답하기 위해:
@Expression = 'SELECT "Hello, World!";'
PREPARE myquery FROM @Expression;
INSERT INTO Results
EXECUTE myquery;
참고하세요.PREPARE ... FROMstatement wants session variable(세션 변수와 혼합됨)@). 만약 당신이 정상 변수를 통과하려고 한다면, 그것은 공중으로 손을 던질 것이고 그것은 단지 신경쓰지 않을 것입니다.
EXECUTE는 MySQL에서 유효한 명령입니다.MySQL 참조 설명서
MySQL 명령은 준비된 하나의 문에만 사용할 수 있습니다.
문자열에서 여러 개의 쿼리를 실행하려는 경우 파일에 저장하고 소스화하는 것을 고려합니다.
SET @query = 'SELECT 1; SELECT 2; SELECT 3;';
SELECT @query INTO OUTFILE '/tmp/temp.sql';
SOURCE /tmp/temp.sql;
언급URL : https://stackoverflow.com/questions/999200/is-it-possible-to-execute-a-string-in-mysql
반응형
'programing' 카테고리의 다른 글
| 텍스트 파일에서 특정 문자열 찾기 (0) | 2023.09.06 |
|---|---|
| JPA 구성에서 기본 스키마 이름을 설정하는 방법은? (0) | 2023.09.06 |
| VBA에서 HTTP 요청을 시도할 때 "적절한 개체가 없으면 메서드가 유효하지 않습니다" 오류가 발생합니까? (0) | 2023.06.13 |
| '스위프' 기능 사용 방법 (0) | 2023.06.13 |
| 닷넷의 프로세스 ID를 확인하는 동안 오류가 발생했습니다.응용 프로그램을 호스팅하는 exe.하나 이상의 오류가 발생했습니다. (0) | 2023.06.13 |