Sao chép dữ liệu lớn từ kết quả truy vấn sql


9

Trong máy chủ sql 2008 của tôi, sau khi chạy truy vấn, dữ liệu trả về rất lớn, tính bằng triệu. Tôi đã thử sao chép nhưng nó cho một lỗi bộ nhớ sql ngoại lệ. Bạn có thể cho chúng tôi biết làm thế nào tôi có thể sao chép toàn bộ dữ liệu và dán nó vào excel.

Tôi không muốn xuất nó thành tệp txt vì dữ liệu không được căn chỉnh. Vì vậy, tôi muốn sao chép thủ công và dán nó vào excel. Xin vui lòng cho tôi biết giải pháp cho họ


Như một điểm cần làm rõ: Bạn có thể bị ngoại lệ "hết bộ nhớ" khi SSMS cố gắng xử lý dữ liệu đến; nếu có nhiều hơn bộ nhớ, bạn sẽ gặp lỗi đó. Nếu điều đó không gây ra lỗi hết bộ nhớ, nhưng nó xảy ra khi bạn cố sao chép và dán dữ liệu, thì vấn đề nằm ở việc sao chép dữ liệu vào bộ nhớ lần thứ hai để sao chép và dán. Bất kỳ câu trả lời nào liên quan đến việc bỏ qua việc trả lại dữ liệu cho SMSS (chẳng hạn như câu trả lời được chấp nhận hiện tại ) đều tránh điều này.
RDFozz

Câu trả lời:


17

Bạn sẽ không thể sao chép và dán như bạn muốn. Tuy nhiên, bạn có một số tùy chọn. Đơn giản nhất là nhấp chuột phải vào đầu ra và lưu dưới dạng tệp CSV. Điều đó giả định rằng bạn không có dấu phẩy trong dữ liệu văn bản của mình.

Lưu kết quả dưới dạng

Tùy chọn tiếp theo của bạn (và có lẽ là tốt nhất) là sử dụng trình hướng dẫn xuất. Nhấp chuột phải vào tên cơ sở dữ liệu của bạn, sau đó Nhiệm vụ, sau đó Xuất Trình hướng dẫn

Phù thủy ở đâu?

Nguồn của bạn sẽ là cơ sở dữ liệu bạn nhấp chuột phải vào.

Nguồn

Chọn một điểm đến excel.

Nơi Đến

Chọn ghi Truy vấn để chỉ định dữ liệu cần truyền.

Chọn một truy vấn

Dán vào truy vấn của bạn

Dán vào truy vấn của bạn

Bạn có thể thay đổi tên trang tính trong bảng tính của bạn ở đây.

Chọn bảng nguồn

Tiếp theo là danh sách các ánh xạ để bạn xem xét

Danh sách bản đồ

Và từ đây, bạn có thể chạy gói ngay lập tức hoặc lưu gói SSIS để sử dụng / sửa lỗi sau này. Nếu lần xuất của bạn không hoạt động lần đầu tiên và bạn hoàn toàn quen thuộc với SSIS, tôi sẽ lưu gói để bạn có thể truy cập vào gói đó và sửa lỗi bên ngoài trình hướng dẫn.

Tùy chọn lưu và chạy

Sau đó chỉ cần nhấn kết thúc và kết thúc một lần nữa.


2

Nếu bạn nhấn mạnh vào Excel là đích đến, thì có hai tùy chọn dễ dàng.

Đầu tiên, "sqlcmd.exe" hoặc "bcp.exe" gốc cho phép bạn chạy một truy vấn và sẽ tự động xuất nó thành một tệp. Giả sử dữ liệu của bạn không có tab, đầu ra được phân tách bằng tab sẽ tự động nhập vào các cột Excel. Nếu dữ liệu của bạn có các tab, bạn sẽ cần chọn một dấu phân cách khác và có các cột chọn Excel dựa trên đó trong quá trình nhập.

Thứ hai, thả truy vấn của bạn vào báo cáo SSRS (SQL Server Reporting Services), chạy nó, nhấp vào mũi tên ở bên phải của đĩa mềm / biểu tượng lưu và xuất sang Excel. Hàng triệu hàng yêu cầu SSRS 2012, lưu dưới dạng .xlsx - thật không may, ngay cả SSRS 2008 R2 cũng không cho phép nhiều hơn 64 nghìn hàng. Để tự động hóa, lập lịch báo cáo.

Tài liệu tham khảo cho các lệnh này:

Nhập cảnh sqlcmd

Nhập cảnh bcp

tab xã hội.msd sqlcmd giới hạn bài viết diễn đàn


0

Nếu nó chỉ là một điều một lần.

Chạy truy vấn. Trong cửa sổ kết quả ở dưới cùng bên phải, nhấp vào Quảng trường trống ở phía trên bên trái. Lưu kết quả Vì ... Mặc định là CSV, chọn bất cứ nơi nào bạn muốn kết xuất tệp (chia sẻ mạng hoặc cục bộ).

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.