xref: /aoo42x/main/offapi/com/sun/star/sdbcx/Column.idl (revision cdf0e10c)
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_Column_idl__
28#define __com_sun_star_sdbcx_Column_idl__
29
30#ifndef __com_sun_star_beans_XPropertySet_idl__
31#include <com/sun/star/beans/XPropertySet.idl>
32#endif
33
34 module com {  module sun {  module star {  module sdbcx {
35
36 published interface XDataDescriptorFactory;
37
38
39/** describes the common properties of a database column.
40 */
41published service Column
42{
43
44	/** optional, could be used to copy a database column.
45	 */
46	[optional] interface XDataDescriptorFactory;
47
48	// gives access to the properties.
49	interface com::sun::star::beans::XPropertySet;
50
51
52	/** is the name of the column.
53	 */
54	[readonly, property] string Name;
55
56
57	/** is the
58		<type scope="com::sun::star::sdbc">DataType</type>
59		of the column.
60	 */
61	[readonly, property] long Type;
62
63
64	/** is the type name used by the database. If the column type is
65		a user-defined type, then a fully-qualified type name is returned.
66		<b>
67		Note:
68		</b>
69		May be empty.
70	 */
71	[readonly, property] string TypeName;
72
73
74	/** gets a column's number of decimal digits.
75	 */
76	[readonly, property] long Precision;
77
78
79	/** gets a column's number of digits to right of the decimal point.
80	 */
81	[readonly, property] long Scale;
82
83
84	/** indicates the nullability of values in the designated column.
85		@see com::sun::star::sdbc::ColumnValue
86	 */
87	[readonly, property] long IsNullable;
88
89
90	/** indicates whether the column is automatically numbered, thus read-only.
91		@see com::sun::star::sdbc::ColumnValue
92	 */
93	[readonly, property] boolean IsAutoIncrement;
94
95
96	/** indicates whether the column is a cash value.
97	 */
98	[readonly, property] boolean IsCurrency;
99
100
101
102	/** indicates that the column contains some kind of time or date stamp
103		used to track updates.
104	 */
105	[optional, readonly, property] boolean IsRowVersion;
106
107
108	/** keeps a description of the object.
109	 */
110	[optional, readonly, property] string Description;
111
112
113	/** keeps a default value for a column, is provided as string.
114	 */
115	[optional, readonly, property] string DefaultValue;
116
117};
118
119//=============================================================================
120
121}; }; }; };
122
123/*===========================================================================
124===========================================================================*/
125#endif
126