1/************************************************************************* 2 * 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * Copyright 2008 by Sun Microsystems, Inc. 6 * 7 * OpenOffice.org - a multi-platform office productivity suite 8 * 9 * $RCSfile: XIndexAlteration.idl,v $ 10 * $Revision: 1.3 $ 11 * 12 * This file is part of OpenOffice.org. 13 * 14 * OpenOffice.org is free software: you can redistribute it and/or modify 15 * it under the terms of the GNU Lesser General Public License version 3 16 * only, as published by the Free Software Foundation. 17 * 18 * OpenOffice.org is distributed in the hope that it will be useful, 19 * but WITHOUT ANY WARRANTY; without even the implied warranty of 20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 21 * GNU Lesser General Public License version 3 for more details 22 * (a copy is included in the LICENSE file that accompanied this code). 23 * 24 * You should have received a copy of the GNU Lesser General Public License 25 * version 3 along with OpenOffice.org. If not, see 26 * <http://www.openoffice.org/license.html> 27 * for a copy of the LGPLv3 License. 28 * 29 ************************************************************************/ 30 31#ifndef __com_sun_star_sdb_tools_XIndexAlteration_idl__ 32#define __com_sun_star_sdb_tools_XIndexAlteration_idl__ 33 34#ifndef __com_sun_star_sdbc_SQLException_idl__ 35#include <com/sun/star/sdbc/SQLException.idl> 36#endif 37#include <com/sun/star/sdb/tools/XConnectionSupplier.idl> 38#ifndef __com_sun_star_lang_XInitialization_idl__ 39#include <com/sun/star/lang/XInitialization.idl> 40#endif 41#ifndef __com_sun_star_beans_XPropertySet_idl__ 42#include <com/sun/star/beans/XPropertySet.idl> 43#endif 44 45//============================================================================= 46module com { module sun { module star { module sdb { module tools { 47//============================================================================= 48 49//----------------------------------------------------------------------------- 50/** allows to alter the indexes of a table. 51 52 @see com::sun::star::sdb::DataSource::Settings 53 @see com::sun::star::sdbcx::XAppend 54 @see com::sun::star::sdbcx::XDrop 55 56 @since OOo 3.3 57*/ 58interface XIndexAlteration 59{ 60 interface XConnectionSupplier; 61 62 /** drops an object of the related container identified by its name. 63 @param table 64 the table to be altered 65 @param index 66 the name of the column to be dropped 67 @throws com::sun::star::sdbc::SQLException 68 if a database access error occurs. 69 */ 70 void dropIndex([in] com::sun::star::beans::XPropertySet table,[in] string index) 71 raises ( com::sun::star::sdbc::SQLException); 72 73 /** creates a new object using the given descriptor and appends it 74 to the related container. 75 <b> 76 Note: 77 </b> 78 The descriptor will not be changed and can be used again to append another object. 79 @param table 80 the table to be altered 81 @param descriptor 82 the descriptor which should be serve to append a new object 83 @throws com::sun::star::sdbc::SQLException 84 if a database access error occurs. 85 */ 86 void addIndex([in] com::sun::star::beans::XPropertySet table,[in]com::sun::star::beans::XPropertySet descriptor) 87 raises (com::sun::star::sdbc::SQLException); 88 89 90}; 91//============================================================================= 92}; }; }; }; }; 93//============================================================================= 94 95#endif 96 97