-
[PHP] 39. Prepared Statement - PHP 강좌, PHP5Web/PHP 2015. 6. 13. 14:05PHP Prepared StatementsPrepared 구문은 SQL 삽입에 매우 유용한 구문입니다.1. Prepared Statements and Bound ParametersPrepared 구문은 높은 효율로 SQL 구문을 반복적으로 실행하는데 유용합니다.Prepared 구문은 아래 순서로 구동됩니다:1. Prepare: SQL 구문 템플릿으로 데이터베이스에 생성되고 보내집니다. 특정 값을 명시하지 않은 체 내비둡니다. (label "?")예: INSERT INTO MyGuests VALUES(?, ?, ?)2. 데이터베이스는 SQL 구문 템플릿을 해석, 컴파일하고 질의 최적화를 수행하고, 실행없이 결과를 저장합니다.3. Execute: 어플리케이션은 값을 파라미터와 연결하고, 데이터베이스는 구문을 실행합니다. 어플리케이션은 원하는 다른 값에 따라 여러 번 구문을 실행 할 수 있습니다.SQL 구문을 직접 실행하는 것과 비교해보면, prepared 구문은 2가지 주 장점을 가지고 있습니다:- Prepared 구문은 질의 준비를 단 한번 완료함으로써, 파싱 타임을 줄여줍니다.- 연결된 파라미터는 서버의 대역폭(bandwidth)를 줄여줍니다. 전체 질의를 보내는 것이 아닌, 필요로 할 때마다 파라미터만 보내므로.- Prepared 구문은 SQL 삽입에 매우 유용합니다.2. Prepared Statements in MySQLi123456789101112131415161718192021222324252627282930313233343536373839<?php$servername = "localhost";$username = "root";$password = "rhapsody3";$dbname = "myDB";// Create connection$conn = new mysqli($servername, $username, $password, $dbname);// Check connectionif ($conn->connect_error) {die("Connection failed: " . $conn->connect_error);}// prepare and bind$stmt = $conn->prepare("INSERT INTO MyGuests (firstname, lastname, email) VALUES (?, ?, ?)");$stmt->bind_param("sss", $firstname, $lastname, $email);// set parameters and execute$firstname = "John";$lastname = "Doe";$email = "john@example.com";$stmt->execute();$firstname = "Mary";$lastname = "Moe";$email = "mary@example.com";$stmt->execute();$firstname = "Julie";$lastname = "Dooley";$email = "julie@example.com";$stmt->execute();echo "New records created successfully";$stmt->close();$conn->close();?>
cs * 이 강좌는 'w3schools'를 참조하여 작성하였습니다.
'Web > PHP' 카테고리의 다른 글
[PHP] 42. Update Data - PHP 강좌, PHP5 (0) 2015.06.13 [PHP] 41. Delete Data - PHP 강좌, PHP5 (0) 2015.06.13 [PHP] 40. Select Data - PHP 강좌, PHP5 (0) 2015.06.13 [PHP] 38. 여러 레코드 삽입(Insert Multiple Records Into MySQL) - PHP 강좌, PHP5 (0) 2015.06.13 [PHP] 37. ID 얻기(Get ID of Last Inserted Record) - PHP 강좌, PHP5 (0) 2015.06.13 [PHP] 36. 데이터 삽입(Insert Data Into MySQL) - PHP 강좌, PHP5 (0) 2015.06.13