iT邦幫忙

2025 iThome 鐵人賽

DAY 16
0
佛心分享-SideProject30

最近的工程師真沒用系列 第 16

第十六天-後端DB建置

  • 分享至 

  • xImage
  •  

以前用過 laravel,那個 migration 真的太舒適了,於是我開始找 node 後端有沒有類似的方案

本來在看 Knex,什麼??不支援 cloudflare?

繼續看 Drizzle,想說就決定是他了,可是又想......等等我真的需要這玩意嗎?
然後一查 cloudflare worker 根本就有自己的 migrations 命令,想說就先簡單試試看好了

建立使用者資料表

npx wrangler d1 migrations create my-db create_admin_users

先不要高興的太早,它裡面完全空的,所以我們還是得自己產生 SQL 指令,沒有 laravel 那麼香

CREATE TABLE admin_user (
    id INTEGER PRIMARY KEY AUTOINCREMENT,
    username VARCHAR(16) NOT NULL DEFAULT '',
    password VARCHAR(128) NOT NULL DEFAULT '',
    email_address VARCHAR(128) NOT NULL DEFAULT '',
    description VARCHAR(512) NOT NULL DEFAULT '',
    enable TEXT NOT NULL DEFAULT 'Y'
        CHECK(enable IN ('Y', 'N')),
    create_time DATETIME DEFAULT  CURRENT_TIMESTAMP,
    update_time DATETIME NULL,
    delete_time DATETIME NULL
);

然後我們把資料表建進本地

npx wrangler d1 migrations apply  my-db --local

接著怎麼看這個 d1 裡面到底有幾張表呢?雖然底層是 sqlite,但如果你要使用相關命令去查表是不行的,得用 cloudflare 包好的

npx wrangler d1 execute my-db --command='PRAGMA table_list'

就可以看到資料表格囉,裡面還包含一些內建的,請不要亂搞他們喔

想看裡面的結構怎麼下

npx wrangler d1 execute my-db --command='PRAGMA table_info("admin_user")'

指令都在
https://developers.cloudflare.com/d1/sql-api/sql-statements/#_top

可以自己查

今天的情緒抒發:
cloudflare 怎麼比我想的還要香阿,可惡!!!我文章要不要改成叫做 cloudflare 介紹好了


上一篇
第十五天-出事了阿北
系列文
最近的工程師真沒用16
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言