Αυτό το άρθρο είναι ένα άρθρο καθρέφτη της αυτόματης μετάφρασης, κάντε κλικ εδώ για να μεταβείτε στο αρχικό άρθρο.

Άποψη: 9908|Απάντηση: 0

[Συμβουλές] Σύνοψη προβλήματος εισαγωγής και εξαγωγής μεγάλων δεδομένων του Microsoft SQL Server

[Αντιγραφή συνδέσμου]
Δημοσιεύτηκε στις 6/11/2019 5:52:47 μ.μ. | | | |
Αυτή η ανάρτηση επεξεργάστηκε τελευταία φορά από το χρήστη QWERTYU στις 2019-11-7 08:46

Ερώτηση 1:

Σήμερα πήρα ένα Excel με σχεδόν ένα εκατομμύριο κομμάτια δεδομένων για εισαγωγή στη βάση δεδομένων, χρησιμοποίησα πρώτα το δικό μου Excel τοπικά (2014) και στη συνέχεια δημιούργησα ένα αρχείο σεναρίου για εκτέλεση στον διακομιστή (2008). Δεν είναι δυνατό το άνοιγμα του αρχείου SQL.

Λύση:

Χρησιμοποιήστε το ενσωματωμένο εργαλείο sqlcmd

Βήμα 1: Τύπος Win+R: εντολή cmd για να ανοίξετε το εργαλείο γραμμής εντολών.

Βήμα 2: Πληκτρολογήστε: cd C:\Program Files\Microsoft SQL Server\100\Tools\Binn (η συγκεκριμένη διαδρομή καταλόγου σχετίζεται με τη θέση της SQL που εγκαταστήσατε)

Βήμα 3: Τύπος: sqlcmd -S . -U sa -P 123 -d δοκιμή -i data.sql

Περιγραφή παραμέτρου:-Διεύθυνση διακομιστή S -u όνομα χρήστη -P κωδικός πρόσβασης -d όνομα βάσης δεδομένων -i διαδρομή αρχείου σεναρίου

Ερώτημα 2:

Σήμερα πήρα ένα αρχείο αντιγράφου ασφαλείας της βάσης δεδομένων, το επαναφέρω στον διακομιστή, ένα εκατομμύριο κομμάτια δεδομένων, για εξαγωγή στο Excel, ένα σύνολο εργασιών => εξαγωγή δεδομένων => SQL->Το Excel 2007 είναι πολύ καλό για εξαγωγή σε σφάλματα 65536, μια επιταγή είναι το όριο του Excel. Εάν εξακολουθείτε να μην μπορείτε να το δοκιμάσετε τοπικά, τότε γράψτε μια αποθηκευμένη διαδικασία για να εξαγάγετε πολλούς δευτερεύοντες πίνακες με σελιδοποίηση, ο καθένας με 65.536 κομμάτια δεδομένων. Είναι τόσο ενοχλητικό που δεν θέλω να γράψω. Χρησιμοποιήστε bcp.

Λύση:

Βήμα 1: Εκτελέστε την ακόλουθη δήλωση για να ορίσετε τη ρύθμιση παραμέτρων ασφαλείας

EXEC sp_configure "εμφάνιση σύνθετων επιλογών", 1

ΑΝΑΔΙΑΜΟΡΦΩΣΗ

EXEC sp_configure 'xp_cmdshell', 1

ΑΝΑΔΙΑΜΟΡΦΩΣΗ

Καμία ρύθμιση δεν θα δώσει σφάλμα "Ο SQL Server απέκλεισε την πρόσβαση στη διεργασία 'sys.xp_cmdshell' του στοιχείου 'xp_cmdshell' επειδή αυτό το στοιχείο τερματίστηκε ως μέρος της ρύθμισης παραμέτρων ασφαλείας για αυτόν τον διακομιστή. Οι διαχειριστές συστήματος μπορούν να ενεργοποιήσουν το "xp_cmdshell" χρησιμοποιώντας sp_configure. Για περισσότερες πληροφορίες σχετικά με την ενεργοποίηση xp_cmdshell, ανατρέξτε στο θέμα Διαμόρφωση περιφερειακών εφαρμογών στη σειρά βιβλίων SQL Server Online. ”

Βήμα 2: Κύριος EXEC: xp_cmdshell 'bcp "χρησιμοποιήστε -B επιλέξτε * από -T queryout -E -c -S -U -P

Περιγραφή παραμέτρου:-Όνομα βάσης δεδομένων Β  -Όνομα πίνακα T  -E Διαδρομή Excel  -Διεύθυνση διακομιστή S -Όνομα χρήστη U -Κωδικός πρόσβασης P

Παράδειγμα: EXEC master: xp_cmdshell 'bcp "χρησιμοποιήστε LJ_PD_IPR_INTERFACE επιλέξτε * από το PatentInformation" queryout D:\11.xls -c -S"." -U"sa" -P"123456"'


Ερώτημα 3:

Εάν τα εξαγόμενα δεδομένα περιέχουν ειδικούς χαρακτήρες όπως "[" και "]" με bcp, το τελικό στυλ του Excel θα μπερδευτεί. Βρήκα ένα άλλο εργαλείο: SQL Prompt


Λήψη Διεύθυνσης:Η σύνδεση με υπερσύνδεσμο είναι ορατή.


Η μέθοδος χρήσης είναι πολύ απλή και η ταχύτητα είναι επίσης πολύ γρήγορη, ζητήστε πρώτα τα απαιτούμενα δεδομένα και κάντε δεξί κλικ στο Άνοιγμα στο Excel στην επάνω αριστερή γωνία






Προηγούμενος:Οι τύποι SQL Server αντιστοιχούν σε τύπους C#
Επόμενος:3. Πρότυπο βιογραφικού 26G
Αποκήρυξη:
Όλο το λογισμικό, το υλικό προγραμματισμού ή τα άρθρα που δημοσιεύονται από το Code Farmer Network προορίζονται μόνο για μαθησιακούς και ερευνητικούς σκοπούς. Το παραπάνω περιεχόμενο δεν θα χρησιμοποιηθεί για εμπορικούς ή παράνομους σκοπούς, άλλως οι χρήστες θα υποστούν όλες τις συνέπειες. Οι πληροφορίες σε αυτόν τον ιστότοπο προέρχονται από το Διαδίκτυο και οι διαφορές πνευματικών δικαιωμάτων δεν έχουν καμία σχέση με αυτόν τον ιστότοπο. Πρέπει να διαγράψετε εντελώς το παραπάνω περιεχόμενο από τον υπολογιστή σας εντός 24 ωρών από τη λήψη. Εάν σας αρέσει το πρόγραμμα, υποστηρίξτε γνήσιο λογισμικό, αγοράστε εγγραφή και λάβετε καλύτερες γνήσιες υπηρεσίες. Εάν υπάρχει οποιαδήποτε παραβίαση, επικοινωνήστε μαζί μας μέσω email.

Mail To:help@itsvse.com