作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在 knex 模式中定义浮点精度时遇到问题,我希望它是浮点(10,6)以便存储纬度/经度位置。这是我试图声明它的方式:
lat: {type: 'float(10,6)', nullable: false},
由于 (10,6),它在迁移时失败,那么正确的方法是如何做到这一点?
最佳答案
我不知道这种 JSON 方法,因为我只使用 Schema Builder一个。
它看起来像(带有 id
、lat
和 lng
列的示例 geostuff
表):
var knex = require('knex')({client:'sqlite3',connection:{filename: 'sample.sqlite3'}});
knex.schema.createTable('geostuff', function(table) {
table.increments('id').primary();
table.float('lat', 14, 10).notNullable();
table.float('lng', 14, 10).notNullable();
}).then(function() {
console.dir('table created');
}).catch(function(err) {
console.log('table not created');
console.dir(err);
});
请注意,精度说明符并未得到广泛支持。 PostgreSQL 支持 float( precision)
,但 SQLite3(来自示例)不支持(更好的是:不关心)。幸运的是 knex.js 隐藏了这些特性。
关于node.js - 如何在 knex 模式中指定浮点精度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36239844/
我是一名优秀的程序员,十分优秀!