Sequelize -- 筆記

參考自 Sequelize 的官方文檔
未完

1. 引入

--- npm 安裝

$ npm install sequelize --save
同時(shí)需要安裝 數(shù)據(jù)庫(kù)

# 還需要安裝以下之一:
$ npm install --save pg pg-hstore    // postgreSql
$ npm install --save mysql2          // mysql 或 mariadb
$ npm install --save sqlite3  
$ npm install --save tedious        // MSSQL

--- require 引入使用

const Sequelize = require("sequelize");

2. 連接數(shù)據(jù)庫(kù)

//  new 一個(gè)實(shí)例  new Sequelize({database,username,password,host,pool,})
 this.sequelize = new Sequelize({
            database:  database,          //數(shù)據(jù)庫(kù)名稱(chēng)
            username: username,        //數(shù)據(jù)庫(kù)用戶名
            password: password,       //數(shù)據(jù)庫(kù)密碼
            host: host,         //數(shù)據(jù)庫(kù)主機(jī)IP  localhost
            dialect: "mysql",         //數(shù)據(jù)庫(kù)類(lèi)型   'mysql'|'mariadb'|'sqlite'|'postgres'|'mssql',
            pool: {              //連接池配置
                max: 5,        //最大連接數(shù)
                min: 0,         //最小連接數(shù)
                acquire: aquireTimeout,     //請(qǐng)求超時(shí)時(shí)間
                idle: 10000          //斷開(kāi)連接后聚请,連接實(shí)例在連接池保持的時(shí)間
            },
            logging: this.logging //輸出日志信息  true or false
        });

驗(yàn)證連接上數(shù)據(jù)庫(kù)

 this.sequelize
                .authenticate()
                .then(() => {
                    console.log("連接建立成功");
                    resolve();
                })
                .catch(err => {
                    reject();
                    throw new Error(`無(wú)法連接數(shù)據(jù)庫(kù):${err.message}`);
                });

部分參數(shù)

Name Attribute
database 數(shù)據(jù)庫(kù)名
username 數(shù)據(jù)庫(kù)用戶名.
password 密碼
dialect 數(shù)據(jù)庫(kù)方式
timezone 時(shí)區(qū) 默認(rèn)'+00:00'
logging 日志
pool 連接池 min max idle

3. 創(chuàng)建表

      public define(modelName: String, attributes: Object, options: Object):

 this.tableModels.Users = this.sequelize.define('users', {
            mail: { 
                      type: Sequelize.STRING,      //數(shù)據(jù)類(lèi)型  STRING,CHAR,INTEGER,FLOAT,FLOAT  ,BOOLEAN,TEXT(不限長(zhǎng)度)
                      primaryKey: true,       // 主鍵   默認(rèn)false
                      allowNull: false,         // 是否可以為空  默認(rèn)true
                      defaultValue: ' 33'                     
            },
            name: { type: Sequelize.STRING, allowNull: false  },
            password: { type: Sequelize.STRING(255) },
            authority: { type: Sequelize.INTEGER(1).UNSIGNED,values: ["1", "8"], }
        }, {
            freezeTableName: true
        });

把表同步到數(shù)據(jù)庫(kù)
public sync(options: Object): Promise

this.tableModels.Users.sync({
  force:true,  //   如果表存在 則刪除表后重建
  logging:true  // 日志
});

表關(guān)系

BelongsTo,BelongsToMany,HasMany,HasOne

4. 插入數(shù)據(jù)

    public static bulkCreate(records: Array, options: Object): Promise<Array<>>
this.tableModels.Users.bulkCreate([
    {mail:'183..@163.com',name:'張三',password:'123',authority:'1'},
    {mail:'183..@163.com',name:'張三',password:'123',authority:'1'}
])

5. 查詢數(shù)據(jù)

findAll()
findOne()

6 更新數(shù)據(jù)

