我有一个查询,如下所示返回代码不为空的用户信息
从“dev.user”中选择名称,年龄,其中代码不为空
返回预期输出
在knex我正在做
knex( “用户”)。选择( '姓名', '年龄')。whereNotNull( '代码')
它返回空!
调试查询返回如下
从“user”中选择“name”,“age”,其中“code”不为null knex( “dev.user”)。选择( '姓名', '年龄')。whereNotNull( '代码')
调试查询返回如下
从“dev”选择“name”,“age”。“user”,其中“code”不为空
首先,当我初始化knex时,即使我提供了模式,我也设置了不起作用的模式,它生成查询为“dev”。“user”而不是“dev.user”
任何指针都会有所帮助
答案 0 :(得分:0)
从文档中看,您应该使用.withSchema()
。 (see link)
注意:标识符语法没有选择模式的地方,所以如果你 正在做schemaName.tableName,查询可能会出错。使用 .withSchema('schemaName')代替。
这将是:
knex("user")
.withSchema("dev")
.select('name','age').whereNotNull('code')
我自己没有必须包含一个模式,所以祝你好运。
加里。