SPI_getvalue
SPI_getvalue — получить строковое значение указанного столбца
Синтаксис
char * SPI_getvalue(HeapTuplerow
, TupleDescrowdesc
, intcolnumber
)
Описание
SPI_getvalue
возвращает строковое представление значения указанного столбца.
Результат возвращается в памяти, размещённой функцией palloc
. (Когда он будет не нужен, эту память можно освободить с помощью pfree
.)
Аргументы
HeapTuple
row
строка с нужными данными
TupleDesc
rowdesc
описание строк
int
colnumber
номер столбца (начиная с 1)
Возвращаемое значение
Значение столбца, либо NULL
, если столбец содержит NULL, colnumber
вне допустимого диапазона (в SPI_result
при этом устанавливается SPI_ERROR_NOATTRIBUTE
) или если отсутствует функция вывода (в SPI_result
устанавливается SPI_ERROR_NOOUTFUNC
).
2.2. Concepts
PostgreSQL is a relational database management system (RDBMS). That means it is a system for managing data stored in relations. Relation is essentially a mathematical term for table. The notion of storing data in tables is so commonplace today that it might seem inherently obvious, but there are a number of other ways of organizing databases. Files and directories on Unix-like operating systems form an example of a hierarchical database. A more modern development is the object-oriented database.
Each table is a named collection of rows. Each row of a given table has the same set of named columns, and each column is of a specific data type. Whereas columns have a fixed order in each row, it is important to remember that SQL does not guarantee the order of the rows within the table in any way (although they can be explicitly sorted for display).
Tables are grouped into databases, and a collection of databases managed by a single PostgreSQL server instance constitutes a database cluster.