*MySQLi
* NOT a different version
of MySQL!
* is a php’s extension
* provides API’s
* MySQL(i-mproved)
*Image Courtesy MySQL
*3 API(s) to connect to MySQL
* PHP's MySQL Extension
* PHP's MySQLi Extension
* PHP Data Objects (PDO)
*WHY MySQLi?
* Object-oriented interface
* Support for Prepared Statements
* Support for Multiple Statements
* Support for Transactions
* Enhanced debugging capabilities
* Embedded server support
*Connection to MySQL via MySQLi
<?php
$ServerName = "localhost";
$UserName = "username";
$password = "password";
// Create connection
$conn = new mysqli($ServerName, $UserName, $password);
// Check connection
if ($conn->connect_error)
{
die("Connection failed: " . $conn->connect_error);
}
echo "Connected successfully";
?>
*Result Set
<?php
$sql="SELECT Lastname,Age FROM Persons ORDER BY Lastname";
if ($result=mysqli_query($con,$sql))
{
// Fetch one and one row
while ($row=mysqli_fetch_row($result))
{
printf ("%s (%s)n",$row[0],$row[1]);
}
// Free result set
mysqli_free_result($result);
}
mysqli_close($con);
?>
*Prepared Queries
<?php
// Prepare & 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";
?>
*Transaction Support
<?php
$mysqli = new mysqli("example.com", "user", "passwor
d", "database");
$mysqli->autocommit(false);
$mysqli->query("INSERT INTO test(id) VALUES (1)");
$mysqli->rollback();
$mysqli->query("INSERT INTO test(id) VALUES (2)");
$mysqli->commit();
?>
*Courtesies
* The PHP Group
* Wikipedia
* Stack-Overflow
* W3-Schools

MySQLi

  • 1.
    *MySQLi * NOT adifferent version of MySQL! * is a php’s extension * provides API’s * MySQL(i-mproved) *Image Courtesy MySQL
  • 2.
    *3 API(s) toconnect to MySQL * PHP's MySQL Extension * PHP's MySQLi Extension * PHP Data Objects (PDO)
  • 3.
    *WHY MySQLi? * Object-orientedinterface * Support for Prepared Statements * Support for Multiple Statements * Support for Transactions * Enhanced debugging capabilities * Embedded server support
  • 5.
    *Connection to MySQLvia MySQLi <?php $ServerName = "localhost"; $UserName = "username"; $password = "password"; // Create connection $conn = new mysqli($ServerName, $UserName, $password); // Check connection if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error); } echo "Connected successfully"; ?>
  • 6.
    *Result Set <?php $sql="SELECT Lastname,AgeFROM Persons ORDER BY Lastname"; if ($result=mysqli_query($con,$sql)) { // Fetch one and one row while ($row=mysqli_fetch_row($result)) { printf ("%s (%s)n",$row[0],$row[1]); } // Free result set mysqli_free_result($result); } mysqli_close($con); ?>
  • 7.
    *Prepared Queries <?php // Prepare& 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"; ?>
  • 8.
    *Transaction Support <?php $mysqli =new mysqli("example.com", "user", "passwor d", "database"); $mysqli->autocommit(false); $mysqli->query("INSERT INTO test(id) VALUES (1)"); $mysqli->rollback(); $mysqli->query("INSERT INTO test(id) VALUES (2)"); $mysqli->commit(); ?>
  • 9.
    *Courtesies * The PHPGroup * Wikipedia * Stack-Overflow * W3-Schools