update()
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末捞蚂,一起剝皮案震驚了整個(gè)濱河市墓臭,隨后出現(xiàn)的幾起案子沃呢,更是在濱河造成了極大的恐慌,老刑警劉巖肾筐,帶你破解...
    沈念sama閱讀 216,372評(píng)論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件畜伐,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡燎猛,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,368評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門(mén)照皆,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)重绷,“玉大人,你說(shuō)我怎么就攤上這事膜毁≌炎浚” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 162,415評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵瘟滨,是天一觀的道長(zhǎng)候醒。 經(jīng)常有香客問(wèn)我,道長(zhǎng)室奏,這世上最難降的妖魔是什么火焰? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,157評(píng)論 1 292
  • 正文 為了忘掉前任劲装,我火速辦了婚禮胧沫,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘占业。我一直安慰自己绒怨,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,171評(píng)論 6 388
  • 文/花漫 我一把揭開(kāi)白布谦疾。 她就那樣靜靜地躺著南蹂,像睡著了一般。 火紅的嫁衣襯著肌膚如雪念恍。 梳的紋絲不亂的頭發(fā)上六剥,一...
    開(kāi)封第一講書(shū)人閱讀 51,125評(píng)論 1 297
  • 那天,我揣著相機(jī)與錄音峰伙,去河邊找鬼疗疟。 笑死,一個(gè)胖子當(dāng)著我的面吹牛瞳氓,可吹牛的內(nèi)容都是我干的策彤。 我是一名探鬼主播,決...
    沈念sama閱讀 40,028評(píng)論 3 417
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼店诗!你這毒婦竟也來(lái)了裹刮?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 38,887評(píng)論 0 274
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤庞瘸,失蹤者是張志新(化名)和其女友劉穎捧弃,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體擦囊,經(jīng)...
    沈念sama閱讀 45,310評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡塔橡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,533評(píng)論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了霜第。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片葛家。...
    茶點(diǎn)故事閱讀 39,690評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖泌类,靈堂內(nèi)的尸體忽然破棺而出癞谒,到底是詐尸還是另有隱情,我是刑警寧澤刃榨,帶...
    沈念sama閱讀 35,411評(píng)論 5 343
  • 正文 年R本政府宣布弹砚,位于F島的核電站,受9級(jí)特大地震影響枢希,放射性物質(zhì)發(fā)生泄漏桌吃。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,004評(píng)論 3 325
  • 文/蒙蒙 一苞轿、第九天 我趴在偏房一處隱蔽的房頂上張望茅诱。 院中可真熱鬧,春花似錦搬卒、人聲如沸瑟俭。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,659評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)摆寄。三九已至,卻和暖如春坯门,著一層夾襖步出監(jiān)牢的瞬間微饥,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,812評(píng)論 1 268
  • 我被黑心中介騙來(lái)泰國(guó)打工古戴, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留欠橘,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,693評(píng)論 2 368
  • 正文 我出身青樓允瞧,卻偏偏與公主長(zhǎng)得像简软,于是被迫代替她去往敵國(guó)和親蛮拔。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,577評(píng)論 2 353

推薦閱讀更多精彩內(nèi)容

  • 沙哈爾博士希望大家將正向領(lǐng)導(dǎo)力Sharp模型應(yīng)用到自己工作中痹升,從馬斯洛提出的“向最佳領(lǐng)導(dǎo)者”學(xué)習(xí)變?yōu)橄颉白罴训淖约?..
    木金木水火土的木閱讀 213評(píng)論 0 0
  • 日落時(shí)分建炫,天邊云朵微啟她少女般柔軟的嘴唇,一口疼蛾,一口肛跌,將光明吞噬 吉踩著草叢上的光碎,一步一步向前方走去察郁,前方的長(zhǎng)...
    天天楊閱讀 444評(píng)論 0 0
  • 現(xiàn)代生活皮钠,缺乏鍛煉稳捆、久坐不動(dòng)等等,這些不經(jīng)意的細(xì)節(jié)給腰增加了負(fù)擔(dān)麦轰,今天乔夯,小編給大家說(shuō)說(shuō)腰的問(wèn)題。 據(jù)研究表明款侵,全國(guó)...
    今天健康閱讀 1,524評(píng)論 0 0
  • 鄰居投訴晚上亂叫的睡不著末荐,鄰居很生氣,首先安撫她的情緒新锈,任何一個(gè)人狗叫了一個(gè)晚上肯定睡的不好甲脏,自己那么喜歡肯定也不...
    梵音大劇院嘉奇閱讀 215評(píng)論 0 0