cube.js mssql driver 问题
目前mssql driver 运行的时候会有以下错误
The multi-part identifier "columns.data_type" could not be bound
原因
需要指定别名
解决方法
MSSqlDriver 重写informationSchemaQuery 方法,我已经pr了
- informationSchemaQuery 方法
informationSchemaQuery() {
const q = `SELECT columns.column_name as ${this.quoteIdentifier('column_name')},
columns.table_name as ${this.quoteIdentifier('table_name')},
columns.table_schema as ${this.quoteIdentifier('table_schema')},
columns.data_type as ${this.quoteIdentifier('data_type')}
FROM information_schema.columns columns
WHERE columns.table_schema NOT IN ('information_schema', 'mysql', 'performance_schema', 'sys')`;
console.log(q);
return q;
}
参考源码
因为官方暂时还没有进行合并,如果需要测试mssql可以使用我已经提交的一个npm包
- 参考使用
.env 配置
这个和官方文档一样 https://cube.dev/docs/reference/environment-variables
cube.js 文件
const {MSSqlDriver,MssqlQuery} = require("@dalongrong/mymssql-driver")
module.exports = {
dialectFactory: (dataSource) => {
// need config datasource for multitenant env
return MssqlQuery
},
dbType: ({ dataSource } = {}) => {
return "mymssql"
},
driverFactory: ({ dataSource } = {}) => {
return new MSSqlDriver({})
}
};
说明
npm 包名称@dalongrong/mymssql-driver 已经发布npm 官方了,可以直接使用
参考资料
https://github.com/tediousjs/node-mssql#readme
https://github.com/cube-js/cube.js/pull/2521
https://cube.dev/docs/reference/environment-variables
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
2019-04-09 使用fpm 方便快速生成postgresql extension分发包
2014-04-09 web性能优化