Προς το περιεχόμενο

Εισαγωγή csv μόνο νέες εγγραφές


Spect~

Προτεινόμενες αναρτήσεις

Δημοσ. (επεξεργασμένο)
1 ώρα πριν, Spect~ είπε

Αυτο αν ξερεις να το κανεις.. Αν μου πεις σε MS Access πως μπορω να το κανω ευχαριστως να το κανω ετσι!

Αν tblResCSV είναι ο πρόχειρος πίνακας, με το παρακάτω ερώτημα μεταφέρεις τα δεδομένα στο tblReservations μόνο για τις εγγραφές που δεν υπάρχουν σε αυτόν. Αντιστοιχίζεις τα πεδία τους όπως θέλεις και μετατρέπεις τους τύπους τους αν χρειάζεται.

(αντικατέστησε τα αποσιωπητικά με τα υπόλοιπα πεδία)

INSERT INTO tblReservations ( ID, GestName, StartDate,... )
SELECT t.ID, t.[Unnamed: 13], CDate(t.StartDate) AS SD,... 
FROM tblResCSV AS t LEFT JOIN tblReservations ON t.ID = tblReservations.ID   
WHERE tblReservations.ID IS NULL;

Αν το ονομάσεις qapNewRes, τότε, το συμβάν Open της πρώτης φόρμας μπορεί να γίνει;

Private Sub Form_Open(Cancel As Integer)
    Dim db As DAO.Database

    Set db = CurrentDb
    'Εκτέλεση της αποθηκευμένης εισαγωγής του .csv αρχείου
    DoCmd.RunSavedImportExport "MySavedImportCSV1"
    'Εκτέλεση του αποθηκευμένου ερωτήματος προσάρτησης
    db.QueryDefs("qapNewRes").Execute
    
    If db.RecordsAffected > 0 Then
        MsgBox "Έχεις " & db.RecordsAffected & " νέες κρατήσεις.", vbInformation
    Else
        'Αναδουλειά!...
    End If
    Set db = Nothing
End Sub

(εννοείται ότι λείπει εντελώς το error handling από τα παραπάνω παραδείγματα)

Έτσι, ανοίγοντας την εφαρμογή, εισάγονται οι κρατήσεις από το csv στον πρόχειρο πίνακα όπως-όπως και μεταφέρονται στον tblReservations όπως πρέπει.

Επεξ/σία από MastroGiannis
Αλλαγή ονόματος πίνακα σε tblReservations
  • Like 1
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα

  • Δημιουργία νέου...