模式管理

 

FeatureClass

<xs:element ...请参考 ClassDefinition (带有主键属性)...

</xs:element>

<xs:complexType name=“<className>Type”

abstract=“<true | false>“/>

{ 请参考FeatureClass.GeometryProperty }

<xs:complexContent>

<xs:extension base=“{baseClass}?{baseClass.schema.name}:{baseClass.name} :

‘gml:AbstractFeatureType’ “

<xs:sequence>

{属性列表请参考DataPropertyGeometric属性}

</xs:sequence>

</xs:extension>

</xs:complexContent>

</xs:complexType>

FeatureClass. GeometryProperty

<!--这些是xs:complexType元素的属性-->

fdo:geometryName=“<geometryPropertyName>

fdo:geometricTypes=“<list of FdoGeometricTypes>

fdo:geometryReadOnly=“<true | false>

fdo:hasMeasure=“<true | false>

fdo:hasElevation=“<true | false>

fdo:srsName=“<spatialContextName>“/>

DataProperty

(decimalstring类型)

<!--minOccurs属性仅当值是1的时候才生成;Default属性仅当存在默认值时才生成;fdo:readOnly属性仅当值是1的时候才生成。-->

<xs:element name=“<propertyName>

minOccurs=“{isNullable ? 0 : 1}

default=“<defaultValue>

fdo:readOnly=“<true | false>“>

<xs:simpleType>

{请参考 DataType StringDataType Decimal }

</xs:simpleType>

</xs:element>

DataProperty (其他类型)

<xs:element name=“<propertyName>

type=“<datatype>

minOccurs=“{isNullable ? 0 : 1}

default=“<defaultValue>

fdo:readOnly=“<true | false>“>

</xs:element>

DataType String

<xs:restriction base=“xs:string”>

<xs:maxLength value=“<length>“/>

</xs:restriction>

DataType Decimal

<xs:restriction base=“xs:decimal”>

<xs:totalDigits value=“<precision>“/>

<xs:fractionDigits value=“<scale>“/>

</xs:restriction>

GeometricProperty

 

<xs:element name=“<propertyName>

type=“gml:AbstractGeometryType”

fdo:geometryName=“<propertyName>

fdo:geometricTypes=“<list of FdoGeometricTypes>

fdo:geometryReadOnly=“<true | false>

fdo:hasMeasure=“<true | false>

fdo:hasElevation=“<true | false>

fdo:srsName=“<spatialContextName>“/>

</xs:element>

MetaData

<!--xs:schema元素中为FeatureSchema引用的模式-->

<xs:annotation>

<xs:documentation>

{FdoFeatureSchema::Create()的描述}

</xs:documentation>

</xs:annotation>

<!--xs:schema元素中为DataProperty引用的样式-->

<xs:annotation>

<xs:documentation>

{FdoDataPropertyDefinition::Create()的描述}

</xs:documentation>

</xs:annotation>

<!--xs:element元素为非要素GeometricProperty引用的模式-->

<xs:annotation>

<xs:documentation>

{FdoGeometricPropertyDefinition::Create()的描述}

</xs:documentation>

</xs:annotation>

<!--xs:complexType元素为FeatureClass引用的样式-->

<xs:annotation>

<xs:documentation>

{FdoFeatureClass::Create()的描述}

</xs:documentation>

<xs:appinfo source=“<uri>“/>

<xs:documentation>

{FdoGeometricPropertyDefinition::Create()的描述}

</xs:documentation>

</xs:annotation>

93 FDO模式元素和GML模式片段的对应关系

 

94显示了Map FDO数据类型和GML数据类型对照关系。

 

FDO数据类型

GML数据类型

Boolean

xs:boolean

Byte

fdo:Byte

DateTime

xs:dateTime

Double

xs:double

Int16

fdo:Int16

Int32

fdo:Int32

Int64

fdo:Int64

Single

xs:float

BLOB

xs:base64Binary

CLOB

xs:string

94 FDO数据类型和GML数据类型对照表

1.1.1        GML 模式文件的创建

以下示例为“Buildings”要素定义了一个表格,这是Open GIS联盟的文档98-046r1中的一个示例。本节中,我们将通过为要素类“Buildings”创建GML模式文件来展示如何创建GML模式文件。

<ogc-sfsql-table>

