1

我想从 python 脚本调用 box.space.auth_user:auto_increment{"8", 7, 7, 7} 。这就是我在 python 中所做的

import tarantool
connection = tarantool.connect('127.0.0.1', 3303)
connection.call('box.space.auth_user:auto_increment', ("8", 7, 7, 7))

然后我得到错误:

[string "-- schema.lua (internal file)..."]:921: bad argument #1 to 'insert' (table expected, got string)

这就是我定义我的auth_user模式的方式

box.schema.space.create('auth_user',{if_not_exists=true})
box.space.auth_user:create_index('primary', {type='TREE', if_not_exists=true, unique=true, parts={1,'NUM'}})
box.space.auth_user:create_index('login', {type='HASH', if_not_exists=true, unique=true, parts={2,'STR'}})

我究竟做错了什么?

4

1 回答 1

0

这不是错误,请使用[["8", 7, 7, 7]]or (("8", 7, 7, 7), )

In [4]: connection.call('box.space.auth_user:auto_increment', [["8", 7, 7, 7]])
Out[4]:
- [1, '8', 7, 7, 7]

tarantool-python 使用数组来显示它的参数,所以它是模拟的box.space.auth_user:auto_increment("8", 7, 7, 7),而不是{}

于 2016-08-27T20:49:39.413 回答