.NET API Reference | OSGeo FDO Provider for MySQL |
00001 /* 00002 * Copyright (C) 2004-2006 Autodesk, Inc. 00003 * 00004 * This library is free software; you can redistribute it and/or 00005 * modify it under the terms of version 2.1 of the GNU Lesser 00006 * General Public License as published by the Free Software Foundation. 00007 * 00008 * This library is distributed in the hope that it will be useful, 00009 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00010 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00011 * Lesser General Public License for more details. 00012 * 00013 * You should have received a copy of the GNU Lesser General Public 00014 * License along with this library; if not, write to the Free Software 00015 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 00016 * 00017 */ 00018 00019 00020 #pragma once 00021 00022 class FdoMySQLOvClassDefinition; 00023 00024 BEGIN_NAMESPACE_OSGEO_FDO_PROVIDERS_RDBMS_OVERRIDE 00025 public __gc class OvClassDefinition; 00026 END_NAMESPACE_OSGEO_FDO_PROVIDERS_RDBMS_OVERRIDE 00027 00028 BEGIN_NAMESPACE_OSGEO_FDO_PROVIDERS_RDBMS_OVERRIDE_MYSQL 00029 00030 public __gc class OvPropertyDefinitionCollection; 00031 public __gc class OvTable; 00032 public __gc class OvGeometricColumn; 00033 00034 ///<summary>Concrete class defining physical schema overrides for a class definition.</summary> 00035 public __gc class OvClassDefinition : public NAMESPACE_OSGEO_FDO_PROVIDERS_RDBMS_OVERRIDE::OvClassDefinition 00036 { 00037 public private: 00038 FdoMySQLOvClassDefinition* GetImpObj(); 00039 00040 OvClassDefinition(System::IntPtr unmanaged, System::Boolean autoDelete); 00041 00042 public: 00043 ///<summary>Constructs a default of an OvClassDefinition</summary> 00044 /// <returns>Returns OvClassDefinition</returns> 00045 OvClassDefinition(); 00046 00047 ///<summary>Constructs an instance of an OvClassDefinition using the specified arguments</summary> 00048 /// <param name="name">Input name</param> 00049 /// <returns>Returns OvClassDefinition</returns> 00050 OvClassDefinition(System::String* name); 00051 00052 ///<summary>Gets a collection of MySQL property overrides</summary> 00053 /// <returns>Returns the collection of MySQL property overrides</returns> 00054 __property NAMESPACE_OSGEO_FDO_PROVIDERS_RDBMS_OVERRIDE_MYSQL::OvPropertyDefinitionCollection* get_Properties(); 00055 00056 ///<summary>Gets the MySQL table override for this class override</summary> 00057 /// <returns>Returns OvTable</returns> 00058 __property NAMESPACE_OSGEO_FDO_PROVIDERS_RDBMS_OVERRIDE_MYSQL::OvTable* get_Table(); 00059 00060 ///<summary>Sets the MySQL table override for this class override</summary> 00061 /// <param name="name">Input MySQL table override</param> 00062 /// <returns>Returns nothing</returns> 00063 __property System::Void set_Table(NAMESPACE_OSGEO_FDO_PROVIDERS_RDBMS_OVERRIDE_MYSQL::OvTable* table); 00064 00065 ///<summary>Which FDO property maps to an MySQL auto-increment column, if any.</summary> 00066 /// <remarks>An empty string indicates 00067 /// there is no such column on this class’s table. There can only be at most one auto-increment column 00068 /// per table, it must be indexed, and it cannot have a default value. As of MySQL 3.23, an AutoIncrement 00069 /// column works properly only if it contains only positive values. Inserting a negative number is 00070 /// regarded as inserting a very large positive number. For MyISAM and BDB tables, you can specify an 00071 /// AUTO_INCREMENT secondary column in a multiple-column key. The first value in an AutoIncrement column 00072 /// is always 1 and always increments by 1 for each new value. This override is ignored on ApplySchema if 00073 /// this class refers to an existing table in a foreign database. 00074 /// </remarks> 00075 /// <param name="name"></param> 00076 /// <returns>Returns nothing</returns> 00077 __property System::Void set_AutoIncrementPropertyName(System::String* autoIncrementPropertyName); 00078 00079 ///<summary>Gets which FDO property corresponds to the single MySQL auto-increment column</summary> 00080 /// <returns>Returns the FDO property corresponding to the single MySQL auto-increment column, 00081 /// or an empty string if there is no such property</returns> 00082 __property System::String* get_AutoIncrementPropertyName(); 00083 00084 ///<summary>The initial value to use for the first row in the auto-increment column, if any.</summary> 00085 /// <remarks>This override is only valid if the AutoIncrementProperty override is set to a non-empty string. 00086 /// This works only for the following storage engine types: MyISAM, MEMORY as of MySQL 4.1, and InnoDB 00087 /// as of MySQL 5.0.3. This override is ignored on ApplySchema if this table is an existing table in 00088 /// a foreign database. 00089 /// </remarks> 00090 /// <returns>Returns the initial value to use for the first row in the auto-increment column</returns> 00091 __property System::Int64 get_AutoIncrementSeed(); 00092 00093 ///<summary>Sets the initial value to use for the first row in the auto-increment column, if any</summary> 00094 /// <returns>Returns nothing</returns> 00095 __property System::Void set_AutoIncrementSeed(System::Int64 autoIncrementSeed); 00096 00097 }; 00098 00099 END_NAMESPACE_OSGEO_FDO_PROVIDERS_RDBMS_OVERRIDE_MYSQL
Comments? |