zoukankan      html  css  js  c++  java
  • MapXtreme2005中如何将一个已经存在的表索引化成为一个本地的表?

    003、如何将一个已经存在的表索引化成为一个本地的表???
    ISession session = MapInfo.Engine.Session.Current;

    Table tableToIndex = session.Catalog["DIJISHI"];
    MapInfo.Data.TableInfoNative ti = (MapInfo.Data.TableInfoNative)MapInfo.Data.TableInfoFactory.CreateFromFeatureCollection("NewTable", 
          MapInfo.Data.TableType.Native, tableToIndex);
    ti.Columns["PINYIN"].Indexed = true;
    ti.TablePath = "C:\\NewTable.tab";
    ti.WriteTabFile();

    MapInfo.Data.Table nativetable = MapInfo.Engine.Session.Current.Catalog.CreateTable(ti);
    nativetable.Close();
    nativetable = MapInfo.Engine.Session.Current.Catalog.OpenTable("C:\\NewTable.tab");

    MapInfo.Data.MIConnection con = new MapInfo.Data.MIConnection();
    con.Open();
    MapInfo.Data.MICommand com = con.CreateCommand();

    com = con.CreateCommand();
    com.CommandText = "Insert into " + nativetable.Alias + " Select * from " + tableToIndex.Alias;

    com.Prepare();
    com.ExecuteNonQuery();

    com.Dispose();
    con.Dispose();
    con.Close();
    注:也可以使用如下的函数来将上述代码进行封装:
    private MapInfo.Data.Table CreateIndexedNativeTableFromExisting(
      MapInfo.Data.Table tableToIndex,
      string columnAliasToIndex,
      string AliasForNewTable,
      string FilePathToSaveNativeTable,
      bool CloseOldTable)

  • 相关阅读:
    R绘图学习笔记
    SVM与LR的比较
    精简android4.2
    vbox下android分辨率设置
    centos7命令
    mysql设置编码
    virutalbox虚拟机硬盘扩容
    spring boot学习
    SQL Server 2012清除连接过的服务器名称历史
    android AutoCompleteTextView和Spinner选中项加亮
  • 原文地址:https://www.cnblogs.com/googlegis/p/2978837.html
Copyright © 2011-2022 走看看