Konwertuj toml do accdb

Darmowy konwerter online TOML do ACCDB

Przeanalizuj dane TOML i załaduj je do ustrukturyzowanej bazy danych Microsoft Access ACCDB.

Konwertuj TOML na ACCDB online - za darmo

Uploading…
Wybrane pliki przekraczają łączny limit 75 MB. Wybierz mniej lub mniejsze pliki.

Plik jest przetwarzany natychmiast i nie jest przechowywany na naszych serwerach.

Jak konwertować toml do accdb

101convert.com Assistant Avatar

101convert.com assistant bot
1 godz.

Aplikacje wymagające bazy danych Microsoft Access mogą otrzymywać rekordy konfiguracji lub danych w formacie TOML, dlatego wartości muszą zostać przeanalizowane i wstawione do pliku .accdb. Jest to konwersja struktury danych, a nie bezpośrednia zmiana formatu, ponieważ TOML nie zawiera tabel, indeksów ani relacji odpowiadających tym w Access.

Czym jest format TOML

TOML, skrót od Tom's Obvious Minimal Language, to czytelny dla człowieka format konfiguracji oparty na parach klucz-wartość, tabelach, tablicach, ciągach znaków, liczbach, wartościach logicznych i datach. Deweloperzy używają go do ustawień aplikacji, narzędzi do kompilowania, menedżerów pakietów, plików wdrożeniowych i metadanych projektów.

Do typowych producentów i odbiorców należą Cargo języka Rust za pośrednictwem Cargo.toml, narzędzia do pakowania dla Python za pośrednictwem pyproject.toml, generatory stron statycznych, narzędzia do tworzenia gier oraz niestandardowe aplikacje. Z formatem TOML zwykle ma się do czynienia jako z plikiem konfiguracyjnym, a nie eksportem bazy danych.

Czym jest format ACCDB

ACCDB to format bazy danych Microsoft Access używany przez Access 2007 i nowsze wersje. Przechowuje tabele, kwerendy, formularze, raporty, indeksy, relacje, makra oraz — w obsługiwanych konfiguracjach — załączniki i pola wielowartościowe.

Plik ACCDB jest przydatny, gdy użytkownicy muszą edytować rekordy w Microsoft Access, uruchamiać zapisane kwerendy, drukować raporty lub udostępniać małą relacyjną bazę danych bez wdrażania serwerowego systemu baz danych. Access wymaga odpowiedniego aparatu Microsoft Access Database Engine lub instalacji Microsoft Access do tworzenia i edytowania plików ACCDB.

Jak faktycznie przekonwertować TOML na ACCDB

Ponieważ nie istnieje uniwersalne mapowanie jeden do jednego, najpierw zdecyduj, które sekcje TOML staną się tabelami, a które klucze kolumnami. Prosty plik TOML zawierający tablicę tabel to najłatwiejszy przypadek:

[[products]]
name = 'Keyboard'
price = 49.95
available = true

[[products]]
name = 'Mouse'
price = 19.95
available = false

W przypadku tej struktury Python 3.11 lub nowszy może analizować TOML za pomocą wbudowanego modułu tomllib. Zainstaluj sterownik Microsoft Access ODBC oraz pyodbc, a następnie uruchom skrypt, który utworzy bazę danych i wstawi rekordy:

import tomllib
import pyodbc

with open('products.toml', 'rb') as source:
    data = tomllib.load(source)

rows = data['products']
fields = ['name', 'price', 'available']

def quote_identifier(value):
    return '[' + value.replace(']', ']]') + ']'

def sql_type(values):
    if all(isinstance(value, bool) for value in values):
        return 'YESNO'
    if all(isinstance(value, (int, float)) and not isinstance(value, bool) for value in values):
        return 'DOUBLE'
    return 'LONGTEXT'

database = 'products.accdb'
connection_string = (
    'DRIVER={Microsoft Access Driver (*.mdb, *.accdb)};'
    'DBQ=' + database + ';'
)

with pyodbc.connect(connection_string, autocommit=True) as connection:
    cursor = connection.cursor()
    columns = ['[id] COUNTER PRIMARY KEY']
    for field in fields:
        values = [row.get(field) for row in rows if row.get(field) is not None]
        columns.append(quote_identifier(field) + ' ' + sql_type(values))
    cursor.execute('CREATE TABLE [products] (' + ', '.join(columns) + ')')

    placeholders = ', '.join('?' for field in fields)
    column_list = ', '.join(quote_identifier(field) for field in fields)
    statement = 'INSERT INTO [products] (' + column_list + ') VALUES (' + placeholders + ')'
    for row in rows:
        cursor.execute(statement, [row.get(field) for field in fields])

Zapisz skrypt jako toml_to_accdb.py i wykonaj polecenie python toml_to_accdb.py. Skrypt utworzy plik products.accdb, doda klucz główny z automatyczną numeracją, określi podstawowe typy Access i wstawi elementy tablicy.

