İçeriğe geç

JSON dosyalarını MariaDB için dönüştürün

JSON dosyanızı bırakın, CREATE TABLE ve INSERT ifadeleri içeren bir MariaDB betiği alın. Her sütuna bir tür verilir ve her düzeltme satırı ve sütunuyla listelenir.

Dosyanız
jsonpedidos_2024.jsonÖrnek dosya, 771 bayt
Veritabanınız

4 satır dönüştürüldü, 2 düzeltme, reddedilen yok

Göster
pedidos_2024.json dosyasının ilk satırları, her düzeltme işaretli
Satır
2000481Peña Muñoz2024-02-03T10:15:00Z1234.5true
3000482José Ángel Ruiz2024-02-15T16:40:00Z99.9falseEntrega en la tarde
4000483Zoë Ortíz2024-02-29T09:05:00Z12true
5000484Ñuño Castañeda2024-03-11T13:30:00Z980.75síFactura con "RFC"
-- Written by IntoSQL for MariaDB.

SET NAMES utf8mb4;
SET SESSION sql_mode = REPLACE(@@sql_mode, 'NO_BACKSLASH_ESCAPES', '');
START TRANSACTION;

CREATE TABLE pedidos_2024 (
    pedido varchar(8) NOT NULL,
    cliente varchar(16) NOT NULL,
    fecha datetime NOT NULL,
    total decimal(6,2) NOT NULL,
    pagado tinyint(1) NOT NULL,
    notas varchar(32)
) DEFAULT CHARSET=utf8mb4;

INSERT INTO pedidos_2024 (pedido, cliente, fecha, total, pagado, notas) VALUES
('000481', 'Peña Muñoz', '2024-02-03 10:15:00', 1234.5, TRUE, NULL),
('000482', 'José Ángel Ruiz', '2024-02-15 16:40:00', 99.9, FALSE, 'Entrega en la tarde'),
('000483', 'Zoë Ortíz', '2024-02-29 09:05:00', 12, TRUE, NULL),
('000484', 'Ñuño Castañeda', '2024-03-11 13:30:00', 980.75, TRUE, 'Factura con "RFC"');

COMMIT;

Düzeltmeler

  1. "pedido" içindeki baştaki sıfırlar korundu: 000481, 000481 olarak kalır ve metin olarak saklanır.
  2. "pagado" evet ve hayır sözcükleri içeriyor (sí); boolean olarak saklandı.

Dosyan bu bilgisayarda dönüştürülür ve asla yüklenmez.

Diğer örnekler:

JSON dosyasından MariaDB için, sütun sütun

Yukarıdaki örnek pedidos_2024.json, IntoSQL'in MariaDB için yazdığı haliyle: her sütunun dosyada ne tuttuğu, aldığı tür ve ilk değerinin betiğe nasıl yazıldığı.

Dosyadaİlk değerSütunMariaDB türüBetikte
pedido000481pedidovarchar(8)'000481'
clientePeña Muñozclientevarchar(16)'Peña Muñoz'
fecha2024-02-03T10:15:00Zfechadatetime'2024-02-03 10:15:00'
total1234.5totaldecimal(6,2)1234.5
pagadotruepagadotinyint(1)TRUE
notas-notasvarchar(32)NULL

Betiği MariaDB veritabanına yükleyin

İndirilen dosya düz bir .sql dosyasıdır. MariaDB araçlarıyla çalıştırın.

Terminalden

mariadb --default-character-set=utf8mb4 mydb < pedidos_2024.mariadb.sql

Betik utf8mb4'ü kendisi ayarlar; bu bayrak istemcinin de aynı şekilde göndermesini sağlar, böylece aksanlı harfler bozulmadan ulaşır.

Bir veritabanı aracından

HeidiSQL veya DBeaver'da betiği açıp çalıştırın.

Betik olmadanPro

IntoSQL Pro, dosyayı masaüstü uygulamasından veya komut satırından doğrudan MariaDB veritabanına yükler; betik yazmanız gerekmez.

intosql load pedidos_2024.json --into mariadb://user@localhost/mydb

JSON dosyaları ve MariaDB hakkında bilmeniz gerekenler

IntoSQL'in JSON dosyalarında okudukları

  • Dosya bir nesne dizisi, bu diziyi data gibi bir anahtar altında tutan bir nesne veya satır başına bir nesne (NDJSON) olabilir.
  • Her anahtar bir sütun olur. Bir değerin içindeki nesneler ve diziler JSON metni olarak korunur.
  • Sayılar basamaklarını aynen korur, ISO 8601 tarihleri ise tarih veya zaman damgası olur.

MariaDB hakkında bilmeniz gerekenler

  • Evet ve hayır değerleri tinyint(1) olur. 255 karaktere kadar metin varchar olur; daha uzun metin boyutuna göre text, mediumtext veya longtext olur.
  • Betik utf8mb4 kullanır ve SQL modunu ayarlar; böylece aksanlar, emoji, ters eğik çizgiler ve satır sonları yazıldığı gibi yüklenir.
  • MariaDB'nin datetime türü saat dilimi saklamaz.

Her değer türü MariaDB içinde nasıl saklanır

DeğerMariaDB
Evet ve hayırtinyint(1)
Tam sayılarint
Büyük tam sayılarbigint
Ondalık sayılardecimal(p,s)double
Kayan noktalı sayılardouble
Tarihlerdate
Günün saatleritime(6)time
Saatli tarihlerdatetime(6)datetime
Saatli ve saat farkı olan tarihlerdatetime(6)datetime
Metinvarchar(n)textmediumtextlongtext

JSON dosyasından MariaDB için sorular

Yanıtınızı bulamadınız mı? İletişim sayfasından bize yazın, bir kişi yanıt verir. İletişim sayfası

JSON dosyasını MariaDB için nasıl dönüştürürüm?

Dosyanızı bu sayfanın üstündeki dönüştürücüye bırakın. Başlığı bulur, her değeri okur ve yaptığı her düzeltmeyi listeleyerek MariaDB betiğini yazar. Betiği indirip the mariadb client ile çalıştırın.

JSON dosyası hangi yapıda olmalı?

Bir nesne dizisi, bu diziyi data gibi bir anahtar altında tutan bir nesne veya satır başına bir nesne (NDJSON). Her anahtar bir sütun olur.

Hangi MariaDB türlerini kullanır?

Evet/hayır değerleri tinyint(1), tam sayılar int, ondalıklar decimal(p,s), tarihler date, saatli tarihler datetime(6) ve metin varchar(n) olur. Boyutlar her sütundaki en uzun değere göre belirlenir.

MariaDB için baştaki sıfırları korur mu?

Evet. 000481 gibi bir kod metin olarak kalır; MariaDB onu varchar(8) olarak saklar ve betik onu '000481' olarak yazar.

Verileri betik olmadan MariaDB veritabanına yükleyebilir mi?

Evet, IntoSQL Pro ile. Masaüstü uygulaması ve komut satırı MariaDB veritabanına bağlanır, önce tabloyu oluşturur ve satırları doğrudan yükler.

JSON dosyası ne kadar büyük olabilir?

Satır başına bir nesne içeren NDJSON akış halinde okunur, bu yüzden tarayıcıda birkaç gigabaytlık dosyalar çalışır. Bir JSON belgesi bütün olarak okunur, bu yüzden sınırı tarayıcının bu sayfaya verdiği bellektir. Masaüstü uygulaması ve komut satırı her boyutta dosyayı alır.