Client Cloudflare D1 cho Mac
Mở các cơ sở dữ liệu D1 trong tài khoản Cloudflare của bạn từ một connection, query theo dialect của SQLite qua API của Cloudflare, và quản lý table, index và trigger trong tab Structure.
Dùng được trên MacDriver được tải về ở lần đầu bạn chọn Cloudflare D1
Tóm tắt
- Ngôn ngữ query
- SQL
- Driver
- Tải về ở lần dùng đầu
- Cách kết nối
- API của dịch vụ
- iPhone và iPad
- Không mở được
Kết nối bằng API token
Connection D1 cần ba giá trị: tên hoặc UUID của cơ sở dữ liệu, account ID Cloudflare của bạn và một API token. Token được nhập vào ô có nhãn API Token và lưu trong Keychain của macOS. Không có host, port, thiết lập SSL hay SSH tunnel, vì mọi request đều đi tới API của Cloudflare qua HTTPS.
Hãy tạo token từ mẫu Custom token với quyền Account > D1 > Edit, và chép lại ngay khi Cloudflare hiển thị, vì token chỉ hiện một lần. Token đó truy cập được toàn bộ cơ sở dữ liệu D1 trong tài khoản, không chỉ cơ sở dữ liệu bạn đang kết nối.
Import một URL d1://account-id/database-name sẽ điền sẵn tài khoản và cơ sở dữ liệu; token không bao giờ nằm trong URL, nên hãy dán token vào sau.
Đổi cơ sở dữ liệu và query
Bộ chuyển cơ sở dữ liệu trên thanh công cụ liệt kê các cơ sở dữ liệu D1 của tài khoản và chuyển qua lại giữa chúng mà không cần kết nối lại. Từ đây bạn cũng tạo và xóa được cơ sở dữ liệu. Mỗi tab giữ nguyên cơ sở dữ liệu mà nó được mở trên đó.
Query dùng dialect của SQLite. EXPLAIN QUERY PLAN được vẽ thành sơ đồ, còn thay đổi trên các dòng nằm chờ trong data grid cho tới khi bạn lưu, với Preview SQL hiển thị trước các câu lệnh.
Hãy viết mỗi câu lệnh sao cho nó tự đứng được: thiết lập PRAGMA hay temporary table do một câu lệnh tạo ra sẽ không còn ở câu tiếp theo, và mỗi câu lệnh được commit ngay khi chạy, không có gì để rollback. Khi Cloudflare giới hạn tần suất một request, thông báo lỗi kèm khoảng thời gian Cloudflare yêu cầu chờ trước khi thử lại.
Table, index và trigger
Tab Structure tạo và xóa table, thêm và xóa cột, tạo và xóa index, kể cả partial index có điều kiện WHERE; Preview SQL hiển thị DDL trước khi bạn lưu. Tab Triggers tạo, sửa và xóa trigger, còn table có thể đổi tên ngay từ sidebar.
Đổi thứ tự cột hay thay đổi khóa ngoại đồng nghĩa với việc dựng lại table. Trên D1, TablePro viết script dựng lại đó và giao cho bạn tự chạy, vì mỗi câu lệnh là một request riêng và không transaction nào giữ được cả quá trình dựng lại.
Di chuyển dữ liệu
TablePro không có import cho D1. Hãy nạp file SQL bằng wrangler d1 execute với tùy chọn --file, rồi duyệt kết quả tại đây. Export ghi table D1 hoặc kết quả query ra CSV, JSON, SQL, XLSX, Markdown, HTML và XML.
iPhone và iPad
Ứng dụng cho iPhone và iPad không có driver Cloudflare D1. Connection Cloudflare D1 đồng bộ từ máy Mac vẫn hiện trong danh sách nhưng không mở được.
Giới hạn
- Mỗi câu lệnh là một request HTTP riêng: không giữ trạng thái session và không hỗ trợ transaction.
Câu hỏi về Cloudflare D1
TablePro có dùng Sessions API của D1 không?
Không. Mỗi câu lệnh được gửi đi thành một request riêng, không có session và không có bookmark, nên không có gì được giữ lại từ câu lệnh này sang câu lệnh sau, trong cùng một tab hay giữa các tab.
Tôi có cần cài Wrangler không?
Không cần để duyệt, query hay sửa dữ liệu: TablePro làm việc trực tiếp với API của Cloudflare. Bạn chỉ cần Wrangler để nạp file SQL, vì TablePro không có import cho D1.
Tải TablePro
Yêu cầu macOS 13 Ventura trở lên