AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi unscharfe suche mit like und variablen
Thema durchsuchen
Ansicht
Themen-Optionen

unscharfe suche mit like und variablen

Ein Thema von Nightfly · begonnen am 1. Apr 2004 · letzter Beitrag vom 1. Apr 2004
Antwort Antwort
Nightfly

Registriert seit: 25. Mär 2004
Ort: Dresden
118 Beiträge
 
#1

unscharfe suche mit like und variablen

  Alt 1. Apr 2004, 15:08
Folgendes Problem:

Eine Stored Procedure bekommt eine Char Variable übergeben (stelle). Nun mochte ich diese Variable in der where bedingung eines selechts verwenden, es sollen aber alle werte gefunden werden die mit dem Wert der variablen beginnen.

also

select * from tabelle where wert like (:stelle + '%') Bloß dieser code geht nicht..kann mir vlt. jemand helfen der in SQL Syntax bissl sicherer is? Geht das überhaupt so?
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.252 Beiträge
 
Delphi 2006 Professional
 
#2

Re: unscharfe suche mit like und variablen

  Alt 1. Apr 2004, 15:12
Hai Nightfly,

im Prinzip sieht es ja gut aus. Wie übergibst Du denn ":stelle" an dein Query? Als Parameter?
Versuche doch mal das '%' mit dem String zu übergeben und nicht im SQL-Befehl zu schreiben.

Also
select * from tabelle where wert like (:stelle) stelle := 'keine Ahung' + '%';
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#3

Re: unscharfe suche mit like und variablen

  Alt 1. Apr 2004, 15:13
Nachfolgende Anweisung findet alles was mit "stelle" beginnt
Code:
select * from tabelle where wert like 'stelle%'
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Robert_G
(Gast)

n/a Beiträge
 
#4

Re: unscharfe suche mit like und variablen

  Alt 1. Apr 2004, 15:28
dein erstes Beispiel muss gehen. Oder die DB spinnt.
Ich benutze das in ähnlicher Weise selbst und es klappt...
  Mit Zitat antworten Zitat
Nightfly

Registriert seit: 25. Mär 2004
Ort: Dresden
118 Beiträge
 
#5

Re: unscharfe suche mit like und variablen

  Alt 1. Apr 2004, 15:36
Achja,das vergaß ich zu erwähnen.
Es handelt sich um eine Stored Procedure auf einem Firebird Server, welche halt eine input variable stelle hat.

Sowas: stelle := 'keine Ahung' + '%';

quitiert er mit: expression evaluation not supported.

Normalerweise rufe ich die Prozedur so auf:

select * from MyProc('01')

Ändere ich das in

select * from MyProc('01%')

findet er garkeine Datensätze mehr

JA, die where klausel habe ich von where (tabelle.stelle = :stelle) in where tabelle.stelle like :stelle geändert.

Hat noch jemand ne idee?
  Mit Zitat antworten Zitat
Nightfly

Registriert seit: 25. Mär 2004
Ort: Dresden
118 Beiträge
 
#6

Re: unscharfe suche mit like und variablen

  Alt 1. Apr 2004, 15:39
@Robert_G

beim Compilieren bekomme ich da expression evaluation not supported.

Heißt das Firebird kann das nich? Oder hab ich falsche datentypen? Gibts nen trick?

edit: egal ob stelle char oder varchar ist, der fehler bleibt
  Mit Zitat antworten Zitat
Robert_G
(Gast)

n/a Beiträge
 
#7

Re: unscharfe suche mit like und variablen

  Alt 1. Apr 2004, 15:54
Du konkatinierst falsch!
In SQL & PL/SQL werden Strings durch || zusammengesetzt (Dieser komische SP-Dialekt von FB/IB wird sich da wohl auch dran halten ).
Bsp:
SQL-Code:
SELECT X
FROM Y
WHERE Z like :SearchWord || '%'
Wenn das nicht geht, dann schmeiße deine FB CD in den nächsten Mülleimer.
  Mit Zitat antworten Zitat
Nightfly

Registriert seit: 25. Mär 2004
Ort: Dresden
118 Beiträge
 
#8

Re: unscharfe suche mit like und variablen

  Alt 1. Apr 2004, 16:27
herzlichen dank..hab das zwar mal wo gelesen,aber erst wenn ich sowas selber mal gebraucht hab isses gespeichert..
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:54 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz