pdf viewer in asp net c# : How to add image to pdf document application Library tool html .net asp.net online postgresql-9.4-A435-part2956

Chapter 9. Functions and Operators
9.23.2.
NOT IN
expression
NOT IN (
value
[, ...])
The right-hand side is a parenthesized list of scalar expressions. The result is “true” if the left-hand
expression’s result is unequal to all of the right-hand expressions. This is a shorthand notation for
expression
<>
value1
AND
expression
<>
value2
AND
...
Note that if the left-hand expression yields null, or if there are no equal right-hand values and at least
one right-hand expression yields null, the result of the
NOT IN
construct will be null, not true as one
mightnaively expect. This is in accordancewith SQL’s normal rules for Booleancombinations of null
values.
Tip:
x NOT IN y
is equivalent to
NOT (x IN y)
in all cases. However, nullvalues are much more
likely to trip up the novice when working with
NOT IN
than when working with
IN
.It is best to
express your condition positively if possible.
9.23.3.
ANY
/
SOME
(array)
expression operator
ANY (
array expression
)
expression operator
SOME (
array expression
)
The right-hand side is a parenthesized expression, which must yield an array value. The left-hand
expression is evaluated and compared to eachelement of the array using the given
operator
,which
must yield a Boolean result. The result of
ANY
is “true” if any true result is obtained. The result is
“false” if no true result is found (including the case where the array has zero elements).
If the array expression yields a null array, the result of
ANY
will be null. If the left-hand expression
yields null, the result of
ANY
is ordinarily null(thougha non-strict comparisonoperator could possibly
yield a different result). Also, if the right-hand array contains any null elements and no true compar-
ison result is obtained, the result of
ANY
will be null, not false (again, assuming a strict comparison
operator). This is in accordance withSQL’s normal rules for Boolean combinations of null values.
SOME
is a synonym for
ANY
.
9.23.4.
ALL
(array)
expression operator
ALL (
array expression
)
The right-hand side is a parenthesized expression, which must yield an array value. The left-hand
expression is evaluated and compared to eachelement of the array using the given
operator
,which
must yield a Boolean result. The result of
ALL
is “true” if all comparisons yield true (including the
case where the array has zero elements). The result is “false” if any false result is found.
278
How to add image to pdf document - insert images into PDF in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Sample C# code to add image, picture, logo or digital photo into PDF document page using PDF page editor control
add picture to pdf; add signature image to pdf acrobat
How to add image to pdf document - VB.NET PDF insert image library: insert images into PDF in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
Guide VB.NET Programmers How to Add Images in PDF Document
add jpg to pdf file; adding image to pdf in preview
Chapter 9. Functions and Operators
If the array expression yields a null array, the result of
ALL
will be null. If the left-hand expression
yields null, the result of
ALL
is ordinarily null(thougha non-strict comparisonoperator could possibly
yield a different result). Also, if the right-hand array contains any null elements and no false compar-
ison result is obtained, the result of
ALL
will be null, not true (again, assuming a strict comparison
operator). This is in accordance withSQL’s normal rules for Boolean combinations of null values.
9.23.5. Row Constructor Comparison
row_constructor operator row_constructor
Each side is a row constructor, as described in Section 4.2.13. The two row values must have the
same number of fields. Each side is evaluated and they are compared row-wise. Row constructor
comparisons are allowed when the
operator
is
=
,
<>
,
<
,
<=
,
>
or
>=
.Every row element must
be of a type which has a default B-tree operator class or the attempted comparison may generate an
error.
Note: Errors related to the number or types of elements might not occur if the comparison is
resolved using earlier columns.
The
=
and
<>
cases work slightly differently from the others. Two rows are considered equal if
all their corresponding members are non-null and equal; the rows are unequal if any corresponding
members are non-null and unequal; otherwise the result of the row comparison is unknown (null).
For the
<
,
<=
,
>
and
>=
cases, the row elements are compared left-to-right, stopping as soon as
an unequal or null pair of elements is found. If either of this pair of elements is null, the result of
the row comparison is unknown (null); otherwise comparison of this pair of elements determines the
result. For example,
ROW(1,2,NULL) < ROW(1,3,0)
yields true, not null, because the thirdpair of
elements are not considered.
Note: Prior to PostgreSQL 8.2, the
<
,
<=
,
>
and
>=
cases were not handled per SQL specifica-
tion. A comparison like
ROW(a,b) < ROW(c,d)
was implementedas
< c AND b < d
whereas
the correct behavior is equivalent to
< c OR (a = c AND b < d)
.
row_constructor
IS DISTINCT FROM
row_constructor
This construct is similar to a
<>
row comparison, but it does not yield null for null inputs. Instead,
any null value is considered unequal to (distinct from) any non-null value, and any two nulls are
considered equal (not distinct). Thus the result will either be true or false, never null.
row_constructor
IS NOT DISTINCT FROM
row_constructor
This construct is similar to a
=
row comparison, but it does not yield null for null inputs. Instead,
any null value is considered unequal to (distinct from) any non-null value, and any two nulls are
considered equal (not distinct). Thus the result will always be either true or false, never null.
9.23.6. Composite Type Comparison
record operator record
279
C# PDF Password Library: add, remove, edit PDF file password in C#
in C#.NET framework. Support to add password to PDF document online or in C#.NET WinForms for PDF file protection. Able to create a
add signature image to pdf; how to add image to pdf file
C# PDF Image Extract Library: Select, copy, paste PDF images in C#
Get image information, such as its location, zonal information, metadata, and so on. Able to edit, add, delete, move, and output PDF document image.
add png to pdf preview; add photo to pdf for
Chapter 9. Functions and Operators
The SQL specification requires row-wise comparison to return NULL if the result depends on com-
paring two NULL values or a NULL and a non-NULL. PostgreSQL does this only when comparing
the results of tworowconstructors (as inSection 9.23.5) or comparing arow constructor to the output
of a subquery (as in Section 9.22). In other contexts where two composite-type values are compared,
two NULL field values are considered equal, and a NULL is considered larger than a non-NULL.
This is necessaryin order to have consistent sorting and indexing behavior for composite types.
Each side is evaluated and they are compared row-wise. Composite type comparisons are allowed
when the
operator
is
=
,
<>
,
<
,
<=
,
>
or
>=
,or has semantics similar to one of these. (To be
specific, anoperator can be a row comparison operator if it is a member of a B-tree operator class, or
is thenegator of the
=
member of a B-tree operator class.) The default behavior of theabove operators
is the same as for
IS [ NOT ] DISTINCT FROM
for row constructors (see Section 9.23.5).
To support matching of rows which include elements without a default B-tree operator class, the
following operators are defined for composite type comparison:
*
=
,
*
<>
,
*
<
,
*
<=
,
*
>
,and
*
>=
.
These operators compare the internal binary representation of the two rows. Two rows might have a
different binary representation even though comparisons of the two rows with the equality operator
is true. The ordering of rows under these comparison operators is deterministic but not otherwise
meaningful. These operators are used internally for materialized views and might be useful for other
specializedpurposes suchas replication butare not intendedtobe generally usefulfor writingqueries.
9.24. Set Returning Functions
This section describes functions that possibly return more than one row. The most widely used func-
tions in this class are series generating functions, as detailed in Table 9-54 and Table 9-55. Other,
more specialized set-returning functions are described elsewhere in this manual. See Section 7.2.1.4
for ways to combine multiple set-returning functions.
Table 9-54. Series Generating Functions
Function
Argument Type
Return Type
Description
generate_series(
start
,
stop
)
int
or
bigint
setof int
or
setof
bigint
(same as
argument type)
Generate a series of
values, from
start
to
stop
with a step size
of one
generate_series(
start
,
stop
,
step
)
int
or
bigint
setof int
or
setof
bigint
(same as
argument type)
Generate a series of
values, from
start
to
stop
with a step size
of
step
generate_series(
start
,
stop
,
step interval
)
timestamp
or
timestamp with
time zone
setof timestamp
or
setof timestamp
with time zone
(same as argument
type)
Generate a series of
values, from
start
to
stop
with a step size
of
step
When
step
is positive, zero rows are returned if
start
is greater than
stop
.Conversely, when
step
is negative, zero rows are returned if
start
is less than
stop
.Zero rows are also returned for
NULL
inputs. It is an error for
step
to be zero. Some examples follow:
SELECT
*
FROM generate_series(2,4);
280
VB.NET PDF Image Extract Library: Select, copy, paste PDF images
More detailed functions are listed below. DLLs for PDF Image Extraction in VB.NET. Add necessary references: VB.NET: Extract All Images from PDF Document.
add image to pdf in preview; add photo to pdf file
VB.NET PDF Password Library: add, remove, edit PDF file password
allowed. passwordSetting.IsCopy = True ' Allow to assemble document. passwordSetting.IsAssemble = True ' Add password to PDF file.
add an image to a pdf form; adding jpg to pdf
Chapter 9. Functions and Operators
generate_series
-----------------
2
3
4
(3 rows)
SELECT
*
FROM generate_series(5,1,-2);
generate_series
-----------------
5
3
1
(3 rows)
SELECT
*
FROM generate_series(4,3);
generate_series
-----------------
(0 rows)
-- this example relies on the date-plus-integer operator
SELECT current_date + s.a AS dates FROM generate_series(0,14,7) AS s(a);
dates
------------
2004-02-05
2004-02-12
2004-02-19
(3 rows)
SELECT
*
FROM generate_series(’2008-03-01 00:00’::timestamp,
’2008-03-04 12:00’, ’10 hours’);
generate_series
---------------------
2008-03-01 00:00:00
2008-03-01 10:00:00
2008-03-01 20:00:00
2008-03-02 06:00:00
2008-03-02 16:00:00
2008-03-03 02:00:00
2008-03-03 12:00:00
2008-03-03 22:00:00
2008-03-04 08:00:00
(9 rows)
Table 9-55. Subscript Generating Functions
Function
Return Type
Description
generate_subscripts(
array
anyarray
,
dim int
)
setof int
Generate a series comprising
the given array’s subscripts.
281
C# Create PDF from images Library to convert Jpeg, png images to
List<Bitmap> images = new List<Bitmap>(); images.Add(new Bitmap(Program.RootPath + "\\" 1.gif")); / Build a PDF document with GIF image.
add picture to pdf online; add photo to pdf preview
C# PDF: How to Create PDF Document Viewer in C#.NET with
The PDF document manipulating add-on from RasterEdge DocImage SDK Support thumbnail image and outline preview for quick PDF document page navigation;
add an image to a pdf in preview; adding images to pdf files
Chapter 9. Functions and Operators
Function
Return Type
Description
generate_subscripts(
array
anyarray
,
dim int
,
reverse
boolean
)
setof int
Generate a series comprising
the given array’s subscripts.
When
reverse
is true, the
series is returned in reverse
order.
generate_subscripts
is a convenience function that generates the set of valid subscripts for the
specifieddimensionof thegiven array. Zerorows arereturnedfor arrays thatdonothavetherequested
dimension, or for NULL arrays (but valid subscripts are returned for NULL array elements). Some
examples follow:
-- basic usage
SELECT generate_subscripts(’{NULL,1,NULL,2}’::int[], 1) AS s;
s
---
1
2
3
4
(4 rows)
-- presenting an array, the subscript and the subscripted
-- value requires a subquery
SELECT
*
FROM arrays;
a
--------------------
{-1,-2}
{100,200,300}
(2 rows)
SELECT a AS array, s AS subscript, a[s] AS value
FROM (SELECT generate_subscripts(a, 1) AS s, a FROM arrays) foo;
array
| subscript | value
---------------+-----------+-------
{-1,-2}
|
1 |
-1
{-1,-2}
|
2 |
-2
{100,200,300} |
1 |
100
{100,200,300} |
2 |
200
{100,200,300} |
3 |
300
(5 rows)
-- unnest a 2D array
CREATE OR REPLACE FUNCTION unnest2(anyarray)
RETURNS SETOF anyelement AS $$
select $1[i][j]
from generate_subscripts($1,1) g1(i),
generate_subscripts($1,2) g2(j);
$$ LANGUAGE sql IMMUTABLE;
CREATE FUNCTION
SELECT
*
FROM unnest2(ARRAY[[1,2],[3,4]]);
unnest2
---------
1
2
3
282
C# PDF Sticky Note Library: add, delete, update PDF note in C#.net
PDF document processing tool, which can perform various PDF annotation works in easy ways. Using this .NET PDF annotation control, C# developers can add a
add photo to pdf file; add picture to pdf in preview
DocImage SDK for .NET: Web Document Image Viewer Online Demo
on the client side without additional add-ins and Microsoft PowerPoint: PPTX, PPS, PPSX; PDF: Portable Document Format; TIFF: Tagged Image File Format;
add image to pdf; add jpeg to pdf
Chapter 9. Functions and Operators
4
(4 rows)
When a function in the
FROM
clause is suffixed by
WITH ORDINALITY
,a
bigint
column is appended
to the output which starts from 1 and increments by 1 for each row of the function’s output. This is
most useful in the case of set returning functions such as
unnest()
.
-- set returning function WITH ORDINALITY
SELECT
*
FROM pg_ls_dir(’.’) WITH ORDINALITY AS t(ls,n);
ls
| n
-----------------+----
pg_serial
|
1
pg_twophase
|
2
postmaster.opts |
3
pg_notify
|
4
postgresql.conf |
5
pg_tblspc
|
6
logfile
|
7
base
|
8
postmaster.pid
|
9
pg_ident.conf
| 10
global
| 11
pg_clog
| 12
pg_snapshots
| 13
pg_multixact
| 14
PG_VERSION
| 15
pg_xlog
| 16
pg_hba.conf
| 17
pg_stat_tmp
| 18
pg_subtrans
| 19
(19 rows)
9.25. System Information Functions
Table 9-56 shows several functions that extract session and system information.
Inadditiontothefunctions listed in thissection, therearea number of functions relatedtothestatistics
system that also provide system information. See Section 27.2.2 for more information.
Table 9-56. Session Information Functions
Name
Return Type
Description
current_catalog
name
name of current database
(called “catalog” in the SQL
standard)
current_database()
name
name of current database
current_query()
text
text of the currently executing
query, as submitted by the
client (might contain more than
one statement)
283
Chapter 9. Functions and Operators
Name
Return Type
Description
current_schema
[()]
name
name of current schema
current_schemas(
boolean
)
name[]
names of schemas in search
path, optionally including
implicit schemas
current_user
name
user name of current execution
context
inet_client_addr()
inet
address of the remote
connection
inet_client_port()
int
port of the remote connection
inet_server_addr()
inet
address of the local connection
inet_server_port()
int
port of the local connection
pg_backend_pid()
int
Process ID of the server
process attached to the current
session
pg_conf_load_time()
timestamp with time
zone
configuration loadtime
pg_is_other_temp_schema(
oid
)
boolean
is schema another session’s
temporary schema?
pg_listening_channels()
setof text
channel names that the session
is currently listening on
pg_my_temp_schema()
oid
OID of session’s temporary
schema, or 0 if none
pg_postmaster_start_time()
timestamp with time
zone
server start time
pg_trigger_depth()
int
current nesting level of
PostgreSQL triggers (0 if not
called, directly or indirectly,
from inside a trigger)
session_user
name
session user name
user
name
equivalent to
current_user
version()
text
PostgreSQL version
information
Note:
current_catalog
,
current_schema
,
current_user
,
session_user
,and
user
have spe-
cial syntactic status in SQL: they must be called without trailing parentheses. (In PostgreSQL,
parentheses can optionally be used with
current_schema
,but not with the others.)
The
session_user
is normallythe user whoinitiatedthe currentdatabaseconnection;butsuperusers
can change this setting with SET SESSION AUTHORIZATION. The
current_user
is the user
identifier that is applicable for permission checking. Normally it is equal to the session user, but it
can be changed with SET ROLE. It also changes during the execution of functions with the attribute
SECURITY DEFINER
.In Unix parlance, the session user is the “real user” and the current user is the
“effective user”.
current_schema
returns the name of the schema thatis first in the search path (or a null value if the
search path is empty). This is the schema that will be used for any tables or other named objects that
284
Chapter 9. Functions and Operators
are created without specifying a target schema.
current_schemas(boolean)
returns an array of
the names of all schemas presently in the search path. The Boolean option determines whether or not
implicitly includedsystem schemas such as
pg_catalog
are included in the returned search path.
Note: The search path can be altered at run time. The commandis:
SET search_path TO
schema
[,
schema
, ...]
pg_listening_channels
returns a set of names of channels that the current sessionis listeningto.
See LISTEN for more information.
inet_client_addr
returns the IP address of the current client, and
inet_client_port
returns
the port number.
inet_server_addr
returns the IP address onwhich the server acceptedthecurrent
connection, and
inet_server_port
returns theport number. All these functions return NULL if the
current connection is via a Unix-domain socket.
pg_my_temp_schema
returns the OID of the current session’s temporary schema, or zero if it has
none (because it has not created any temporary tables).
pg_is_other_temp_schema
returns true if
the given OID is the OID of another session’s temporary schema. (This can be useful, for example, to
exclude other sessions’ temporary tables from a catalog display.)
pg_postmaster_start_time
returns the
timestamp with time zone
when the server started.
pg_conf_load_time
returns the
timestamp with time zone
when the server configuration
files were last loaded. (If the current session was alive at the time, this will be the time when the
session itself re-read the configuration files, so the reading will vary a little in different sessions.
Otherwise it is the time when the postmaster process re-read the configuration files.)
version
returns a string describing the PostgreSQL server’s version.
Table 9-57 lists functions that allow the user to query object access privileges programmatically. See
Section 5.6for more information about privileges.
Table 9-57. Access Privilege Inquiry Functions
Name
Return Type
Description
has_any_column_privilege
(
user
,
table
,
privilege
)
boolean
does user have privilege for any
column of table
has_any_column_privilege
(
table
,
privilege
)
boolean
does current user have privilege
for any column of table
has_column_privilege
(
user
,
table
,
column
,
privilege
)
boolean
does user have privilege for
column
has_column_privilege
(
table
,
column
,
privilege
)
boolean
does current user have privilege
for column
has_database_privilege
(
user
,
database
,
privilege
)
boolean
does user have privilege for
database
has_database_privilege
(
database
,
privilege
)
boolean
does current user have privilege
for database
has_foreign_data_wrapper_privilege
(
user
,
fdw
,
privilege
)
boolean
does user have privilege for
foreign-data wrapper
285
Chapter 9. Functions and Operators
Name
Return Type
Description
has_foreign_data_wrapper_privilege
(
fdw
,
privilege
)
boolean
does current user have privilege
for foreign-data wrapper
has_function_privilege
(
user
,
function
,
privilege
)
boolean
does user have privilege for
function
has_function_privilege
(
function
,
privilege
)
boolean
does current user have privilege
for function
has_language_privilege
(
user
,
language
,
privilege
)
boolean
does user have privilege for
language
has_language_privilege
(
language
,
privilege
)
boolean
does current user have privilege
for language
has_schema_privilege
(
user
,
schema
,
privilege
)
boolean
does user have privilege for
schema
has_schema_privilege
(
schema
,
privilege
)
boolean
does current user have privilege
for schema
has_sequence_privilege
(
user
,
sequence
,
privilege
)
boolean
does user have privilege for
sequence
has_sequence_privilege
(
sequence
,
privilege
)
boolean
does current user have privilege
for sequence
has_server_privilege
(
user
,
server
,
privilege
)
boolean
does user have privilege for
foreign server
has_server_privilege
(
server
,
privilege
)
boolean
does current user have privilege
for foreign server
has_table_privilege
(
user
,
table
,
privilege
)
boolean
does user have privilege for
table
has_table_privilege
(
table
,
privilege
)
boolean
does current user have privilege
for table
has_tablespace_privilege
(
user
,
tablespace
,
privilege
)
boolean
does user have privilege for
tablespace
has_tablespace_privilege
(
tablespace
,
privilege
)
boolean
does current user have privilege
for tablespace
pg_has_role
(
user
,
role
,
privilege
)
boolean
does user have privilege for role
pg_has_role
(
role
,
privilege
)
boolean
does current user have privilege
for role
has_table_privilege
checks whether a user can access a table in a particular way. The user can
be specifiedby name, by OID(
pg_authid.oid
),
public
to indicate the PUBLIC pseudo-role, or if
the argument is omitted
current_user
is assumed. The table can be specified by name or by OID.
(Thus, there are actually six variants of
has_table_privilege
,which can be distinguished by the
number and types of their arguments.) When specifyingbyname, the name canbeschema-qualifiedif
necessary. The desiredaccess privilegetype is specified by a textstring, which mustevaluate toone of
the values
SELECT
,
INSERT
,
UPDATE
,
DELETE
,
TRUNCATE
,
REFERENCES
,or
TRIGGER
.Optionally,
WITH GRANT OPTION
can be added toa privilege type totest whether the privilegeis heldwith grant
option. Also, multiple privilege types can be listed separated bycommas, inwhich case the resultwill
be
true
if anyof the listed privileges is held. (Case of the privilege stringis not significant, and extra
whitespace is allowed between but not within privilege names.) Some examples:
SELECT has_table_privilege(’myschema.mytable’, ’select’);
286
Chapter 9. Functions and Operators
SELECT has_table_privilege(’joe’, ’mytable’, ’INSERT, SELECT WITH GRANT OPTION’);
has_sequence_privilege
checks whether a user can access a sequence in a particular way. The
possibilities for its arguments are analogous to
has_table_privilege
.The desired accessprivilege
type must evaluate to one of
USAGE
,
SELECT
,or
UPDATE
.
has_any_column_privilege
checks whether a user canaccess anycolumn of a table inaparticular
way. Its argument possibilities are analogous to
has_table_privilege
,except that the desired ac-
cess privilegetype mustevaluatetosome combinationof
SELECT
,
INSERT
,
UPDATE
,or
REFERENCES
.
Note that having any of these privileges at the table level implicitly grants it for each column of the
table, so
has_any_column_privilege
will always return
true
if
has_table_privilege
does
for the same arguments. But
has_any_column_privilege
also succeeds if there is a column-level
grant of the privilege for at least one column.
has_column_privilege
checks whether a user can access a column in a particular way. Its argu-
ment possibilities are analogous to
has_table_privilege
,withthe additionthat the columncan be
specified either by name or attribute number. The desired access privilege type must evaluate to some
combination of
SELECT
,
INSERT
,
UPDATE
,or
REFERENCES
.Note that having anyof these privileges
at the table level implicitly grants it for each column of the table.
has_database_privilege
checks whether a user can access a database in a particular way. Its
argument possibilities are analogous to
has_table_privilege
.The desired access privilege type
must evaluate to some combination of
CREATE
,
CONNECT
,
TEMPORARY
,or
TEMP
(which is equivalent
to
TEMPORARY
).
has_function_privilege
checks whether a user can access a function in a particular way. Its
argument possibilities are analogous to
has_table_privilege
.When specifying a function by a
text string rather than by OID, the allowed input is the same as for the
regprocedure
data type (see
Section 8.18). The desired access privilege type must evaluate to
EXECUTE
.An example is:
SELECT has_function_privilege(’joeuser’, ’myfunc(int, text)’, ’execute’);
has_foreign_data_wrapper_privilege
checks whether a user can access a foreign-data wrap-
per in a particular way. Its argument possibilities are analogous to
has_table_privilege
.The
desired access privilege type must evaluate to
USAGE
.
has_language_privilege
checks whether a user can access a procedural language in a partic-
ular way. Its argument possibilities are analogous to
has_table_privilege
.The desired access
privilege type must evaluate to
USAGE
.
has_schema_privilege
checks whether a user can access a schema in a particular way. Its argu-
ment possibilities are analogous to
has_table_privilege
.The desired access privilege type must
evaluate to some combination of
CREATE
or
USAGE
.
has_server_privilege
checks whether a user can access a foreign server in a particular way. Its
argument possibilities are analogous to
has_table_privilege
.The desired access privilege type
must evaluate to
USAGE
.
has_tablespace_privilege
checks whether a user can access a tablespacein a particular way. Its
argument possibilities are analogous to
has_table_privilege
.The desired access privilege type
must evaluate to
CREATE
.
pg_has_role
checks whether a user can access a role in a particular way. Its argument possibili-
ties are analogous to
has_table_privilege
,except that
public
is not allowed as a user name.
The desired access privilege type must evaluate to some combination of
MEMBER
or
USAGE
.
MEMBER
287
Documents you may be interested
Documents you may be interested