2
A
답변
4
원하는 위치에 자리 표시자를 넣을 수는 없습니다. 매개 변수 자리 표시자는 일반적으로 표현식을 예상 할 수있는 명령문 내의 해당 위치에만 나타납니다. 특히 매개 변수 자리 표시자를 사용하여 식별자 나 전체 문 구조를 매개 변수화 할 수는 없습니다. 그것이 당신의 시도가 실패하는 이유입니다.
MYSQL에서 준비된 명령문 및 동적 SQL과 관련하여 유용한 정보는 Roland Bouman's blog -> MySQL 5: Prepared statement syntax and Dynamic SQL에서 찾을 수 있습니다. 사용 목적이 같은 인 경우
:
prepare test
from
'select * from ?' ;
set @myt := 'myTable' ;
execute test
using @myt ;
단순히 작동하지 않습니다. 그러나 이것을 무시할 수 있습니다 :
set @myt := 'myTable'
set @qtext := concat('select * from ',@myt) ;
prepare test
from @qtext ;
execute test ;
1
변수로 테이블 이름을 사용 해 본 적이 한번도 없었습니다. 그게 허락되지 않을지 모르겠다. 다음을 시도해보십시오.
PREPARE test FROM "SELECT * FROM table_name WHERE column = ?";
오류 메시지가 표시되지 않으므로 어둠 속에서 찌르기입니다.
관련 문제
- 1. 준비 문과 관련된 문제
- 2. If 문과 관련된 문제
- 3. if 문과 관련된 문제 ||
- 4. PHP의 UPDATE 준비 문과 관련된 문제점
- 5. gcc의 어셈블리 문과 관련된 문제
- 6. PHP 내부의 루프 문과 관련된 문제
- 7. 연결된 서버를 통한 select 문과 관련된 문제
- 8. CodeIgniter의 JOIN 문과 관련된 PHP 문제
- 9. RadComboBox 및 RadListBox를 사용하는 LINQ 문과 관련된 문제
- 10. mysqli 준비 문과 함께 IN 절을 사용하는 방법
- 11. 준비 문 - 여기에서 문제
- 12. Npgsql 준비 문제
- 13. 문제 : .remove()와 관련된 문제
- 14. 이벤트 대상과 관련된 문제
- 15. get_class와 관련된 PHP 문제
- 16. 글로벌 변수와 관련된 문제
- 17. IE에서 drag'n'drop과 관련된 문제
- 18. 'Like'쿼리와 관련된 MySQL 문제
- 19. didselectrowatindexpath와 관련된 문제
- 20. NSThread와 관련된 문제
- 21. Jquery의 Json과 관련된 문제
- 22. 생산중인 iAd와 관련된 문제
- 23. git push와 관련된 문제
- 24. 구문 강조와 관련된 문제
- 25. PHP의 객체와 관련된 문제
- 26. itextsharp와 관련된 문제
- 27. Clisp에서 ASDF와 관련된 문제
- 28. Python의 클래스와 관련된 문제
- 29. "less"필터와 관련된 문제
- 30. jsp와 관련된 문제
이것은 준비된 명령문에서'?'를 사용할 수있는 좋은 예입니다. –
@ypercube 제가 옳았다는 것을 아는 것이 좋지만, 당신의 대답은 확실히 우수합니다. IMHO가 누락 된 유일한 것은 할 수있는 일과 할 수없는 일의 사양에 대한 링크입니다. –
오, 준비된 진술에 대해이 문제와 많은 기술을 철저히 설명하는 블로그 글을 추가하는 것을 잊어 버렸습니다. 나는 그것을 지금 추가 할 것이다. –