.NET API Reference | OSGeo FDO Provider for MySQL |
00001 /*! \mainpage Introduction 00002 <div class="mainpage"> 00003 <!-- This is the index.html page that the user first sees. --> 00004 00005 <p>The Feature Data Objects (FDO) API provides access to data in a 00006 data store. A provider is a specific implementation of the FDO API 00007 that provides access to data in a particular data store. The FDO 00008 Provider for MySQL provides FDO with access to a MySQL-based data store. 00009 </p> 00010 00011 <p>MySQL 5.0.22 and later is supported. You can create, edit, and delete MySQL 00012 data stores and schemas, or you can access existing databases in MySQL that 00013 were created by other applications. The FDO Provider for MySQL supports native 00014 MySQL geometry, indexing, two-dimensional geometry (compatible with the OGC 00015 Simple Feature specificaton), and spatial query operations, but not 00016 transactions. Auto-generated properties are auto-incremented. MySQL uses a 00017 revision number for optimistic concurrency. 00018 </p> 00019 00020 \note 00021 If you cannot connect to your MySQL data source and you receive the error 00022 message, "Specified credentials are not valid or the provider is unable to 00023 establish a connection," copy the libmySQL.dll file into the \FDO\bin folder 00024 under the Autodesk product install folder to resolve the problem. 00025 00026 <p> 00027 A MySQL schema can support the following: 00028 </p> 00029 <ul> 00030 <li>Inheritance 00031 <li>Multiple schemas 00032 <li>Object properties 00033 <li>Association properties 00034 <li>Schema overrrides 00035 <li>Auto ID generation 00036 <li>Null value constraints 00037 <li>Unique value constraints 00038 <li>Composite unique value constraints 00039 <li>Spatial contexts 00040 <li>These geometry types: point, line string, polygon,multi-point, multi-line 00041 string, multi-polygon, curve string, curve polygon, multi-curve string, 00042 multi-curve polygon, linear ring, line string segment, circular arc segment, 00043 and ring. 00044 </ul> 00045 00046 <p>When you create a MySQL schema, the following restrictions apply: 00047 </p> 00048 <ul> 00049 <li>A feature class must define or inherit at least one identity property. 00050 <li>You cannot specify default values for data properties. 00051 <li>Inclusive value range constraints are not supported. 00052 <li>Identity properties cannot be nullable. 00053 <li>Read-only identity properties must be autogenerated. 00054 <li>A feature class can have multiple geometric properties; main geometry is 00055 not mandatory, but this attribute of the feature class indicates which 00056 geometry property to use as the default for queries and rendering. HasMeasure 00057 and HasElevation are supported. 00058 <li>The maximum length of a string is 65,535 bytes. 00059 <li>For decimal properties, precision must be between 1 and 65 inclusive and 00060 scale must be between 0 and 30 inclusive. 00061 </ul> 00062 00063 00064 <p>The FDO Provider for MySQL API provides custom commands that are 00065 specifically designed to work with the FDO API. For example, using 00066 these commands, you can do the following: 00067 00068 </p> 00069 <ul> 00070 <li> Gather information about a provider.</li> 00071 <li> Transmit client services exceptions.</li> 00072 <li> Get lists of accessible data stores.</li> 00073 <li> Create connection objects.</li> 00074 <li> Create and execute spatial queries.</li> 00075 </ul> 00076 <p>There is also support for spatial data types. 00077 </p> 00078 00079 <p>The MySQL architecture supports different storage engines. Choose an 00080 engine as needed, depending on its characteristics and capabilities, such as the following: 00081 </p> 00082 <ul> 00083 <li> MyISAM is a disk-based storage engine. It does not 00084 support transactions.</li> 00085 <li> InnoDB is a disk-based storage engine. It has full ACID transaction 00086 capability.</li> 00087 <li> Memory (Heap) is a storage engine utilizing only RAM. It 00088 is very fast.</li> 00089 <li> BDB is the Berkley DB storage engine. It supports transactions.</li> 00090 <li> NDB is the MySQL Cluster storage engine.</li> 00091 <li> MERGE is a variation of MyISAM. A MERGE table is a 00092 collection of identical MyISAM tables, which means that 00093 all tables have the same columns, column types, indexes, and so on.</li> 00094 </ul> 00095 <p> 00096 For more information, see <i>The Essential FDO</i> (FET_TheEssentialFDO.pdf) 00097 and the <i>FDO Developer's Guide</i> (FDG_FDODevGuide.pdf). 00098 </p> 00099 00100 <br> 00101 </div> 00102 */ 00103 00104 00105 00106
Comments? |