>  기사  >  데이터 베이스  >  준비된 명령문과 MySQL 사용자 변수의 유사점은 무엇입니까?

준비된 명령문과 MySQL 사용자 변수의 유사점은 무엇입니까?

WBOY
WBOY앞으로
2023-08-24 19:57:06906검색

准备好的语句和 MySQL 用户变量有什么相似之处?

우리 모두 알고 있듯이 MySQL 사용자 변수는 이를 사용하는 클라이언트 연결에만 적용되며 해당 연결이 지속되는 동안에만 존재합니다. 연결이 종료되면 모든 사용자 변수가 손실됩니다. 마찬가지로 준비된 명령문은 해당 명령문을 생성한 세션 중에만 존재하며 해당 명령문을 볼 수 있습니다. 세션이 종료되면 해당 세션에 대해 준비된 모든 문이 삭제됩니다.

또 다른 유사점은 준비된 명령문도 MySQL 사용자 변수처럼 대소문자를 구분하지 않는다는 것입니다. 예를 들어 stmt11과 STMT11은 모두 다음 예와 같습니다.

mysql> Select * from student;
+------+-------+
| Id   | Name  |
+------+-------+
| 1    | Ram   |
| 2    | Shyam |
| 3    | Rohan |
+------+-------+
3 rows in set (0.00 sec)

mysql> SET @A = 'Sohan', @B = 3;
Query OK, 0 rows affected (0.00 sec)

mysql> EXECUTE Stmt11 USING @A, @B;
Query OK, 1 row affected (0.12 sec)

mysql> Select * from Student;
+------+-------+
| Id   | Name  |
+------+-------+
| 1    | Ram   |
| 2    | Shyam |
| 3    | Sohan |
+------+-------+
3 rows in set (0.00 sec)

mysql> SET @A = 'Gaurav', @B = 3;
Query OK, 0 rows affected (0.00 sec)

mysql> EXECUTE STMT11 USING @A, @B;
Query OK, 1 row affected (0.04 sec)

mysql> Select * from Student;
+------+--------+
| Id   | Name   |
+------+--------+
| 1    | Ram    |
| 2    | Shyam  |
| 3    | Gaurav |
+------+--------+
3 rows in set (0.00 sec)

위 예에서 일단 stmt11을 실행하면 준비된 문이 Upper와 Lower를 구별하지 않기 때문에 다음에 STMT11을 실행할 때 둘 다 동일하게 작동합니다. 사례.

위 내용은 준비된 명령문과 MySQL 사용자 변수의 유사점은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제