<table-definition>

  <name>buildings</name>

  <column-definition>

    <name>fid</name>

    <type>INTEGER</type>

    <constraint>NOT NULL</constraint>

    <constraint>PRIMARY KEY</constraint>

  </column-definition>

  <column-definition>

    <name>address</name>

    <type>VARCHAR(64)</type>

  </column-definition>

  <column-definition>

    <name>position</name>

    <type>POINT</type>

  </column-definition>

  <column-definition>

    <name>footprint</name>

    <type>POLYGON</type>

    <column-definition>

</table-definition>

1.1.1.1  添加模式

让我们从一个基本的GML框架开始添加一个模式。

<xs:schema xmlns:xs=http://www.w3.org/2001/XMLSchema

  targetNamespace=“http://<customer_url>/<FeatureSchemaName>

  xmlns:fdo=http://fdo.osgeo.org/schema

  xmlns:gml=http://www.opengis.net/gml

  xmlns:<FeatureSchemaName>=“http://<customer_url>/<FeatureSchemaName>

  elementFormDefault=“qualified”

  attributeFormDefault=“unqualified”>

  <xs:annotation>

    <xs:documentation>{FdoFeatureSchema::Create()的描述}</xs:documentation>

  </xs:annotation>

  {<每个中只能有一个 xs:element / xs:complexType >}

</xs:schema>

通过如下的替换,可以设置要素模式的名称和描述。

l  fdo_customer代替“<customer_url>”。

l  OGC980461FS代替“<FeatureSchemaName>”,从而设置要素模式名称。

l  设置要素模式描述:用OGC Simple Features Specification for SQL 代替“{FdoFeatureSchema::Create()的描述}”,从而设置要素模式描述。

1.1.1.2  添加要素类

在以上GML模式的基础上,让我们接着添加一个要素类。

<xs:schema xmlns:xs=“http://www.w3.org/2001/XMLSchema”

  targetNamespace=“http://fdo_customer/OGC980461FS”

  xmlns:fdo=“http://fdo.osgeo.org/schema”

  xmlns:gml=“http://www.opengis.net/gml”

  xmlns:OGC980461FS=“http://fdo_customer/OGC980461FS”

  elementFormDefault=“qualified”

  attributeFormDefault=“unqualified”>

  <xs:annotation>

    <xs:documentation>OGC Simple Features Specification for SQL</xs:documentation>

  </xs:annotation>

  <xs:element name=“<className>

    type=“<className>Type”

    abstract=“<true | false>

    substitutionGroup=“gml:_Feature”>

    <xs:key name=“<className>Key”>

      <xs:selector xpath=“.//<className>“/>

      <xs:field xpath=“<identityPropertyName>“/>

    </xs:key>

  </xs:element>

  <xs:complexType name=“<className>Type”

    abstract=“<true | false>“/>

    fdo:geometryName=“<geometryPropertyName>

    fdo:geometricTypes=“<list of FdoGeometricTypes>

    fdo:geometryReadOnly=“<true | false>

    fdo:hasMeasure=“<true | false>

    fdo:hasElevation=“<true | false>

    fdo:srsName=“<spatialContextName>“/>>

    <xs:annotation>

      <xs:documentation>

        {FdoFeatureClass::Create()的描述}

      </xs:documentation>

      <xs:appinfo source=“<uri>“/>

      <xs:documentation>

        {FdoGeometricPropertyDefinition::Create()的描述}

      </xs:documentation>

    </xs:annotation>

    <xs:complexContent>

      <xs:extension base=“{baseClass} ? {baseClass.schema.name}:{baseClass.name} : ‘gml:AbstractFeatureType’ “>

        <xs:sequence>

          {属性类表;请参考 DataProperty, GeometricProperty}

        </xs:sequence>

      </xs:extension>

    </xs:complexContent>

  </xs:complexType>

</xs:schema>

通过如下的替换,可以添加一个要素类,并且设置了这个要素类的几何属性和主键属性。

l  buildings代替“<className>”,从而设置要素类的名称:。

l  将“xs:element”元素的“abstract”属性置为“false”。

l  fid代替“<identityPropertyName>”,从而设置要素类的主键属性名称。

l  将“xs:complexType”元素的“abstract”属性置为false

l  footprint代替“<geometryPropertyName>”,从而设置要素类的几何属性名称。

l  surface代替“<list of FdoGeometricTypes>”,从而设置几何属性的类型。

l  将“fdo:geometryReadOnly”,“fdo:hasMeasure”和“fdo:hasElevation”都置为“false

