Fügen Sie Protokollpuffer mit Python in SQLite ein

In 3 Zeilen

Verschieben Sie die serialisierten Daten von Protokollpuffern in SQLite.

  1. Erstellen Sie eine "Blob" -Spalte in SQLite
  2. Verwenden Sie beim Eintauchen "Puffer"
  3. Laden Sie mit str

(Es wird nur als Binärdatei behandelt, unabhängig von Protobuf)

Beispiel

person.proto


message Person {
   optional string name = 1;
   optional int32 age = 2;
 }

sample.py


#!/usr/bin/env python
# -*- coding: utf-8 -*-

import sqlite3
from person_pb2 import Person


if __name__ == '__main__':
    #Herstellen einer Verbindung zur Datenbank und Erstellen von Tabellen
    conn = sqlite3.connect(":memory:")
    c = conn.cursor()
    c.execute("create table people (person blob)")

    p = Person(name="John Doe", age=128)
    print p

    #Schreiben
    wb = buffer(p.SerializeToString())
    c.execute("insert into people values (?)", [wb])

    #Lesen
    c.execute("select * from people")
    rb = c.fetchone()[0]
    q = Person()
    q.ParseFromString(str(rb))
    print q

Ergebnis

name: "John Doe"                                      
age: 128                                              
                                                      
name: "John Doe"                                      
age: 128

Ich konnte lesen und schreiben.

Recommended Posts

Fügen Sie Protokollpuffer mit Python in SQLite ein
[Python] [SQLite3] Betreiben Sie SQLite mit Python (Basic)
Lesen Sie die Protokollpufferdaten mit Python3
Einfache Handhabung von Listen mit Python + SQLite3
So importieren Sie CSV- und TSV-Dateien mit Python in SQLite
INSERT in MySQL mit Python [Für Anfänger]
Speichern / Laden Sie die In-Memory-Datenbank mit pythons sqlite3
Versuch, SQLite3 mit Python zu handhaben [Hinweis]
[TensorFlow] Python ⇔ Protokollpuffer ⇔ GPU / Distributed Computing
gRPC-Methoden, die beim Umgang mit Protokollpuffern verwendet werden, geben Python CopyFrom, Extend ein
Ich habe Hunderte Millionen SQLite mit Python ausprobiert
FizzBuzz in Python3
Pyinstaller verwandelt Python-Skripte in EXE-Dateien, die unter Windows ausgeführt werden können
Scraping mit Python
Statistik mit Python
Scraping mit Python
Python mit Go
Fügen Sie in Python gekratzten Text in eine Google-Tabelle ein
Twilio mit Python
In Python integrieren
Spielen Sie mit 2016-Python
AES256 mit Python
Getestet mit Python
Formatieren Sie Python-Code mit Emacs automatisch in PEP8-kompatiblen Code
Python beginnt mit ()
mit Syntax (Python)
Fügen Sie Python 2.7.x in pyenv unter Mac OSX 10.15.5 ein
SQLite in Python
Bingo mit Python
Zundokokiyoshi mit Python
Konvertieren Sie JSON mit Python von Splunk in CSV
Excel mit Python
Mikrocomputer mit Python
Mit Python besetzen
Fügen Sie Bilder mit Python + α automatisch in Powerpo-Materialien ein
Spezifischer Beispielcode für die Arbeit mit SQLite3 in Python
Verwenden Sie Cursur, das in Python automatisch mit sqlite3 geschlossen wird
Übersetzen Sie DeepL automatisch mit Python und Selen ins Englische
Serielle Kommunikation mit Python
Zip, entpacken mit Python
Primzahlbeurteilung mit Python
Python mit Eclipse + PyDev.
Socket-Kommunikation mit Python
Datenanalyse mit Python 2
Scraping in Python (Vorbereitung)
Versuchen Sie es mit Python.
Sequentielle Suche mit Python
"Objektorientiert" mit Python gelernt
Schieben Sie stdout in numpy.loadtxt
Führen Sie Python mit VBA aus
Löse AtCoder 167 mit Python
Serielle Kommunikation mit Python
[Python] Verwenden Sie JSON mit Python
Lerne Python mit ChemTHEATER
Führen Sie prepDE.py mit python3 aus
Tweets mit Python sammeln
3. 3. KI-Programmierung mit Python
Kernel-Methode mit Python
Nicht blockierend mit Python + uWSGI
Scraping mit Python + PhantomJS