男女疯狂一边摸一边做羞羞视频|啊好深好硬快点用力别停动态图|亚洲一区无码中文字幕|特级无码毛片免费视频播放▽|久久狠狠躁免费观看|国内精品久久久久久网站

Basic usage

These examples contain user defined functions similar to legacy MySQL functions.

示例 #1 PostgreSQL user defined functions example

<?php
// This function should be needed, since PostgreSQL connection binds database.
function pg_list_dbs($db)
{
    
assert(is_resource($db));
    
$query '
SELECT
 d.datname as "Name",
 u.usename as "Owner",
 pg_encoding_to_char(d.encoding) as "Encoding"
FROM
 pg_database d LEFT JOIN pg_user u ON d.datdba = u.usesysid
ORDER BY 1;
'
;
    return 
pg_query($db$query);
}

// List tables.
function pg_list_tables($db)
{
    
assert(is_resource($db));
    
$query "
SELECT
 c.relname as \"Name\",
 CASE c.relkind WHEN 'r' THEN 'table' WHEN 'v' THEN 'view' WHEN 'i' THEN 'index' WHEN 'S' THEN 'sequence' WHEN 's' THEN 'special' END as \"Type\",
  u.usename as \"Owner\"
FROM
 pg_class c LEFT JOIN pg_user u ON c.relowner = u.usesysid
WHERE
 c.relkind IN ('r','v','S','')
 AND c.relname !~ '^pg_'
ORDER BY 1;
"
;
    return 
pg_query($db$query);
}

// See also pg_meta_data(). It returns field definition as array.
function pg_list_fields($db$table)
{
    
assert(is_resource($db));
    
$query "
SELECT
 a.attname,
 format_type(a.atttypid, a.atttypmod),
 a.attnotnull,
 a.atthasdef,
 a.attnum
FROM
 pg_class c,
 pg_attribute a
WHERE
 c.relname = '"
.$table."'
 AND a.attnum > 0 AND a.attrelid = c.oid
ORDER BY a.attnum;
"
;
    return 
pg_query($db$query);
}
?>

男女疯狂一边摸一边做羞羞视频|啊好深好硬快点用力别停动态图|亚洲一区无码中文字幕|特级无码毛片免费视频播放▽|久久狠狠躁免费观看|国内精品久久久久久网站