l  SC_0代替“<spatialContextName>,从而设置要素相关联的空间上下文。

l  OGC 98-046r1 buildings代替“{FdoFeatureClass::Create()的描述},从而设置要素类的描述。

l  用“http://fdo.osgeo.org/schema代替“<uri>

l  a polygon defines a building perimeter代替“{FdoGeometricPropertyDefinition::Create()的描述}”,从而设置几何属性的描述。

l  该类不存在基类,因此将“xs:extension元素的“base属性置为‘gml:AbstractFeatureType’。

1.1.1.3  添加属性

在以上GML模式的基础上,我们再为要素类添加一个名为fid的整型数据属性,它已经作为关键属性加入到xs:key元素中了,还将添加名为name的数据属性,以及一个名为position的几何属性。

<xs:schema xmlns:xs=“http://www.w3.org/2001/XMLSchema”

  targetNamespace=“http://fdo_customer/OGC980461FS”

  xmlns:fdo=“http://fdo.osgeo.org/schema”

  xmlns:gml=“http://www.opengis.net/gml”

  xmlns:OGC980461FS=“http://fdo_customer/OGC980461FS”

  elementFormDefault=“qualified”

  attributeFormDefault=“unqualified” >

  <xs:annotation>

    <xs:documentation>

      OGC Simple Features Specification for SQL

    </xs:documentation>

  </xs:annotation>

  <xs:element name=“buildings” type=“buildingsType” abstract=“false”

    substitutionGroup=“gml:_Feature”>

    <xs:key name=“buildingsKey”>

      <xs:selector xpath=“.//buildings”/>

      <xs:field xpath=“fid”/>

    </xs:key>

  </xs:element>

  <xs:complexType name=“buildingsType”

    abstract=“false”

    fdo:geometryName=“footprint”

    fdo:geometricTypes=“surface”

    fdo:geometryReadOnly=“false”

    fdo:hasMeasure=“false”

    fdo:hasElevation=“alse”

    fdo:srsName=“SC_0” >

    <xs:annotation>

      <xs:documentation>OGC 98-046r1 buildings</xs:documentation>

      <xs:appinfo source=“http://fdo.osgeo.org/schema”/>

      <xs:documentation>

        a polygon defines the perimeter of a building

      </xs:documentation>

    </xs:annotation>

    <xs:complexContent>

      <xs:extension base=“gml:AbstractFeatureType”>

        <xs:sequence>

          <xs:element name=“<propertyName>

            type=“<datatype>

            minOccurs=“{isNullable ? 0 : 1}

            default=“<defaultValue>

            fdo:readOnly=“<true | false>“ >

            <xs:annotation>

              <xs:documentation>

                {FdoDataPropertyDefinition::Create()的描述}

              </xs:documentation>

            </xs:annotation>

          </xs:element>

          <xs:element name=“<propertyName>

            minOccurs=“{isNullable ? 0 : 1}

            default=“<defaultValue>

            fdo:readOnly=“<true | false>“ >

            <xs:annotation>

              <xs:documentation>

                {FdoDataPropertyDefinition::Create()的描述}

              </xs:documentation>

            </xs:annotation>

            <xs:simpleType>

              <xs:restriction base=“xs:string”>

                <xs:maxLength value=“<length>“/>

              </xs:restriction>

            </xs:simpleType>

          </xs:element>

          <xs:element name=“<propertyName>

            ref=“gml:_Geometry”

            fdo:geometryName=“<propertyName>

            fdo:geometricTypes=“<list of FdoGeometricTypes>

            fdo:geometryReadOnly=“<true | false>

            fdo:hasMeasure=“<true | false>

            fdo:hasElevation=“<true | false>

            fdo:srsName=“<spatialContextName>“>

            <xs:annotation>

              <xs:documentation>

                {FdoGeometricPropertyDefinition::Create()的描述}

              </xs:documentation>

            </xs:annotation>

          </xs:element>

        </xs:sequence>

      </xs:extension>

    </xs:complexContent>

</xs:complexType>

</xs:schema>

l  fid代替第一个“<propertyName>”,从而设置数据属性fid

l  fdo:int32代替“<dataType>”,从而设置数据属性fid的数据类型。

l  不必添加“minOccurs”和“default”属性,因为“minOccurs”的值就是默认值0,也没有“<defaultValue>”。

l  fid属性的“fdo:readOnly”置为“false”。

l  fid属性的“xs:documentation”内容置为feature id

