<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<p>Hallo zusammen, hallo Frank,</p>
<p>vielen Dank für deine Antwort - leider ist PostGis derzeit noch
keine Option - ich kenne mich da zu wenig aus und vor allem muss
ich die generierte Datenbank weitergeben und das ist glaub ich mit
SQLite einfacher - Aber dennoch hat mir dein letzter Post
weitergeholfen - da ich in der Ursprungsversion direkt die
NAS-Daten (also die Xml-Datei) lese, kommt die Liste als String an
und daher kann ich mit LIKE arbeiten. Die Abfrage sieht dann in
der Python-Version wie folgt aus und bringt das erhoffte Ergebnis:</p>
<p> # Auf Buchungsstelle verknüpfen - Buchung mit Rechten<br>
strSql = "SELECT Id, Buchungsart, LaufendeNummer,
AnteilZaehler, AnteilNenner, BestandteilVon, An "<br>
strSql += "FROM Buchungsstelle "<br>
strSql += "WHERE An LIKE '%" + strIstGebucht + "%';"<br>
</p>
<p>Ich hab die Tabellen und Feldnamen nich angepasst, aber ich
glaube es ist trotzdem klar. Es war dein Hinweis auf die Liste,
der den Knoten gelöst hat!</p>
<p>Als nächstes steht SQL und PostgreSQL/Postgis auf dem Programm.<br>
</p>
<p>Derweil nochmals vielen Dank für eure Hilfe!</p>
<p><br>
</p>
<p>Helmut<br>
</p>
<p><br>
</p>
<div class="moz-signature">
<p style="font-size:16.0pt;color:#95B3D7">KnowHow - Helmut Seidel
M.A.</p>
<p style="color:#95B3D7">Softwareentwicklung - Schulung - Coaching</p>
<p style="color:#95B3D7">Gabelsbergerstraße 17 B<br>
84034 Landshut</p>
<p style="color:#95B3D7">Telefon: (08 71) 9 66 52 30</p>
<p style="color:#95B3D7">E-Mail: <a class="moz-txt-link-abbreviated" href="mailto:info@knowhow-la.de">info@knowhow-la.de</a><br>
Internet: <a class="moz-txt-link-abbreviated" href="http://www.knowhow-la.de">www.knowhow-la.de</a></p>
</div>
<div class="moz-cite-prefix">Am 22.08.19 um 18:54 schrieb Frank
Jäger:<br>
</div>
<blockquote type="cite"
cite="mid:0d5593ff-5627-88c4-f23e-257cf23a4a74@orbi.space">Am
22.08.19 um 15:43 schrieb Helmut Seidel M.A.:
<br>
<blockquote type="cite">....
<br>
<br>
Die Abfrage läuft zwar durch - das Ergebnis ist allerdings leer.
Ich vermute das liegt an dem fehlenden ANY(bus.an). Any wird
allerdings von SQLite nicht unterstützt...
<br>
<br>
Danke Helmut
<br>
<br>
</blockquote>
Ja, das "any()" muss sein. Das an-Feld ist ein "Array", also eine
Liste mit mehreren Werten.
<br>
<br>
"any" besagt, dass EINER der Werte in der Liste passen muss. Wenn
man das weg lässt wird die "ganze Liste" verglichen.
<br>
<br>
2 = any('{1,2,3}') ? => Ja
<br>
<br>
2 = '{1,2,3}' ? => Nein
<br>
<br>
Ohne any()-Funktion müsste man das über eine zusätzliche
Verbindungstabelle 1:N auflösen.
<br>
<br>
<br>
> Any wird allerdings von SQLite nicht unterstützt...
<br>
<br>
Postgresql ist eine schöne Datenbank
<br>
<br>
Gibt es in SQLite denn Trigger, die die Fortführung des
Sekundärbestandes unterstützen?
<br>
<br>
Bei der Erstabgabe eines NBA-Verfahrens spielt das noch keine
Rolle. Aber bei einer Aktualisierung kommen die Sätze mit DELETE,
UPDATE und REPLACE.
<br>
<br>
Diese Sätze kann ogr2ogr nicht so wirklich verarbeiten. Der
Konverter schreibt das in die Delete-Tabelle und dort kümmern sich
Datenbank-Trigger darum, die Vorgänger-Objekte zu finden und
auszuschalten.
<br>
<br>
</blockquote>
</body>
</html>