feature-request: support 64bit bigint
Đang mở
Chưa có ai nhận issue này.
enhancement
- Ngôn ngữ chính
- JavaScript
- Star
- 13.7k
- Fork
- 1.1k
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Mô tả
not sure how feasible this feature-request is. sqlite3 docs say INTEGERS can be 1, 2, 3, 4, 6, or 8 bytes.
is it possible to:
- input - allow 64-bit bigint as a
paraminput? e.g.
db.exec({
params: {
"@bigint": 12345678901234567890n
},
sql: "SELECT @bigint"
});
- output - if integer >
Number.MAX_SAFE_INTEGER, then allow option to auto-coerce it to bigint? e.g.
db.exec({
preserveIntegerPrecision: true,
sql: "SELECT 1234 AS int, 1234567890123456789 AS bigint"
});
/*
{
"results": [
{
"columns": [
"int",
"bigint"
],
"values": [
[
1234,
12345678901234567890123456789n
]
]
}
]
}
*/
Hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Hướng nghiên cứu
Start with the db.exec parameter-binding path shown in the issue and the result conversion path for SQLite integers. Compare the requested bigint input and preserveIntegerPrecision output examples with SQLite's integer behavior; done means both cases have agreed semantics and coverage for safe and unsafe integer values.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- javascript, sqlite
- Lĩnh vực
- databases
- Loại issue
- Tính năng
- Độ khó
- 5/5
- Thời gian dự kiến
- Hơn một tuần
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Khá rõ ràng
- Mức phù hợp với người mới
- 25/100