Collections:
PHP ODBC - Including Text Values in SQL Statements
PHP ODBC - How To Include Text Values in SQL Statements?
✍: Guest
Text values in SQL statements should be quoted with single quotes ('). If the text value contains a single quote ('), it should be protected by replacing it with two single quotes (''). In SQL language syntax, two single quotes represents one single quote in string literals.
The tutorial exercise below shows you two INSERT statements. The first one will fail, because it has an un-protected single quote. The second one will be ok, because a str_replace() is used to replace (') with (''):
<?php
$con = odbc_connect('FYI_SQL_SERVER','sa','FYIcenter');
$notes = "It's a search engine!";
$sql = "INSERT INTO fyi_links (id, url, notes) VALUES ("
. " 201, 'www.google.com', '".$notes."')";
if (!odbc_exec($con, $sql)) {
print("SQL statement failed with error:\n");
print(odbc_error($con).": ".odbc_errormsg($con)."\n");
} else {
print("1 rows inserted.\n");
}
$notes = "It's another search engine!";
$notes = str_replace("'", "''", $notes);
$sql = "INSERT INTO fyi_links (id, url, notes) VALUES ("
. " 202, 'www.yahoo.com', '".$notes."')";
if (!odbc_exec($con, $sql)) {
print("SQL statement failed with error:\n");
print(odbc_error($con).": ".odbc_errormsg($con)."\n");
} else {
print("1 rows inserted.\n");
}
odbc_close($con);
?>
If you run this script, you will get something like this:
SQL statement failed with error: 37000: [Microsoft][ODBC SQL Server Driver][SQL Server] Incorrect syntax near 's'. 1 rows inserted.
⇒ PHP ODBC - Including Date and Time Values in SQL Statements
⇐ PHP ODBC - Deleting Existing Rows in a Table
⇑ SQL Server FAQs - PHP ODBC Functions - Managing Tables and Data Rows
2024-05-05, 2215🔥, 0💬
Popular Posts:
How To Revise and Re-Run the Last SQL Command in Oracle? If executed a long SQL statement, found a m...
How To Drop a Stored Procedure in Oracle? If there is an existing stored procedure and you don't wan...
How To Get Year, Month and Day Out of DATETIME Values in SQL Server Transact-SQL? You can use DATEPA...
What Are Date and Time Functions in MySQL? MySQL offers a number of functions for date and time valu...
What Privilege Is Needed for a User to Delete Rows from Tables in Another Schema in Oracle? For a us...