이 글의 내용은 MySQL의 전처리 기술이 무엇인지 소개하는 것입니다. 전처리 기술을 사용합니다. 도움이 필요한 친구들이 참고할 수 있기를 바랍니다.
일명 전처리 기술은 원래 MySQL이 서버 부담을 줄이기 위한 기술로 제안한 것입니다!
기존 mysql 처리 흐름
1, 클라이언트에서 sql 문 준비
2, sql 문을 MySQL 서버로 보내기
3, MySQL 서버에서 sql 문 실행
4, 서버가 실행 결과를 반환 결과는 클라이언트에게
이렇게 하면 각 sql 문이 한 번 요청되고 mysql 서버는 이를 한 번 받아 처리하게 됩니다. 스크립트 파일이 동일한 문을 여러 번 실행하면 mysql 서버에 부담이 커지게 되므로 mysql 서버에 대한 부담을 줄이기 위해 전처리가 발생합니다!
기본 전처리 전략:
SQL 문을 강제로 두 부분으로 나눕니다.
첫 번째 부분은 이전과 동일한 명령 및 구조 부분입니다.
두 번째 부분은 나중에 변수 데이터 부분입니다
SQL 실행 시 명령문을 작성하려면 먼저 이전과 동일한 명령 및 구조 부분을 MySQL 서버에 보내고 MySQL 서버가 미리 전처리를 수행하도록 하십시오. (SQL 문의 구조적 무결성을 보장하기 위해 현재 sql 문은 실제로 실행되지 않습니다.) , 두 번째에서는 SQL 문을 한번에 보낼 때 변수 데이터 부분은 데이터 자리 표시자로 표시됩니다! 물음표 같은 거요? 일반적인 데이터 자리 표시자입니다!
MySQL 전처리에는 매개변수를 사용한 전처리/매개변수 없는 전처리의 두 가지 형태가 있습니다.
1. 매개변수 없는 전처리
먼저 표의 데이터를 확인하세요!
1. 준비된 문을 준비합니다.
"전처리된 sql 문"에서 문 이름을 준비합니다. 준비된 문장을 실행하세요
execute
문 이름;
prepare sql_1 from "select * from pdo";
3. 전처리 삭제
drop prepare
문 이름;
execute sql_1;
삭제 후 전처리 가능 더 이상 수행되지 않습니다!
2. 매개변수를 사용한 전처리
1. 준비된 문 준비prepare
"preprocessed sql
statement"에서 문 이름;drop prepare sql_1;
2 . 매개변수 변수 정의
set @
변수 이름 =값 --여기서 @는 MySQL에서 변수를 정의하기 위한 문법 형식입니다(PHP의 $ 기호와 유사)
prepare sql_2 from "select * from pdo where id = ?";
3, 매개변수 변수를 전달하고 준비된 문을 실행
execute
문 이름을매개변수 변수를 사용하여
set @id=2;
4, 전처리 문 삭제 처리
준비하세요
명령문 이름;execute sql_2 using @id; --选出id=2的信息
참고: 데이터 자리 표시자가 두 개 이상인 경우 데이터 자리 표시자 순서대로 매개변수를 전달하세요.
drop prepare sql_2;
prepare sql_2 from "select * from pdo where id > ? && age > ?";
set @id=2;
set @age=30;
위는 MySQL 전처리입니다. 스크립트 파일에서 SQL 문을 전처리하는 효과는 특정 문을 반복적으로 실행할 때 사용됩니다. 개선됩니다!
위 내용은 MySQL의 전처리 기술이란 무엇입니까? 전처리 기술 사용의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!