阅读510 返回首页    go 阿里云


写入数据__从 SQL 到 NoSQL_快速入门_表格存储-阿里云

SQL

关系型数据库中,表是一个由行和列组成的二维数据结构,可以使用 INSERT 语句向表中添加行,如下所示:

  1. INSERT INTO UserHistory (
  2. user_id, time_stamp, item_id, behavior_type,
  3. behavior_amount, behavior_count, content)
  4. VALUES(
  5. '10100', 1479265526, 'cell_phone', 'share', 4.9, 78,
  6. 'The phone is quit good!'
  7. );

表格存储

使用表格存储时,可以使用 PutRow 接口插入一行数据,如下所示:

  1. // 设置主键
  2. PrimaryKeyBuilder primaryKeyBuilder = PrimaryKeyBuilder.createPrimaryKeyBuilder();
  3. primaryKeyBuilder.addPrimaryKeyColumn("user_id", PrimaryKeyValue.fromString("10100"));
  4. primaryKeyBuilder.addPrimaryKeyColumn("time_stamp", PrimaryKeyValue.fromLong(1479265526));
  5. PrimaryKey primaryKey = primaryKeyBuilder.build();
  6. // 设置属性列的值
  7. RowPutChange rowPutChange = new RowPutChange(TABLE_NAME, primaryKey);
  8. rowPutChange.addColumn(new Column("item_id", ColumnValue.fromString("cell_phone")));
  9. rowPutChange.addColumn(new Column("behavior_type", ColumnValue.fromString("share")));
  10. rowPutChange.addColumn(new Column("behavior_amount", ColumnValue.fromDouble(4.9)));
  11. rowPutChange.addColumn(new Column("behavior_count", ColumnValue.fromLong(78)));
  12. rowPutChange.addColumn(new Column("content", ColumnValue.fromString("The phone is quit good!")));
  13. // 插入该行数据
  14. client.putRow(new PutRowRequest(rowPutChange));

使用 PutRow 接口时,请注意如下关键事项:

  • 除了表名 TABLE_NAME 和主键 primaryKey,属性列和类型可以在写入时定义。

  • 多行数据的同名属性列也可以使用不同的类型。

  • 大多数 SQL 数据库是面向事务的,当发出 INSERT 语句时,只有 COMMIT 之后对数据的修改才是永久性的。使用表格存储,当表格存储通过 HTTP 200 状态码(OK)进行回复时, PutRow 写入的数据已经被持久化到所有备份。

  • 插入多条记录时,可以使用 BatchWriteRow 接口,从而大大提高数据的写入速度。

最后更新:2016-11-23 16:04:20

  上一篇:go 访问数据库__从 SQL 到 NoSQL_快速入门_表格存储-阿里云
  下一篇:go 检索数据__从 SQL 到 NoSQL_快速入门_表格存储-阿里云