表格存储的 SDK 提供了 CreateTable、ListTable、DeleteTable、UpdateTable 和 DescribeTable 等表级别的操作接口。

创建表(CreateTable)

根据给定的表的结构信息创建相应的表。

创建表格存储的表时必须指定表的主键。主键包含 1~4 个主键列,每一个主键列都有名字和类型。

接口

  /**
   * 根据给定的表结构信息创建相应的表。
   */
  createTable(params, callback)
说明 表格存储的表在被创建之后需要几秒钟进行加载,创建成功后需要等待几秒钟后再做其他操作。

示例

创建一个有 2 个主键列,预留读/写吞吐量为 (0,0) 的表。

var client = require('./client');

var params = {
  tableMeta: {
    tableName: 'sampleTable',
    primaryKey: [
      {
        name: 'gid',
        type: 'INTEGER'
      },
      {
        name: 'uid',
        type: 'INTEGER'
      }
    ]
  },
  reservedThroughput: {
    capacityUnit: {
      read: 0,
      write: 0
    }
  },
  tableOptions: {
    timeToLive: -1,// 数据的过期时间, 单位秒, -1代表永不过期. 假如设置过期时间为一年, 即为 365 * 24 * 3600.
    maxVersions: 1// 保存的最大版本数, 设置为1即代表每列上最多保存一个版本(保存最新的版本).
  }
};

client.createTable(params, function (err, data) {
  if (err) {
    console.log('error:', err);
    return;
  }
  console.log('success:', data);
});
说明 详细代码可在 createTable@GitHub 获取。

列出表名称(ListTable)

获取当前实例下已创建的所有表的表名。

接口

  /**
   * 获取当前实例下已创建的所有表的表名。
   */
  listTable(params, callback)

示例

获取实例下的所有表名。

var client = require('./client');

client.listTable({}, function (err, data) {
    if (err) {
        console.log('error:', err);
        return;
    }
    console.log('success:', data);
});

说明 详细代码可在 listTable@GitHub 获取。

更新表(UpdateTable)

更新指定表的最大版本数,预留读吞吐量或预留写吞吐量的设置。

接口

  /**
   * 更新指定表的预留读吞吐量或预留写吞吐量设置。
   */
  updateTable(params, callback) 

示例

更新表的最大版本数为5。

var client = require('./client');

var params = {
    tableName: 'sampleTable',
    tableOptions: {
        maxVersions: 5,
    }
};

client.updateTable(params, function (err, data) {
    if (err) {
        console.log('error:', err);
        return;
    }
    console.log('success:', data);
});

说明 详细代码可在 updateTable@GitHub 获取。

查询表描述信息(DescribeTable)

查询指定表的结构信息和预留读/写吞吐量的设置信息。

接口

  /**
   * 查询指定表的结构信息和预留读/写吞吐量设置信息。
   */
  describeTable(params, callback) 

示例

var client = require('./client');

var params = {
    tableName: 'sampleTable'
};

client.describeTable(params, function (err, data) {
    if (err) {
        console.log('error:', err);
        return;
    }
    console.log('success:', data);
});

说明 详细代码可在 describeTable@GitHub 获取。

删除表(DeleteTable)

删除本实例下指定的表。

接口

  /**
   * 删除本实例下指定的表。
   */
  deleteTable(params, callback)

示例

删除表。

var client = require('./client');

var params = {
    tableName: 'sampleTable'
};

client.deleteTable(params, function (err, data) {
    if (err) {
        console.log('error:', err);
        return;
    }
    console.log('success:', data);
});
说明 详细代码可在 deleteTable@GitHub 获取。