l  address代替第二个“<propertyName>”,从而设置数据属性address

l  不必添加“minOccurs”和“default”属性,因为“minOccurs”的值就是默认值0,也没有“<defaultValue>”。

l  address属性的“fdo:readOnly”置为“false”。

l  address属性的“xs:documentation”内容置为address of the building

l  64代替“<length>”,从而设置数据属性address最大长度。

l  position代替第三个“<propertyName>”,从而设置几何属性position

l  point代替“<list of FdoGeometricTypes>”,从而设置几何属性position的几何类型。

l  将“fdo:geometryReadOnly”,“fdo:hasMeasure”和“fdo:hasElevation”置为“false”。

l  SC_0代替“<spatialContextName>”,从而设置几何属性position关联的空间上下文。

l  position of the building代替“{FdoGeometricPropertyDefinition::Create()的描述}”,从而设置几何属性position的描述。

1.1.1.4  最终结果

最终得到的包含Buildings要素的模式为:

<xs:schema xmlns:xs=”http://www.w3.org/2001/XMLSchema”

  targetNamespace=”http://fdo_customer/OGC980461FS”

  xmlns:fdo=”http://fdo.osgeo.org/schema”

  xmlns:gml=”http://www.opengis.net/gml”

  xmlns:OGC980461FS=”http://fdo_customer/OGC980461FS”

  elementFormDefault=”qualified”

  attributeFormDefault=”unqualified”>

  <xs:annotation>

    <xs:documentation>

        OGC Simple Features Specification for SQL

    </xs:documentation>

  </xs:annotation>

  <xs:element name=”buildings” type=”buildingsType” abstract=”false”

    substitutionGroup=”gml:_Feature”>

    <xs:key name=”buildingsKey”>

      <xs:selector xpath=”.//buildings”/>

      <xs:field xpath=”fid”/>

    </xs:key>

  </xs:element>

  <xs:complexType name=”buildingsType”

    abstract=”false”

    fdo:geometryName=”footprint”

    fdo:geometricTypes=”surface”

    fdo:geometryReadOnly=”false”

    fdo:hasMeasure=”false”

    fdo:hasElevation=”false”

    fdo:srsName=”SC_0” >

    <xs:annotation>

      <xs:documentation>OGC 98-046r1 buildings</xs:documentation>

      <xs:appinfo source=”http://fdo.osgeo.org/schema”/>

      <xs:documentation>

        a polygon defines the perimeter of a building

      </xs:documentation>

    </xs:annotation>

    <xs:complexContent>

      <xs:extension base=”gml:AbstractFeatureType“>

        <xs:sequence>

          <xs:element name=”fid” type=”fdo:int32” fdo:readOnly=”false” >

            <xs:annotation>

              <xs:documentation>feature id

              </xs:documentation>

            </xs:annotation>

          </xs:element>

          <xs:element name=”address” fdo:readOnly=”false” >

            <xs:annotation>

              <xs:documentation>address of the building</xs:documentation>

            </xs:annotation>

            <xs:simpleType>

              <xs:restriction base=”xs:string”>

                <xs:maxLength value=”64”/>

              </xs:restriction>

            </xs:simpleType>

          </xs:element>

          <xs:element name=”position”

            ref=”gml:_Geometry”

            fdo:geometryName=”position”

            fdo:geometricTypes=”point”

            fdo:geometryReadOnly=”false”

            fdo:hasMeasure=”false”

            fdo:hasElevation=”false”

            fdo:srsName=”SC_0” >

            <xs:annotation>

              <xs:documentation>position of the building</xs:documentation>

            </xs:annotation>

          </xs:element>

        </xs:sequence>

      </xs:extension>

    </xs:complexContent>

  </xs:complexType>

</xs:schema>

1.1.2        模式管理示例

1.1.2.1  创建要素模式

该示例创建一个名为“SampleFeatureSchema”的FdoFeatureSchema对象,该对象定义了一个包含三个属性的类。该类和属性源自Open GIS联盟的文档98-046r110页,它定义了一个“Lakes”(湖)要素类。

<ogc-sfsql-table>

  <table-definition>

    <name>lakes</name>

    <column-definition>

      <name>fid</name>

      <type>INTEGER</type>

      <constgraint>NOT NULL</constraint>

      <constraint>PRIMARY KEY<constraint>

    </column-definition>

    <column-definition>

      <name>name</name>

      <type>VARCHAR(64)</type>

    </column-definition>

    <column-definition>

      <name>shore</name>

      <type>POLYGON</type>

    </column-definition>

  </table-definition>

