Rocksolid Light

groups  faq  privacy  How to post  login

Message-ID:  

It usually takes more than three weeks to prepare a good impromptu speech. -- Mark Twain


rocksolid / de.comp.lang.python / [Python-de] sqlite3-datenbank

SubjectAuthor
* [Python-de] sqlite3-datenbankDetlef Heiler
+* [Python-de] Re: sqlite3-datenbankHartmut Goebel
|`* [Python-de] Re: sqlite3-datenbankHartmut Goebel
| `- [Python-de] Re: sqlite3-datenbankDetlef Heiler
`- Re: [Python-de] sqlite3-datenbankPeter J. Holzer

1
Subject: [Python-de] sqlite3-datenbank
From: Detlef Heiler
Newsgroups: de.comp.lang.python
Date: Thu, 8 Feb 2024 18:31 UTC
Path: i2pn2.org!i2pn.org!usenet.network!news.neodome.net!fu-berlin.de!uni-berlin.de!not-for-mail
From: detlef.h...@t-online.de (Detlef Heiler)
Newsgroups: de.comp.lang.python
Subject: [Python-de]_sqlite3-datenbank
Date: Thu, 8 Feb 2024 19:31:04 +0100
Lines: 37
Message-ID: <000001da5abc$f9c15740$ed4405c0$@t-online.de>
Mime-Version: 1.0
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
X-Trace: news.uni-berlin.de rqh5q2SOaqm8FMXrqBanVQK9kKhimrCYs8hA6lH3KXjQ==
Cancel-Lock: sha1:4g78LMYOmXwr+XuL4k/wX79xqOQ= sha256:F/RpthUZwXuQPCNvDJoKecxaJXCOVjvdB61kkR3PYx0=
Authentication-Results: mail.python.org; dkim=none reason="no signature";
dkim-adsp=none (unprotected policy); dkim-atps=neutral
X-Mailer: Microsoft Outlook 16.0
Thread-Index: Adpau+C23vTFugyTR425t0qjDOsjbw==
Content-Language: de
X-TOI-EXPURGATEID: 150726::1707417065-05180954-03CE9DA4/0/0 CLEAN NORMAL
X-TOI-MSGID: 41715a95-c12f-454b-a025-d800c71b367c
X-MailFrom: detlef.heiler@t-online.de
X-Mailman-Rule-Hits: member-moderation
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address
Message-ID-Hash: 5MUAEYYXUWPX4AO657SI3XMKTYVNVAZ2
X-Message-ID-Hash: 5MUAEYYXUWPX4AO657SI3XMKTYVNVAZ2
X-Mailman-Approved-At: Thu, 08 Feb 2024 13:39:13 -0500
X-Content-Filtered-By: Mailman/MimeDel 3.3.10b1
X-Mailman-Version: 3.3.10b1
Precedence: list
List-Id: Die Deutsche Python Mailingliste <python-de.python.org>
Archived-At: <https://mail.python.org/archives/list/python-de@python.org/message/5MUAEYYXUWPX4AO657SI3XMKTYVNVAZ2/>
List-Archive: <https://mail.python.org/archives/list/python-de@python.org/>
List-Help: <mailto:python-de-request@python.org?subject=help>
List-Owner: <mailto:python-de-owner@python.org>
List-Post: <mailto:python-de@python.org>
List-Subscribe: <mailto:python-de-join@python.org>
List-Unsubscribe: <mailto:python-de-leave@python.org>
View all headers

Hallo zusammen,

ich bin Anfänger, und deswegen eine leichte Frage an Euch Freaks:

Ich möchte eine Datenbank mit eingelesenen bzw. abgefragten Variablen
erstellen, und z. B. auch die Feldüberschriften in die Datenbank speichern,
damit, wenn die Datenbank wieder geöffnet wird, auch weiß, welche
Feldüberschriften es gibt, aber da macht mir das System einen Strich durch
die Rechnung:

zeiger.executemany(dateneinfuegung + listenname + werte,
ueberschriftenliste)

sqlite3.OperationalError: table Geburtstage has 1 columns but 3 values were
supplied

Wie man sehen kann, habe ich den „Executemany-String in Form der Variable
„dateneinfuegung gespeichert, woe auch die Variable „Listenname“, die den
Namen der Liste enthält. Danach kommen ja die Values, die in runden
Klammern, als Fragezeichen zusammengefasst sind; dann folgt ein
Trennungskomma, um den nächsten Parameter zu bringen, was eine
verschachtelte Liste sein soll… Tja, wie kriege ich die verschachtelte Liste
in die Datenbank? Bin sehr gespannt.

LG Detlef

Subject: [Python-de] Re: sqlite3-datenbank
From: Hartmut Goebel
Newsgroups: de.comp.lang.python
Organization: Goebel Consult
Date: Fri, 9 Feb 2024 08:59 UTC
References: 1
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!fu-berlin.de!uni-berlin.de!not-for-mail
From: h.goe...@goebel-consult.de (Hartmut Goebel)
Newsgroups: de.comp.lang.python
Subject: [Python-de]_Re:_sqlite3-datenbank
Date: Fri, 9 Feb 2024 09:59:21 +0100
Organization: Goebel Consult
Lines: 30
Message-ID: <05c6a774-6f07-7d48-2d32-7592955186a0@goebel-consult.de>
References: <000001da5abc$f9c15740$ed4405c0$@t-online.de>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64
X-Trace: news.uni-berlin.de x2GI7SbpIFPlTA08/mZprwGcb9eWOSTg7GBekEyzsEVw==
Cancel-Lock: sha1:Xbfafn64mjFurl1FJivBnyJfLG8= sha256:FdZMJuxPf4SomI2M1J7XRl9vGumThW+yqHWLvKx3Tcw=
Authentication-Results: mail.python.org; dkim=none reason="no signature";
dkim-adsp=none (unprotected policy); dkim-atps=neutral
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
Thunderbird/102.12.0
Content-Language: de-DE, en-US
In-Reply-To: <000001da5abc$f9c15740$ed4405c0$@t-online.de>
X-Noris-IP: 87.176.140.167
Message-ID-Hash: 5FWTPY73UP6EGH6JHG2HPZOVWY6GQE5S
X-Message-ID-Hash: 5FWTPY73UP6EGH6JHG2HPZOVWY6GQE5S
X-MailFrom: h.goebel@goebel-consult.de
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-python-de.python.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
X-Content-Filtered-By: Mailman/MimeDel 3.3.10b1
X-Mailman-Version: 3.3.10b1
Precedence: list
List-Id: Die Deutsche Python Mailingliste <python-de.python.org>
Archived-At: <https://mail.python.org/archives/list/python-de@python.org/message/5FWTPY73UP6EGH6JHG2HPZOVWY6GQE5S/>
List-Archive: <https://mail.python.org/archives/list/python-de@python.org/>
List-Help: <mailto:python-de-request@python.org?subject=help>
List-Owner: <mailto:python-de-owner@python.org>
List-Post: <mailto:python-de@python.org>
List-Subscribe: <mailto:python-de-join@python.org>
List-Unsubscribe: <mailto:python-de-leave@python.org>
View all headers

Am 08.02.24 um 19:31 schrieb Detlef Heiler:
> sqlite3.OperationalError: table Geburtstage has 1 columns but 3 values were
> supplied
Das steht recht klar, dass die Tabelle nur eine Spalte hat, Du aber drei
einfügen möchtest. sind die "Zeilen" in "data" unten bei Dir ganz sicher
Tupel oder Listen? Tupel mit nur einem Element brauchen am Ende, noch
innerhalb der Klammern ein Komma, um ein Tupel zu bilden:
data = [
   ("zzzz"),    # kein Tupel!
   ("aaaa",),     # <-- Komma in der Klammer
   ["bbb"],      # Listen werden an den eckigen Klammern erkannt, daher
kein Komma nötig
]
> Tja, wie kriege ich die verschachtelte Liste
> in die Datenbank? Bin sehr gespannt.
Wenn Du Deinen Code gepostet hättest, könnten wir genauer sagen, was
falsch ist. So kann ich nur mit dem Code-Schnipsel aus dem
Python-Handbuch antworten. Im Prinzip muss es so aussehen:
data = [
("Monty Python Live at the Hollywood Bowl", 1982, 7.9),
("Monty Python's The Meaning of Life", 1983, 7.5),
("Monty Python's Life of Brian", 1979, 8.0),
]
cur.executemany("INSERT INTO movie VALUES(?, ?, ?)", data)
con.commit() # Remember to commit the transaction after executing INSERT.
--
Schönen Gruß
Hartmut Goebel
Dipl.-Informatiker (univ), CISSP, CSSLP, ISO 27001 Lead Implementer
Information Security Management, Security Governance, Secure Software
Development
Goebel Consult, Landshut
http://www.goebel-consult.de
Blog: https://www.goebel-consult.de/blog/2019/blockchain-bringts-nicht/
Kolumne:
https://www.goebel-consult.de/blog/cissp-gefluester/2011-08-horrorszenario-bring-your-own-device/

Subject: Re: [Python-de] sqlite3-datenbank
From: Peter J. Holzer
Newsgroups: de.comp.lang.python
Organization: LUGA
Date: Fri, 9 Feb 2024 17:37 UTC
References: 1
Path: i2pn2.org!i2pn.org!news.swapon.de!weretis.net!feeder8.news.weretis.net!newsfeed.xs3.de!tahina.priv.at!news.luga.at!.POSTED.212.17.106.130!not-for-mail
From: hjp-usen...@hjp.at (Peter J. Holzer)
Newsgroups: de.comp.lang.python
Subject: Re: [Python-de] sqlite3-datenbank
Date: Fri, 9 Feb 2024 18:37:28 +0100
Organization: LUGA
Message-ID: <slrnuscomo.7dg0.hjp-usenet4@trintignant.hjp.at>
References: <000001da5abc$f9c15740$ed4405c0$@t-online.de>
Mime-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: 8bit
Injection-Info: vinge.luga.at; posting-host="212.17.106.130";
logging-data="30855"; mail-complaints-to="usenet@vinge.luga.at"
User-Agent: slrn/1.0.3 (Linux)
Cancel-Lock: sha1:pSFiCRKvMbrCJ5NqM2wP0QpyPk8=
View all headers

On 2024-02-08 18:31, Detlef Heiler <detlef.heiler@t-online.de> wrote:
> Ich möchte eine Datenbank mit eingelesenen bzw. abgefragten Variablen
> erstellen, und z. B. auch die Feldüberschriften in die Datenbank speichern,
> damit, wenn die Datenbank wieder geöffnet wird, auch weiß, welche
> Feldüberschriften es gibt, aber da macht mir das System einen Strich durch
> die Rechnung:
>
> zeiger.executemany(dateneinfuegung + listenname + werte,
> ueberschriftenliste)
>
> sqlite3.OperationalError: table Geburtstage has 1 columns but 3 values were
> supplied
>
>
>
> Wie man sehen kann,

Nein, können wir nicht sehen.

> habe ich den „Executemany-String in Form der Variable
> „dateneinfuegung gespeichert, woe auch die Variable „Listenname“, die den
> Namen der Liste enthält. Danach kommen ja die Values, die in runden
> Klammern, als Fragezeichen zusammengefasst sind; dann folgt ein
> Trennungskomma, um den nächsten Parameter zu bringen, was eine
> verschachtelte Liste sein soll…

Bitte keine Beschreibung, was Du gemacht hast (bei der man dann hoffen
muss, dass Du das richtig beschreibst und man Deine Beschreibung richtig
versteht), sondern lauffähigen Code. (auch inklusive der
Tabellendefinition: Eine Tabelle mit nur einer Spalte scheint mir etwas
eigenwillig zu sein.)

hp

Subject: [Python-de] Re: sqlite3-datenbank
From: Hartmut Goebel
Newsgroups: de.comp.lang.python
Organization: Goebel Consult
Date: Sat, 10 Feb 2024 14:11 UTC
References: 1 2 3
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!fu-berlin.de!uni-berlin.de!not-for-mail
From: h.goe...@goebel-consult.de (Hartmut Goebel)
Newsgroups: de.comp.lang.python
Subject: [Python-de]_Re:_sqlite3-datenbank
Date: Sat, 10 Feb 2024 15:11:05 +0100
Organization: Goebel Consult
Lines: 26
Message-ID: <38ce4099-8f14-2179-e19d-a34849b43523@goebel-consult.de>
References: <000001da5abc$f9c15740$ed4405c0$@t-online.de>
<05c6a774-6f07-7d48-2d32-7592955186a0@goebel-consult.de>
<000001da5b67$5dd80c10$19882430$@t-online.de>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64
X-Trace: news.uni-berlin.de N46zkOdawz8M67bk/90aqQPseKPW47HYMslSJlwR+Gmw==
Cancel-Lock: sha1:56ZxkR0w70QmIZcqgsguPwPr7xs= sha256:LHzTFgueGrvrp8Yl9Ez3yYXaPv+TIuGVRZdFVCMNhN4=
Authentication-Results: mail.python.org; dkim=none reason="no signature";
dkim-adsp=none (unprotected policy); dkim-atps=neutral
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
Thunderbird/102.12.0
Content-Language: de-DE, en-US
In-Reply-To: <000001da5b67$5dd80c10$19882430$@t-online.de>
X-Noris-IP: 87.176.147.10
Message-ID-Hash: WHTWW65T5PPH2OY6FUSBUG47DYUJJFN6
X-Message-ID-Hash: WHTWW65T5PPH2OY6FUSBUG47DYUJJFN6
X-MailFrom: h.goebel@goebel-consult.de
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-python-de.python.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
X-Content-Filtered-By: Mailman/MimeDel 3.3.10b1
X-Mailman-Version: 3.3.10b1
Precedence: list
List-Id: Die Deutsche Python Mailingliste <python-de.python.org>
Archived-At: <https://mail.python.org/archives/list/python-de@python.org/message/WHTWW65T5PPH2OY6FUSBUG47DYUJJFN6/>
List-Archive: <https://mail.python.org/archives/list/python-de@python.org/>
List-Help: <mailto:python-de-request@python.org?subject=help>
List-Owner: <mailto:python-de-owner@python.org>
List-Post: <mailto:python-de@python.org>
List-Subscribe: <mailto:python-de-join@python.org>
List-Unsubscribe: <mailto:python-de-leave@python.org>
View all headers

Hallo Detlef,
Du hast mir privat geantwortet, nicht an die Liste. Wenn Du privaten
Support haben möchtest, können wir das gerne kostenpflichtig
arrangieren, ebenso Vidoe-Mentorin. Ansonsten gilt die Regel: Kostenlose
Hilfe gibt es nur öffentlich.
Zu Deinem Code:
Er ist sehr, sehr unübersichtlich. Du möchtest frühzeitig lernen, wie
man lesbarer schreibt, z.B. indem Du F-Strings verwendest oder kürzere
Variablennamen verwendest. Dann erkennst Du auch leichter den Fehler:
> datenfeldstring = eingabe1 + " " + "varchar(" + eingabe2 + "), "
Hier wird der bisherig String überschrieben. D. h. der
"erzeugungsbefehl" enthält immer nur den Namen der letzten Spalte.
Noch ein paar Tipps:
* print() ist für Debugging sehr, sehr, hilfreich
* das Module pdb der Standard-Bibliothek ist auch hilfreich, um Fehler
zu finden.
* Du möchtest die "join" Methode von Strings kennenlernen und Dir
diverse Schleifen in Deinem Code sparen
--
Schönen Gruß
Hartmut Goebel
Dipl.-Informatiker (univ), CISSP, CSSLP, ISO 27001 Lead Implementer
Information Security Management, Security Governance, Secure Software
Development
Goebel Consult, Landshut
http://www.goebel-consult.de
Blog:
https://www.goebel-consult.de/blog/2019/openstreetmaps-hat-google-maps-weit-ueberholt/
Kolumne:
https://www.goebel-consult.de/blog/cissp-gefluester/2011-10-aus-der-schublade-in-die-koepfe/

Subject: [Python-de] Re: sqlite3-datenbank
From: Detlef Heiler
Newsgroups: de.comp.lang.python
Date: Mon, 19 Feb 2024 08:53 UTC
References: 1 2 3 4
Path: i2pn2.org!i2pn.org!news.swapon.de!fu-berlin.de!uni-berlin.de!not-for-mail
From: detlef.h...@t-online.de (Detlef Heiler)
Newsgroups: de.comp.lang.python
Subject: [Python-de]_Re:_sqlite3-datenbank
Date: Mon, 19 Feb 2024 09:53:59 +0100
Lines: 68
Message-ID: <000c01da6311$2dcf11b0$896d3510$@t-online.de>
References: <000001da5abc$f9c15740$ed4405c0$@t-online.de> <05c6a774-6f07-7d48-2d32-7592955186a0@goebel-consult.de> <000001da5b67$5dd80c10$19882430$@t-online.de> <38ce4099-8f14-2179-e19d-a34849b43523@goebel-consult.de>
Mime-Version: 1.0
Content-Type: text/plain;
charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Trace: news.uni-berlin.de IrA/OnGTVgFnaPcLwtz77gj4A1ERuWeLLa5OQ4zPDzVg==
Cancel-Lock: sha1:ylgWIydC+fqX1biDa6BjuK4b55U= sha256:0oUF7SdxGajBoThbhUyCIND3PRXF5mwLBY6Af7v9diE=
Authentication-Results: mail.python.org; dkim=none reason="no signature";
dkim-adsp=none (unprotected policy); dkim-atps=neutral
In-Reply-To: <38ce4099-8f14-2179-e19d-a34849b43523@goebel-consult.de>
X-Mailer: Microsoft Outlook 16.0
Thread-Index: AQIQF8NQ5B12ayGqRDPj3QZOWE3AmQHonkziAofcvv8CHlwSv7BxewAg
Content-Language: de
X-TOI-EXPURGATEID: 150726::1708332845-55FA4986-9F142EDC/0/0 CLEAN NORMAL
X-TOI-MSGID: b51788b6-b657-44a1-af5e-9b6bad7a934d
X-MailFrom: detlef.heiler@t-online.de
X-Mailman-Rule-Hits: member-moderation
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address
Message-ID-Hash: WBZ3GTMFQUNSBFMJEQR4Z4Q6BWDFNAZR
X-Message-ID-Hash: WBZ3GTMFQUNSBFMJEQR4Z4Q6BWDFNAZR
X-Mailman-Approved-At: Mon, 19 Feb 2024 05:45:13 -0500
X-Mailman-Version: 3.3.10b1
Precedence: list
List-Id: Die Deutsche Python Mailingliste <python-de.python.org>
Archived-At: <https://mail.python.org/archives/list/python-de@python.org/message/WBZ3GTMFQUNSBFMJEQR4Z4Q6BWDFNAZR/>
List-Archive: <https://mail.python.org/archives/list/python-de@python.org/>
List-Help: <mailto:python-de-request@python.org?subject=help>
List-Owner: <mailto:python-de-owner@python.org>
List-Post: <mailto:python-de@python.org>
List-Subscribe: <mailto:python-de-join@python.org>
List-Unsubscribe: <mailto:python-de-leave@python.org>
View all headers

Hallo Hartmut und Peter,

vielen Dank für Eure Tipps! Mein Fehler war ein verdoppeltes Tuple, und als ich das berichtigt hatte, hatte ich trotz dem noch den alten Fehler, der wiederum darauf beruhte, dass ich mit der falsch erzeugten Datei weiter arbeiten wollte; als ich das erkannt habe, habe ich sie komplett gelöscht, und nun funktioniert es. Vielen Dank!

VG Detlef

-----Ursprüngliche Nachricht-----
Von: Hartmut Goebel <h.goebel@goebel-consult.de>
Gesendet: Samstag, 10. Februar 2024 15:11
An: Die Deutsche Python Mailingliste <python-de@python.org>
Betreff: [Python-de] Re: sqlite3-datenbank

Hallo Detlef,

Du hast mir privat geantwortet, nicht an die Liste. Wenn Du privaten Support haben möchtest, können wir das gerne kostenpflichtig arrangieren, ebenso Vidoe-Mentorin. Ansonsten gilt die Regel: Kostenlose Hilfe gibt es nur öffentlich.

Zu Deinem Code:

Er ist sehr, sehr unübersichtlich. Du möchtest frühzeitig lernen, wie man lesbarer schreibt, z.B. indem Du F-Strings verwendest oder kürzere Variablennamen verwendest. Dann erkennst Du auch leichter den Fehler:

> datenfeldstring = eingabe1 + " " + "varchar(" + eingabe2 + "), "

Hier wird der bisherig String überschrieben. D. h. der "erzeugungsbefehl" enthält immer nur den Namen der letzten Spalte.

Noch ein paar Tipps:

* print() ist für Debugging sehr, sehr, hilfreich
* das Module pdb der Standard-Bibliothek ist auch hilfreich, um Fehler
zu finden.
* Du möchtest die "join" Methode von Strings kennenlernen und Dir
diverse Schleifen in Deinem Code sparen

--
Schönen Gruß
Hartmut Goebel
Dipl.-Informatiker (univ), CISSP, CSSLP, ISO 27001 Lead Implementer Information Security Management, Security Governance, Secure Software Development

Goebel Consult, Landshut
http://www.goebel-consult.de

Blog:
https://www.goebel-consult.de/blog/2019/openstreetmaps-hat-google-maps-weit-ueberholt/

Kolumne:
https://www.goebel-consult.de/blog/cissp-gefluester/2011-10-aus-der-schublade-in-die-koepfe/

_______________________________________________
python-de Mailingliste -- python-de@python.org Zur Abmeldung von dieser Mailingliste senden Sie eine Nachricht an python-de-leave@python.org https://mail.python.org/mailman3/lists/python-de.python.org/
Mitgliedsadresse: detlef.heiler@t-online.de


rocksolid / de.comp.lang.python / [Python-de] sqlite3-datenbank

1
server_pubkey.txt

rocksolid light 0.9.136
clearnet tor