This document discusses MySQL record operations using MySQLi in PHP. It provides an introduction to MySQLi and its advantages over MySQL such as prepared statements. It then covers key MySQLi methods for fetching data, including fetch_assoc(), fetch_array(), and fetch_object(). It also discusses INSERT, UPDATE, and DELETE statements for managing data and prepared statements for more secure and efficient queries. The document concludes with a demonstration of these concepts.
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
MySQL Record Operations
1. MySQL Record Operations
Jamshid Hashimi
Trainer, Cresco Solution
http://www.jamshidhashimi.com
jamshid@netlinks.af
@jamshidhashimi
ajamshidhashimi
Afghanistan Workforce
Development Program
2. Agenda
• MySQLi Introduction
• mysqli() Overview
• mysqli Methods and Properties
• INSERT, UPDATE & DELETE
• mysqli Prepared Statements
• Inserting, Updating and Deleting Records
• Managing Data
3. MySQLi Introduction
• MySQLi, often called MySQL Improved, has
several advantages over regular MySQL,
including support for prepared statements
(which helps prevent SQL injection, a common
security issue) and object-oriented code.
4. MySQLi Introduction
• The mysqli extension has a number of
benefits, the key enhancements over the
mysql extension being:
– Object-oriented interface
– Support for Prepared Statements
– Support for Multiple Statements
– Support for Transactions
– Enhanced debugging capabilities
– Embedded server support
6. MySQLi
• mysqli_fetch_assoc (fetch_assoc())
– Fetch a result row as an associative array
/* fetch associative array */
while ($row = $result->fetch_assoc()) {
printf ("%s n", $row["Name”]);
}
7. MySQLi
• mysqli_fetch_array (fetch_array())
– Fetch a result row as an associative, a numeric
array, or both
– MYSQLI_NUM
– MYSQLI_ASSOC
– MYSQLI_BOTH
/* associative array */
$row = $result->fetch_array(MYSQLI_ASSOC);
printf ("%sn", $row["Name”]);
8. MySQLi
• mysqli_fetch_object (fetch_object())
– Returns the current row of a result set as an
object
/* fetch object array */
while ($obj = $result->fetch_object()) {
printf ("%s n", $obj->Name);
}
9. MySQLi
• Do we need to close the connection?
– Open connections (and similar resources) are
automatically destroyed at the end of script
execution. However, you should still close or free
all connections, result sets and statement handles
as soon as they are no longer required. This will
help return resources to PHP and MySQL faster.
10. INSERT
• The INSERT INTO statement is used to insert
new records in a table.
• Syntax:
INSERT INTO table_name (column1, column2,
column3,...)
VALUES (value1, value2, value3,...)
11. UPDATE
• The UPDATE statement is used to modify data
in a table.
• Syntax:
UPDATE table_name
SET column1=value, column2=value2,...
WHERE some_column=some_value
12. DELETE
• The DELETE statement is used to delete
records in a table.
• Syntax:
DELETE FROM table_name
WHERE some_column = some_value
13. Prepared Statements
• Prepared statements provide developers with
the ability to create queries that are more
secure, have better performance, and are
more convenient to write.
14. Prepared Statements
if($rs = $mysqli->prepare("SELECT first_name FROM actor
WHERE first_name = ?")){
//binding parameteres
$rs->bind_param("s",$name);
$name = "BON";
//Execute it
$rs->execute();
//Bind results
$rs->bind_result($name);
//Fetch records
$rs->fetch();
printf("%s", $name);
$rs->close();
}else{
echo $mysqli->error;
}
$mysqli->close();