EExcel 丞燕快速查詢2

EExcel 丞燕快速查詢2
EExcel 丞燕快速查詢2 https://sandk.ffbizs.com/

Sequelize 基本認識

# Sequelize 基本認識

## 1. Timestamps
https://sequelize.org/v5/manual/models-definition.html#timestamps

## 2. Database synchronization
https://sequelize.org/v5/manual/models-definition.html#database-synchronization

建議不要直接使用於正式環境,應該在測試建立後,取得對應 sql 碼後,在正式上線時,手動更新正式 DB 資料結構

**2.1** 使用 sync 建立的 table name 會加上 s
**2.2** 正常情況下,對 table 操作盡可能還是已手動為主,雖然 Sequelize 有提供一些操作,但減少使用比較安全,當手動操作完畢後,應該把 raw sql 匯出備份,正式上線時,再手動更新

## 3. Modeling a table 建立
https://sequelize.org/v5/manual/getting-started.html

```
const Model = Sequelize.Model;
class User extends Model {}
User.init({
```

建議使用

```
sequelize.define:'user', {
// attributes
firstName: {

```

原因,看起來簡單多了

3.1 Model 操作
https://sequelize.org/v5/manual/models-usage.html

## 4. Raw queries
https://sequelize.org/v5/manual/raw-queries.html

基本當join比較複雜建議使用,因為清楚、效率可控,或更複雜的 sub sql 都可以進行,避免 ORM 處理不當,造成效能大幅下降

**4.1** 回傳是 [results, metadata]
**4.2** 有使用參數情況下,務必使用 Replacements 千萬不要直接raw sql + 參數