Massive.sqlite.cs - Prototyp schlägt fehl, weil es keinen Spaltenname gibt; Fix mit Pragma table_info?

StackOverflow https://stackoverflow.com/questions/8807315

  •  26-10-2019
  •  | 
  •  

Frage

Ich habe mit Rob Connerys massive.

SELECT * FROM sqlite_master WHERE type = 'table' and name = @0

Wobei @0 der Name der Tabelle ist. Verwenden Sie nun die Ergebnisse dieser Abfrage, um ein Expando -Set mit den Standardeinstellungen des DB zu erstellen. SPALTENNAME die im Satz nicht existieren (die Spalten dort sind: Typ, Name, tbl_name, rootPage, SQL).

Also dachte ich, ich könnte es mit einem SQLite Pragma reparieren:

PRAGMA table_info('table_name');

Aber das hat auch nicht funktioniert, diesmal, weil ich bekomme keine Ergebnisse Wenn das Pragma ausgeführt wird.

Fehlt mir etwas? Muss ich die Pragma in der Verbindungszeichenfolge aktivieren? Gibt es einen besseren Weg, dies zu lösen?

Oder vielleicht stehe ich nur mit der falschen Lösung vor dem Problem.

Danke für deine Antworten!

Technische Notizen:

  • Verwenden von System.data.sqlite Version 1.0.66.0 von Nuget
War es hilfreich?

Lösung

Sie haben Recht, die SQLite -Schema -Erkennung ist massiv gebrochen. Es wird bereits über Github berichtet Ausgabe Nr. 86 Aber die Lösung wurde nicht angewendet.

Ich habe gerade eine Pull -Anfrage mit dem Fix erstellt: https://github.com/robconery/massive/pull/122 Sie können den Code von dort oder vom Haupt Massive Repository Nachdem es verschmolzen ist.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top