Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

sql abfrage fehler

Empfohlene Antworten

Veröffentlicht

hoi ich hab folgende abfrage

UPDATE REGEL20, TEXTE SET REGEL20.PA_INFO = '%s'WHERE ((StrComp(REGEL20.PA_INFO,TEXTE.TEX_AUSGABE,0)<>0 And REGEL20.PA_INFO_TEXTNR=TEXTE.TEX_NUMMER And TEXTE.TEX_SPRACHE='deu'));" %(string3))

leider is die so noch nicht ganz komplett

da fehlt noch eine AND anweisung und das sollte meines erachtens dann so aussehen:

UPDATE REGEL20, TEXTE SET REGEL20.PA_INFO = '%s'WHERE ((StrComp(REGEL20.PA_INFO,TEXTE.TEX_AUSGABE,0)<>0 And REGEL20.PA_INFO_TEXTNR=TEXTE.TEX_NUMMER And TEXTE.TEX_SPRACHE='deu') AND '%s' NOT LIKE '%temp%');" %(string3,string3))

leider bekomm ich dann diesen fehler:

Bad format specifier at Position 190 (%temp%');)

was is daran jetzt falsch ?

ganz einfach: temp ist kein formatstring - wäre mir als formatstring auch neu.

du musst schon formatstrings verwenden, die es auch gibt, wie beispielsweise, %s, %u, %i, %d, %c. das sollte aber im manual genauer angegeben sein.

s'Amstel

ich dachte mit dem LIKE und '%irgendwas%' kann ich die wörter bekommen die *irgendwas* drin stehen haben ?! also die % als platzhalter ?!

ich dachte mit dem LIKE und '%irgendwas%' kann ich die wörter bekommen die *irgendwas* drin stehen haben ?! also die % als platzhalter ?!

Der Platzhalter '%' steht im Standard-SQL meines Wissens für genau 1 Zeichen. Der Platzhalter '*' kann für mehr als 1 Zeichen verwendet werden. Falls jemand andere Infos darüber hat, lass ich mich gerne belehren.

Grüße von ipu

und wieso sagt mir dann dieses Tutorial

tutorial7da.jpg

was anderes ? :beagolisc

im bezug auf das mit dem 1 Zeichen und dem "temp ist kein formatstring" ?

%H% ist auch kein Format string ;)

oke oke. hab ja gesagt "meines Wissens" :)

jo war ja kein vorwurf oder so :beagolisc

aber was meinst amstelchen denn dann mit dem formatstring? in dem beispiel isses doch ganz deutlich so geschildert mit den % als Platzhalter

'%s' NOT LIKE '%temp%'

Was soll den %s sein?

Du vergleichst einen statischen String mit einem anderem. IMHO sollte da statt %s ein Feldname stehen oder was willst du mit dem AND bezwecken?

ja %s steht für einen statischen string der hinten dran auch angehängt ist %(string3) falls du das gesehen hast und mit %temp% will ich diesen string auf die zeichenfolge *temp* untersuchen. and was meinst du mit "was willst du mit dem AND bezwecken" ?

edit: habs schon hinbekommen - wenn auch über 2 ecken, aber funktioniert

leider bekomm ich dann diesen fehler:

Bad format specifier at Position 190 (%temp%');)

was is daran jetzt falsch ?

Du benutzt zum Einfügen der Strings eine Formatfunktion. Mit dieser Formatfunktion weren Platzhalter in deinem String ersetzt. Diese Platzhalter sind im Formatstring mit %x angegeben (wobei x für einen "format specifier" steht).

Die Formatfunktion kennt einige dieser Specifier (z.B. %s für Strings), was sie aber nicht kennt ist ein "format specifier" %temp oder % ohne was. Das sagt dir diese Fehlermeldung.

% kann man als Literal angeben, wenn man %% schreibt AFAIK, oder probier es mal, indem du %temp% auch per Format übergibst. Also so ung:


... AND '%s' NOT LIKE '%s');" %(string3,string3,%temp%))

EDIT:

Ist somit eigentlich kein SQL-Fehler und hat bei Datenbanken nichts zu suchen :D

jo war ja kein vorwurf oder so :beagolisc

Hab ich auch nicht so aufgefasst.

Grüße von ipu

ja %s steht für einen statischen string der hinten dran auch angehängt ist %(string3) falls du das gesehen hast und mit %temp% will ich diesen string auf die zeichenfolge *temp* untersuchen. and was meinst du mit "was willst du mit dem AND bezwecken" ?

Sorry, mein Fehler. Ich hatte das %(string3)... zwar gesehen, aber für mich war die Anweisung nach dem ; fertig. :rolleyes: Ich kannte das in der Form nicht aus SQL-Anweisungen

mein fehler :beagolisc

hab das ganze nun bissel anders gelöst, aber danke für die hilfe :D

hab das ganze nun bissel anders gelöst, aber danke für die hilfe :D

Würdest du die andere Lösung hier bitte präsentieren? Dann hätten alle was davon.

Grüße von ipu

ich hatte nach einem falschen feld gesucht, nachdem ich das gemerkt hatte hab ich das NOT LIKE nicht mehr gebraucht, ist nun ein stinknormales SQL Query, hätte also wenig sinn das reinzustellen :beagolisc

Alles klar!

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.