Ενημέρωση Βάσης SQL Server

Γενικές συζητήσεις για SQL και SQL Servers (RDBMS)

Συντονιστές: WebDev Moderators, Super-Moderators

Απάντηση
berta
Δημοσιεύσεις: 6
Εγγραφή: 30 Δεκ 2006 23:58

Ενημέρωση Βάσης SQL Server

Δημοσίευση από berta » 25 Ιούλ 2009 20:46

Έχουμε ένα αρχείο txt (delimited, τα δεδομένα χωρίζονται μεταξύ τους με κόμμα [,] π.χ. file.txt όπου έχουμε δεδομένα ανά γραμμή που αντιστοιχούν σε δύο πεδία ενός πίνακα π.χ. meli μιας βάσης δεδομένων π.χ. basi

Για παράδειγμα το αρχείο file.txt έχει τις εξής γραμμές :

1,200
2,15000
3,300
200,500
κ.λ.π.

Η πρώτη στήλη αντιστοιχεί στο ID του πίνακα meli της βάσης (μοναδικός κωδικός) και η δεύτερη στήλη αντιστοιχεί στο πεδίο xreosi του πίνακα meli της βάσης.
θέλω να ενημερώσω το πεδίο xreosi του πίνακα meli της βάσης, μαζικά διαβάζοντας τα δεδομένα από το αρχείο file.txt, ελέγχοντας ο κωδικός της πρώτης στήλης του αρχείου να αντιστοιχεί στο id του πίνακα meli

Αν ήταν μόνο μια εγγραφή θα έγραφα :

update basi.meli SET meli.xreosi = 200 WHERE meli.ID = 1
τώρα που έχουμε πολλές εγγραφές πως θα ανοίξω το αρχείο file.txt να διαβάσω γραμμή γραμμή και ταυτόχρονα να ενημερωνω το πίνακα ;

Ευχαριστώ εκ των προτέρων

Άβαταρ μέλους
virxen75
Δημοσιεύσεις: 493
Εγγραφή: 18 Φεβ 2009 00:17
Τοποθεσία: ΗΡΑΚΛΕΙΟ ΚΡΗΤΗΣ

Ενημέρωση Βάσης SQL Server

Δημοσίευση από virxen75 » 29 Ιούλ 2009 10:36

Κώδικας: Επιλογή όλων

BULK INSERT pinakas 
    FROM 'c:\arxeio.txt' 
    WITH 
    ( 
        FIELDTERMINATOR = ',',ROWTERMINATOR = '\n' 
    )
αν τα δεδομένα ξεκινάνε π.χ. από την 2η γραμμή του αρχείου τότε:

Κώδικας: Επιλογή όλων

BULK INSERT pinakas 
    FROM 'c:\arxeio.txt' 
    WITH 
    ( 
        FIRSTROW = 2, 
        FIELDTERMINATOR = ',', 
        ROWTERMINATOR = '\n' 
    )



Άβαταρ μέλους
CyberCr33p
Honorary Member
Δημοσιεύσεις: 3203
Εγγραφή: 06 Νοέμ 1999 01:00
Τοποθεσία: Αθήνα
Επικοινωνία:

Ενημέρωση Βάσης SQL Server

Δημοσίευση από CyberCr33p » 29 Ιούλ 2009 14:15

Ωραίος. Ίσως χρειαστεί κάπου.

Απάντηση

Επιστροφή στο “Βάσεις Δεδομένων και SQL - γενικά”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες