參考來源:
http://www.dantescode.com/php-5-postgresql-and-pdo/the-database-api/
-------------------------------------------------------------------------------------
■ 資料庫基本功能 C.R.U.D.L.S.
C.R.U.D.L.S. 指:
1. C = Create (INSERT)
2. R = Read (SELECT one)
3. U = Update (UPDATE)
4. D = Delete (DELETE)
5. L = List (SELECT many)
6. S = Search (SELECT many)
List & Search 通常會用到 3 種功能來達成 (F. O. P.):
1. 過濾 (WHERE)
SQL 敘述中使用 ‘WHERE condition’ 或 ‘AND condition’ 子句。
2. 順序 (ORDER BY)
SQL 敘述中使用 ORDER BY 子句 (ASC 或 DESC)。
3. 分頁 (LIMIT x OFFSET y)
使用到 SQL 語法「LIMIT x OFFSET y 」,端視資料庫而不同。
[範例]
SELECT * FROM employee
WHERE is_active IS TRUE
AND last_name ILIKE '%lore%'
ORDER BY last_name DESC
LIMIT 20 OFFSET 0
FOP 部分:
1> Filter: AND last_name ILIKE ‘%lore%’
2> Order: ORDER BY last_name DESC
3> Pager: LIMIT 20 OFFSET 0
■ PHP 5 的 CRUDLS
CRUDLS 功能所須的 function 如下:
(integer) query_update(string $sql);
(integer) query_insert(string $sql);
(integer) query_delete(string $sql);
(mixed) select_value(string $sql, string $column_name);
(array) select_row(string $sql);
(array) select_many(string $sql [, string $key_column_name [, string $value_column_name]]);
如果資料庫是 PostgreSQL, 可省略 query_insert 或 query_update functions,在 INSERT & UPDATE 後加上 RETURNING 子句可達成相同功能(轉換成 SELECT 敘述)
使用 transactions 功能,須另外使用下列 functions:
1. begin_transaction()
2. rollback()
3. commit()
留言列表