表“lakes”对应于名为“SampleFeatureClass”的FdoFeatureClass对象。列“fid”对应于名为“SampleIdentityDataProperty”的FdoDataPropertyDefinition对象;列“name”对应于名为“SampleNameDataProperty”的FdoDataPropertyDefinition对象;列“shore”对应于名为“SampleGeometricProperty”的FdoGeometricPropertyDefinition对象。

// 创建ApplySchema命令

FdoPtr<FdoIApplySchema> sampleApplySchema = (FdoIApplySchema *)

connection->CreateCommand(FdoCommandType_ApplySchema);

// 创建要素schema

FdoPtr<FdoFeatureSchema> sampleFeatureSchema =

FdoFeatureSchema::Create(L"SampleFeatureSchema", L"要素模式描述");

// 得到指向要素模式中类集合的指针,该指针用来向模式中加入类。

FdoPtr<FdoClassCollection> sampleClassCollection = sampleFeatureSchema->GetClasses();

// 创建一个要素类。例如,一个包含一个几何(geometric)属性的要素类

FdoPtr<FdoFeatureClass> sampleFeatureClass =

FdoFeatureClass::Create(L"SampleFeatureClass", L"要素类描述");

sampleFeatureClass->SetIsAbstract(false);

// 得到指向要素类中属性集合的指针,该指针用来向类中加入数据和其他属性。

FdoPtr<FdoPropertyDefinitionCollection> sampleFeatureClassProperties =

sampleFeatureClass->GetProperties();

// 得到指向要素模式中类集合的指针,该指针用来向模式中加入类。

FdoPtr<FdoClassCollection> sampleClassCollection = sampleFeatureSchema->GetClasses();

// 得到指向要素类关键属性集合的指针,该指针用来向要素类中加入主键属性。

FdoPtr<FdoDataPropertyDefinitionCollection> sampleFeatureClassIdentityProperties =

sampleFeatureClass->GetIdentityProperties();

// 创建一个Int32类型的数据属性,并将其设置为主键属性

FdoPtr<FdoDataPropertyDefinition> sampleIdentityDataProperty =

FdoDataPropertyDefinition::Create(L"SampleIdentityDataProperty",

L"关键数据属性描述");

sampleIdentityDataProperty->SetDataType(FdoDataType_Int32);

sampleIdentityDataProperty->SetReadOnly(false);

sampleIdentityDataProperty->SetNullable(false);

sampleIdentityDataProperty->SetIsAutoGenerated(false);

// sampleFeatureClass中加入关键属性

sampleFeatureClassProperties->Add(sampleIdentityDataProperty);

sampleFeatureClassIdentityProperties->Add(sampleIdentityDataProperty);

// 创建一个String类型的数据属性

FdoPtr<FdoDataPropertyDefinition> sampleNameDataProperty =

FdoDataPropertyDefinition::Create(L"SampleNameDataProperty", L"数据属性描述");

sampleNameDataProperty->SetDataType(FdoDataType_String);

sampleNameDataProperty->SetLength(64);

sampleNameDataProperty->SetReadOnly(false);

sampleNameDataProperty->SetNullable(false);

sampleNameDataProperty->SetIsAutoGenerated(false);

// 添加名称属性到sampleFeatureClass

sampleFeatureClassProperties->Add(sampleNameDataProperty);

// 创建一个几何属性

FdoPtr<FdoGeometricPropertyDefinition> sampleGeometricProperty =

FdoGeometricPropertyDefinition::Create(L"SampleGeometricProperty", L"几何属性描述");

sampleGeometricProperty->SetGeometryTypes(FdoGeometricType_Surface);

sampleGeometricProperty->SetReadOnly(false);

sampleGeometricProperty->SetHasMeasure(false);

sampleGeometricProperty->SetHasElevation(false);

// 添加几何属性到sampleFeatureClass

sampleFeatureClassProperties->Add(sampleGeometricProperty);

// 将其标记为几何属性

sampleFeatureClass->SetGeometryProperty(sampleGeometricProperty);

// 将要素类添加到schema

sampleClassCollection->Add(sampleFeatureClass);

// ApplySchema命令指定新建的模式,并且执行此命令

sampleApplySchema->SetFeatureSchema(sampleFeatureSchema);

