Hướng dẫn python bulk insert sql server sqlalchemy - python chèn số lượng lớn máy chủ sql sqlalchemy
Tôi có một số khung dữ liệu gấu trúc khá lớn và tôi muốn sử dụng các ánh xạ SQL hàng loạt mới để tải chúng lên máy chủ Microsoft SQL thông qua SQL Alchemy. Phương thức pandas.to_sql, trong khi đẹp, chậm. Show Tôi đang gặp khó khăn khi viết mã ... Tôi muốn có thể vượt qua chức năng này một bản dữ liệu gấu trúc mà tôi đang gọi 2, một tên lược đồ tôi đang gọi 3 và tên bảng tôi đang gọi 4. Lý tưởng nhất, hàm sẽ 1.) Xóa bảng nếu nó đã tồn tại. 2.) Tạo một bảng mới 3.) Tạo một bản đồ và 4.) Chèn số lượng lớn bằng cách sử dụng dữ liệu Mapper và Pandas. Tôi bị mắc kẹt trong Phần 3.Đây là mã (thừa nhận thô) của tôi. Tôi đang đấu tranh với cách làm cho chức năng Mapper hoạt động với các phím chính của mình. Tôi không thực sự cần các khóa chính nhưng chức năng Mapper yêu cầu nó. Cảm ơn vì những hiểu biết.
Hỏi ngày 13 tháng 8 năm 2015 lúc 20:30Aug 13, 2015 at 20:30
không cónone 1.1272 Huy hiệu vàng13 Huy hiệu bạc16 Huy hiệu đồng2 gold badges13 silver badges16 bronze badges 5 Tôi đã gặp phải một vấn đề tương tự với PD.TO_SQL mất hàng giờ để tải lên dữ liệu. Mã số dưới đây đã chèn cùng một dữ liệu trong vài giây.
Đã trả lời ngày 4 tháng 11 năm 2015 lúc 18:39Nov 4, 2015 at 18:39
Ansonwansonwansonw 1.4891 Huy hiệu vàng16 Huy hiệu bạc22 Huy hiệu đồng1 gold badge16 silver badges22 bronze badges 8 Điều này có thể đã được trả lời sau đó, nhưng tôi đã tìm thấy giải pháp bằng cách đối chiếu các câu trả lời khác nhau trên trang web này và phù hợp với tài liệu của SQLalchemy.
Hy vọng điều này sẽ giúp bất cứ ai đến đây và muốn trộn gấu trúc và sqlalchemy một cách nhanh chóng.
Đã trả lời ngày 30 tháng 12 năm 2015 lúc 15:55Dec 30, 2015 at 15:55
AkagonjoakagonjoAkaGonjo 2613 Huy hiệu bạc3 Huy hiệu đồng3 silver badges3 bronze badges 5 Dựa trên câu trả lời của @ansonw:
Tôi chèn 2000 dòng trong 5 giây thay vì 4 phút Đã trả lời ngày 25 tháng 5 năm 2017 lúc 11:36May 25, 2017 at 11:36
3 Pandas 0.25.1 có thông số để thực hiện nhiều chất lọc, vì vậy không còn cần thiết phải giải quyết vấn đề này với SQLalchemy. Đặt 5 khi gọi 6.Trong ví dụ này, nó sẽ là 7Trả lời có nguồn gốc từ tài liệu ở đây Đáng chú ý rằng tôi chỉ thử nghiệm điều này với dịch chuyển đỏ. Vui lòng cho tôi biết nó diễn ra như thế nào trên cơ sở dữ liệu khác để tôi có thể cập nhật câu trả lời này. Đã trả lời ngày 4 tháng 9 năm 2019 lúc 4:19Sep 4, 2019 at 4:19
3 Vì đây là khối lượng công việc nặng I/O, bạn cũng có thể sử dụng mô -đun ren python thông qua đa xử lý.dummy. Điều này tăng tốc mọi thứ đối với tôi:
Đã trả lời ngày 10 tháng 2 năm 2017 lúc 16:26Feb 10, 2017 at 16:26
Dgorissendgorissendgorissen 6.1793 huy hiệu vàng42 Huy hiệu bạc52 Huy hiệu đồng3 gold badges42 silver badges52 bronze badges Đây là một phương pháp đơn giảnTải xuống trình điều khiển cho kết nối cơ sở dữ liệu SQLĐối với Linux và Mac OS:https://learn.microsoft.com/en-us/sql/connect/odbc/linux-mac/installing-the-microsoft-odbc-driver-for-sql-server?view=sql-server-2017 Cho cửa sổ:https://www.microsoft.com/en-us/download/details.aspx?id=56567 Tạo kết nối
Chèn dữ liệu
Nếu có nhiều hồ sơ
PS: Bạn có thể thay đổi các tham số theo yêu cầu của bạn. Đã trả lời ngày 19 tháng 6 năm 2019 lúc 12:27Jun 19, 2019 at 12:27
Suhas_PoteSuhas_PoteSuhas_Pote 3.0371 Huy hiệu vàng20 Huy hiệu bạc34 Huy hiệu đồng1 gold badge20 silver badges34 bronze badges Giải pháp cụ thể của Postgres của tôi bên dưới tự động tạo ra bảng cơ sở dữ liệu bằng cách sử dụng gấu trúc của bạn và thực hiện chèn số lượng lớn bằng cách sử dụng Postgres 8
Đã trả lời ngày 1 tháng 8 năm 2017 lúc 19:09Aug 1, 2017 at 19:09
mgoldwassermgoldwassermgoldwasser 13.8K15 Huy hiệu vàng75 Huy hiệu bạc102 Huy hiệu đồng15 gold badges75 silver badges102 bronze badges Đối với những người như tôi đang cố gắng thực hiện các giải pháp nói trên: Pandas 0.24.0 hiện có TO_SQL với tùy chọn Chunksize và Phương thức = 'Multi' chèn với số lượng lớn ... Đã trả lời ngày 3 tháng 2 năm 2019 lúc 14:05Feb 3, 2019 at 14:05
freddy888freddy888freddy888 8861 Huy hiệu vàng16 Huy hiệu bạc36 Huy hiệu đồng1 gold badge16 silver badges36 bronze badges Điều này làm việc cho tôi để kết nối với cơ sở dữ liệu Oracle bằng CX_ORACLE và SQLALCHEMY
Đã trả lời ngày 4 tháng 1 năm 2019 lúc 15:04Jan 4, 2019 at 15:04
Bootstrapbootstrapbootstrap Huy hiệu vàng 611 Huy hiệu bạc5 Huy hiệu đồng1 gold badge1 silver badge5 bronze badges Mã dưới đây có thể giúp bạn, tôi đã phải đối mặt với cùng một vấn đề trong khi tải các bản ghi 695.000k Phương pháp cắt ngắn bảng trước khi tải Truncate the table before load 0Lưu ý:- Động cơ = Kết nối của tôi với Máy chủ đích, SA cho (Nhập SQLalchemy là "SA" 1Phụ thuộc vào yêu cầu, làm cộng đồng/thay thế Đã trả lời ngày 24 tháng 6 lúc 10:39Jun 24 at 10:39
DeepakdeepakDeepak 3721 Huy hiệu vàng6 Huy hiệu bạc13 Huy hiệu đồng1 gold badge6 silver badges13 bronze badges |