Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

Unrestricted Updates/Inserts/Deletes

Đang mở
#417 2 bình luận 0 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

Đánh giá

Độ khó
5/5
Thời gian dự kiến
Hơn một tuần
Mức phù hợp với người mới
25/100
Loại issue
Tính năng
Độ rõ ràng
Cần làm rõ
Mức độ hoạt động
Đình trệ
Công nghệ
fsharp, sql
Lĩnh vực
database

Hướng nghiên cứu

Xem xét các thao tác CRUD hiện có và khả năng hỗ trợ truy vấn LINQ trong type provider SQLProvider, tập trung vào các ví dụ update, insert và delete được mô tả trong issue. Xác định liệu các join, bộ lọc và giá trị ở phía truy vấn từ F# có thể biểu diễn các thao tác SQL dựa trên tập hợp này hay không. Được xem là hoàn tất khi đã ghi lại khả năng hỗ trợ hiện tại hoặc xác định phạm vi triển khai đã được thống nhất cho các thao tác được yêu cầu.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

enhancement

I noticed recently some issues/pr's in a similar vein, namely one relating to unrestricted deletes, and another about comparing two columns both on the query side (rather than the left being an F# value).

I'd like to be able to do something equivalent to the following:

UPDATE A
    SET A.COLUMN1 = 'FSHARP VALUE'
WHERE A.COLUMN2 = 'ANOTHER FSHARP VALUE'

or, more involving:

UPDATE A
    SET A.COLUMN1 = B.COLUMN2
FROM TABLEA AS A
INNER JOIN TABLEB AS B
    ON A.KEY = B.KEY
WHERE A.COLUMN3 = 'FSHARP VALUE'

edit for some other examples:

INSERT INTO TABLEA
SELECT COLUMN1,COLUMN2,'FSHARP VALUE1'
FROM TABLEB
WHERE TABLEB.COLUMN1 = 'FSHARP VALUE2'
DELETE TABLEA
FROM TABLEA
INNER JOIN TABLEB
    ON TABLEA.KEY =TABLEB.KEY
WHERE TABLEB.COLUMN1 = 'FSHARP VALUE1'

Basically, I want to push as much of the operational semantics to the SQL layer as possible, influencing the query only with some values from F#, mostly to constrain joins/where/group/having clauses. The goal is to stop having to produce UDF/PROC's in native T-SQL in order to perform set based updates/inserts.

Is something like this already possible? Is it antithetical to the intent of this type provider?

Ngôn ngữ chính
F#
Star
627
Fork
147
Merge trung bình
2 giờ 2 phút
Pull request đã merge (30 ngày)
1

Hướng dẫn đóng góp

Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. 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.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của fsprojects/SQLProvider

Tất cả issue của fsprojects/SQLProvider

Issue tương tự

Thêm issue về Databases

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.