sampleApplySchema->Execute();

1.1.2.2  描述和导出模式

以下示例代码展示了如何描述一个模式并把它导出到XML文件。

// 创建DescribeSchema命令

FdoPtr<FdoIDescribeSchema> sampleDescribeSchema = (FdoIDescribeSchema *)

connection->CreateCommand(FdoCommandType_DescribeSchema);

// 执行DescribeSchema命令将得到Data Store中所有要素模式的集合

FdoPtr<FdoFeatureSchemaCollection> sampleFeatureSchemaCollection =

sampleDescribeSchema->Execute();

// 从集合中找出想要导出的要素模式,然后将其写入XML文件,最后清空集合

sampleFeatureSchema =

sampleFeatureSchemaCollection->FindItem(LSampleFeatureSchema);

sampleFeatureSchema->WriteXml(L"SampleFeatureSchema.xml");

sampleFeatureSchemaCollection->Clear();

以下是在调用FdoFeatureSchema::WriteXml(...)方法后导出的XML文件的内容。

<?xml version="1.0" encoding="UTF-8" ?>

  <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"

    targetNamespace="http://fdo_customer/SampleFeatureSchema"

    xmlns:fdo="http://fdo.osgeo.org/schema"

    xmlns:gml="http://www.opengis.net/gml"

    xmlns:SampleFeatureSchema="http://fdo_customer/

      SampleFeatureSchema"

    elementFormDefault="qualified"

    attributeFormDefault="unqualified">

  <xs:annotation>

    <xs:documentation>Sample Feature Schema Description

      </xs:documentation>

    <xs:appinfo source="http://fdo.osgeo.org/schema" />

  </xs:annotation>

  <xs:element name="SampleFeatureClass"

    type="SampleFeatureSchema:SampleFeatureClassType"

    abstract="false" substitutionGroup="gml:_Feature">

    <xs:key name="SampleFeatureClassKey">

      <xs:selector xpath=".//SampleFeatureClass" />

      <xs:field xpath="SampleIdentityDataProperty" />

    </xs:key>

  </xs:element>

  <xs:complexType name="SampleFeatureClassType"

    abstract="false"

    fdo:geometryName="SampleGeometricProperty"

    fdo:hasMeasure="false"

    fdo:hasElevation="false"

    fdo:srsName="SC_0"

    fdo:geometricTypes="surface">

    <xs:annotation>

      <xs:documentation>Sample Feature Class Description

      </xs:documentation>

      <xs:appinfo source="http://fdo.osgeo.org/schema" />

      <xs:documentation>Sample Geometric Property Description</xs:documentation>

    </xs:annotation>

    <xs:complexContent>

      <xs:extension base="gml:AbstractFeatureType">

        <xs:sequence>

          <xs:element name="SampleIdentityDataProperty"

            default=""

            type="fdo:int32">

            <xs:annotation>

              <xs:documentation>

                Sample Identity Data Property Description

              </xs:documentation>

            </xs:annotation>

          </xs:element>

          <xs:element name="SampleNameDataProperty"

            default="">

            <xs:annotation>

              <xs:documentation>

                Sample Name Data Property Description

              </xs:documentation>

            </xs:annotation>

            <xs:simpleType>

              <xs:restriction base="xs:string">

                <xs:maxLength value="64" />

              </xs:restriction>

            </xs:simpleType>

          </xs:element>

        </xs:sequence>

      </xs:extension>

    </xs:complexContent>

  </xs:complexType>

</xs:schema>

1.1.2.3  销毁模式

以下示例代码展示了如何销毁一个模式。

// 创建DestroySchema命令

FdoPtr<FdoIDestroySchema> sampleDestroySchema = (FdoIDestroySchema *)

connection->CreateCommand(FdoCommandType_DestroySchema);

// 销毁模式

sampleDestroySchema->SetSchemaName(L"SampleFeatureSchema");

sampleDestroySchema->Execute();

1.1.2.4  XML中读入一个模式

以下示例代码展示了如何从一个XML中读入一个模式。

sampleFeatureSchemaCollection->ReadXml(L"SampleFeatureSchema.xml");

sampleFeatureSchema =

sampleFeatureSchemaCollection->FindItem(L"SampleFeatureSchema");

sampleApplySchema->SetFeatureSchema(sampleFeatureSchema);

sampleApplySchema->Execute();

sampleFeatureSchemaCollection->Clear();

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值