W przypadku bardziej złożonych plików znormalizuj dane przed ich załadowaniem. Tabela TOML, taka jak [server], może stać się tabelą server zawierającą jeden wiersz; tablica taka jak [[users]] może stać się tabelą users; zagnieżdżone tabele powinny zwykle stać się powiązanymi tabelami z kluczami głównymi i obcymi. Nie przechowuj każdego zagnieżdżonego obiektu w jednej kolumnie tekstowej, chyba że zachowanie oryginalnej konfiguracji jest ważniejsze niż możliwość wykonywania na niej zapytań.

Microsoft Access może następnie otworzyć wynik za pomocą File → Open → Browse. Jeśli dane zostały wcześniej zapisane w formacie CSV, użyj External Data → New Data Source → From File → Text File, wybierz separator i typy pól, a podczas importowania wybierz klucz główny.

Możesz także wypróbować bezpłatny konwerter na stronie 101convert.com bez instalowania oprogramowania. Konwersja online jest odpowiednia tylko wtedy, gdy usługa obsługuje strukturę TOML, a wynikowy schemat bazy danych spełnia Twoje wymagania; przed użyciem pliku sprawdź wygenerowane tabele i wartości.

Jakość, zgodność i ograniczenia

Plik TOML nie definiuje kluczy relacyjnych, indeksów, długości pól ani relacji między tabelami, dlatego te elementy muszą zostać zaprojektowane podczas konwersji. Daty TOML, czasy lokalne, tablice, tabele wbudowane, ciągi wielowierszowe i tablice z mieszanymi typami mogą wymagać jawnej obsługi zamiast automatycznego określania typów.

Pola tekstowe Access mogą przechowywać znaki Unicode, ale słowa zastrzeżone i znaki występujące w kluczach TOML powinny zostać poprzedzone znakami ucieczki lub zmienione przed utworzeniem identyfikatorów SQL. Sterownik Microsoft Access ODBC jest zwykle dostępny w systemie Windows; 32-bitowe i 64-bitowe instalacje Python, sterownika i Office muszą korzystać ze zgodnych architektur.

Po załadowaniu otwórz plik ACCDB w Access i sprawdź liczbę wierszy, wartości null, daty, precyzję liczb dziesiętnych, znaki Unicode oraz relacje. Zachowaj oryginalny plik TOML, ponieważ wygenerowana baza danych zazwyczaj nie jest w stanie odtworzyć oryginalnego formatowania, komentarzy, kolejności kluczy ani dokładnej zagnieżdżonej struktury.


Uwaga: Ten rekord konwersji toml do accdb jest niekompletny, wymaga weryfikacji i może zawierać nieścisłości. Zagłosuj poniżej, czy te informacje były pomocne, czy nie.

Czy te informacje były pomocne?

Porównanie formatu TOML z ACCDB

Jak formaty TOML i ACCDB wypadają w porównaniu pod względem najważniejszych cech dla tej konwersji.

Porównanie formatów plików TOML i ACCDB
Cecha .TOML Tom's Obvious, Minimal Language .ACCDB Microsoft Access Database
Otwarty standard Tak Nie
Kompresja Bez kompresji
Typowy rozmiar pliku Mały Średni
Otwiera się w przeglądarce internetowej Nie Nie
Dalsza edycja Łatwy Ograniczone
Obsługa metadanych Podstawowy Podstawowy
Czytelny tekstowo Tak Nie
Najlepszy do Wymiana danych Wymiana danych
Wprowadzono 2013 2007
Twórca Tom Preston-Werner Microsoft
Typ MIME application/toml application/vnd.ms-access

Najczęściej zadawane pytania

Czy konwerter TOML do ACCDB jest darmowy?

Tak, konwersja TOML do ACCDB na 101convert.com jest całkowicie darmowa. Nie wymaga rejestracji, adresu e-mail ani instalacji.

Jak duży może być mój plik TOML?

Możesz przesłać pliki TOML o rozmiarze do 300 MB i przekonwertować do 20 plików jednocześnie w jednej partii.

Co dzieje się z przesłanymi plikami?

Pliki są przetwarzane automatycznie i usuwane z naszych serwerów kilka minut po konwersji. Nigdy nie przeglądamy ani nie udostępniamy Twoich plików.

Czy muszę instalować oprogramowanie, aby przekonwertować TOML do ACCDB?

Nie. Konwersja TOML do ACCDB odbywa się całkowicie online w przeglądarce i działa w systemach Windows, Mac, Linux, Android i iPhone.

Konwersja nie powiodła się?

W większości przypadków przyczyną jest nieprawidłowy format pliku. Prześlij prawidłowy plik TOML dla tej konwersji z TOML do ACCDB. Czasami problem może również występować po naszej stronie. Analizujemy powtarzające się nieudane konwersje i wyłączamy lub naprawiamy konwerter, jeśli wykryjemy usterkę.