xref: /trunk/main/offapi/com/sun/star/sdbcx/ColumnDescriptor.idl (revision fc9fd3f14a55d77b35643a64034752a178b2a5b0)
1/*************************************************************************
2 *
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * Copyright 2000, 2010 Oracle and/or its affiliates.
6 *
7 * OpenOffice.org - a multi-platform office productivity suite
8 *
9 * This file is part of OpenOffice.org.
10 *
11 * OpenOffice.org is free software: you can redistribute it and/or modify
12 * it under the terms of the GNU Lesser General Public License version 3
13 * only, as published by the Free Software Foundation.
14 *
15 * OpenOffice.org is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18 * GNU Lesser General Public License version 3 for more details
19 * (a copy is included in the LICENSE file that accompanied this code).
20 *
21 * You should have received a copy of the GNU Lesser General Public License
22 * version 3 along with OpenOffice.org.  If not, see
23 * <http://www.openoffice.org/license.html>
24 * for a copy of the LGPLv3 License.
25 *
26 ************************************************************************/
27#ifndef __com_sun_star_sdbcx_ColumnDescriptor_idl__
28#define __com_sun_star_sdbcx_ColumnDescriptor_idl__
29
30#ifndef __com_sun_star_sdbcx_Descriptor_idl__
31#include <com/sun/star/sdbcx/Descriptor.idl>
32#endif
33
34 module com {  module sun {  module star {  module sdbcx {
35
36
37/** describes the common properties of a database column. Could be used for the creation
38    of a database columns within a table.
39    @see com::sun::star::sdbcx::Column
40    @see com::sun::star::sdbcx::Table
41 */
42published service ColumnDescriptor
43{
44    service com::sun::star::sdbcx::Descriptor;
45
46
47    /** is the
48        <type scope="com::sun::star::sdbc">DataType</type>
49        of the column.
50     */
51    [property] long Type;
52
53
54    /** is the type name used by the database. If the column type is
55        a user-defined type, then a fully-qualified type name is returned.
56        May be empty.
57     */
58    [property] string TypeName;
59
60
61    /** gets a column's number of decimal digits.
62     */
63    [property] long Precision;
64
65
66    /** gets a column's number of digits to right of the decimal point.
67     */
68    [property] long Scale;
69
70
71    /** indicates the nullability of values in the designated column.
72        @see com::sun::star::sdbc::ColumnValue
73     */
74    [property] long IsNullable;
75
76
77    /** indicates whether the column is automatically numbered, thus read-only.
78        @see com::sun::star::sdbc::ColumnValue
79     */
80    [property] boolean IsAutoIncrement;
81
82
83    /** indicates that the column contains some kind of time or date stamp
84        used to track updates.
85     */
86    [optional, property] boolean IsRowVersion;
87
88
89    /** keeps a description of the object.
90     */
91    [optional, property] string Description;
92
93
94    /** keeps a default value for a column, is provided as string.
95     */
96    [optional, property] string DefaultValue;
97
98    /** specifies how to create an autoincrement column.
99     */
100    [optional, property] string AutoIncrementCreation;
101};
102
103//=============================================================================
104
105}; }; }; };
106
107#endif
108