1/************************************************************** 2 * 3 * Licensed to the Apache Software Foundation (ASF) under one 4 * or more contributor license agreements. See the NOTICE file 5 * distributed with this work for additional information 6 * regarding copyright ownership. The ASF licenses this file 7 * to you under the Apache License, Version 2.0 (the 8 * "License"); you may not use this file except in compliance 9 * with the License. You may obtain a copy of the License at 10 * 11 * http://www.apache.org/licenses/LICENSE-2.0 12 * 13 * Unless required by applicable law or agreed to in writing, 14 * software distributed under the License is distributed on an 15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16 * KIND, either express or implied. See the License for the 17 * specific language governing permissions and limitations 18 * under the License. 19 * 20 *************************************************************/ 21 22 23#ifndef __com_sun_star_sdbcx_Table_idl__ 24#define __com_sun_star_sdbcx_Table_idl__ 25 26#ifndef __com_sun_star_beans_XPropertySet_idl__ 27#include <com/sun/star/beans/XPropertySet.idl> 28#endif 29 30 module com { module sun { module star { module sdbcx { 31 32 published interface XDataDescriptorFactory; 33 published interface XColumnsSupplier; 34 published interface XIndexesSupplier; 35 published interface XKeysSupplier; 36 published interface XRename; 37 published interface XAlterTable; 38 39 40/** used to specify a table in a database. A table is described by its 41 name and one or more columns. 42 43 <p> 44 In addition, it may contain indexes to improve the performance in 45 the retrieval of the table's data and keys, and to define semantic rules for the table. 46 </p> 47 <p> 48 <b> 49 Note: 50 </b> 51 All properties and columns of a table could by modified before 52 it is appended to a database. In that case, the service is in fact a 53 descriptor. On existing tables, a user might alter columns, add or delete 54 columns, indexes, and keys depending on the capabilities of the database and on 55 the user's privileges. 56 </p> 57 58 @see com::sun::star::sdbc::XDatabaseMetaData 59 @see com::sun::star::sdbcx::Privilege 60 */ 61published service Table 62{ 63 64 /** optional, could be used to copy an table. 65 */ 66 [optional] interface XDataDescriptorFactory; 67 68 69 /** access to the contained table columns. 70 */ 71 interface XColumnsSupplier; 72 73 74 /** optional, provides the access of the table indexes. 75 */ 76 [optional] interface XIndexesSupplier; 77 78 79 /** optional, provides the access to the table keys. 80 */ 81 [optional] interface XKeysSupplier; 82 83 84 /** optional, allows the renaming of tables. 85 */ 86 [optional] interface XRename; 87 88 89 /** optional, allows the altering of columns. 90 */ 91 [optional] interface XAlterTable; 92 93 // gives access to the properties 94 interface com::sun::star::beans::XPropertySet; 95 96 97 /** is the name of the table. 98 */ 99 [readonly, property] string Name; 100 101 102 /** is the name of the table catalog. 103 */ 104 [readonly, property] string CatalogName; 105 106 107 /** is the name of the table schema. 108 */ 109 [readonly, property] string SchemaName; 110 111 112 /** supplies a comment on the table. Could be empty, if not supported by 113 the driver. 114 */ 115 [readonly, property] string Description; 116 117 118 /** indicates the type of the table like (TABLE, VIEW, SYSTEM TABLE). 119 Could be empty, if not supported by the driver. 120 */ 121 [optional, readonly, property] string Type; 122}; 123 124//============================================================================= 125 126}; }; }; }; 127 128/*=========================================================================== 129===========================================================================*/ 130#endif 131