1. 程式人生 > >nodejs下的數據庫ORM---waterline

nodejs下的數據庫ORM---waterline

http pre nbsp 註意 字段 auto limit size es2017

一.waterline支持的數據庫

技術分享

二、waterline可以使用一樣的語句來操作不同的數據庫,奧秘就在於不同的適配器,在進行配置的時候,需要設置兩方面的內容,一是具體使用哪些適配器,二是建立數據庫連接的時候,使用哪個適配器。下面是使用mysql適配器的配置樣例

技術分享

三、在定義數據模型表時,下面是配置樣例

技術分享

註意幾點:

1、目前支持的數據類型有 string / text / integer / float / date /time / datetime / boolean / binary / array / json,這個範圍要比 JavaScript 的類型範圍大。

2、如果沒有定義主鍵,那麽waterline會為你默認創建名為id的主鍵,類型是整型自增長

  3.waterline自動創建表時會為你添加 createdAt、updatedAt兩個字段,類型為datetime,分別在insert和update操作更新字段代表的是記錄的創建時間和更新時間

  4、如果不想自動創建列createdAt、updatedAt,那麽請設置autoCreatedAt,autoUpdatedAt的值為false,如果未設置,insert或update時又未傳這兩時間,會報錯

四、常用查詢方法

waterline有以下查詢方法

技術分享

樣例: 在name=walter和state=new mexico的記錄中,查詢id>100並且age=21,結果限制在100以內,並以name升序排列返回

User.find({ name: ‘walter‘, state: ‘new mexico‘ }) .where({ id: { ‘>‘: 100 }}) .where({ age: 21 })

  .limit(100) .sort(‘name‘) 
.exec(function(err, users) { // Do stuff here });
  

nodejs下的數據庫ORM---waterline