Announcement

Collapse
No announcement yet.

in allen Tabellen suchen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • in allen Tabellen suchen

    Hi!
    Also ich möchte in allen Tabellen suchen und ich möchte herrausfinden wo und wie(Ids, Klartext) Produkte gespeichert wird.
    Wie lautet dazu der Befehl ich finde nichts.
    Gruß

  • #2
    Dazu gibt es auch keinen Befehl. Du musst dir selbst etwas schreiben.
    Im allgemeinen muss man dazu diverse Systemtabellen auslesen und sich die SQLs generieren. Etwas Grundlagenwissen über die von dir verwendete DB ist also nötig.

    Dim
    Zitat Tom Kyte:
    I have a simple philosophy when it comes to the Oracle Database: you can treat it as a black box and just stick data into it, or you can understand how it works and exploit it as a powerful computing environment.

    Comment


    • #3
      Bei diversen DB's läuft sowas unter dem Titel "Volltextsuche".

      Comment


      • #4
        ich brauche das aber jetzt kann mir nciht jemand sagen wie das sein muss, durch ein beispiel

        Comment


        • #5
          Kein, kann dir keiner Sagen solange du uns nicht sagst für welches DBMS (MySQL, Oracle, ...) das nötig ist

          Comment


          • #6
            ich benutze SQuirreL SQL Client

            Comment


            • #7
              Originally posted by prinzessin88 View Post
              ich benutze SQuirreL SQL Client
              Der Client ist egal. Es kommt darauf an welcher Server benutzt wird. Denn dieser bestimmt die zu verwendente SQL-Syntax (ich denke nicht das SQuirrel hier eine SQL-Übersetzung/Vereinheitlichung durchführt).

              Comment


              • #8
                ich benutze einen Microsoft SQL Server

                Comment


                • #9
                  Dann bringt dir die Google-Suche nach Volltext schon einiges an Info welche du dir duchlesen solltest.

                  Comment


                  • #10
                    kann mir wenigstens jemand sagen wie der befehl aussieht um in allen tabellen zu suchen

                    Comment


                    • #11
                      Hast du dir schon mal die Links angesehen die google ausspuckt. Dort solltest du auch Beispielcode finden wie z.B. hier!

                      Etwas mehr Eigeninitiative bitte!

                      Comment


                      • #12
                        Hallo prinzessin88,

                        die "Volltextsuche" darfts Du gerne komplett vergessen; die hat einen anderen Sinn und Zweck, zudem muss zunächst diese erst eingerichtet werdne, die zu indizierende Felder definiert werden und so weiter. Und auch hier müssen die Feldnamen bekannt sein.

                        Es gibt eine undokumentierte und somit not-suppoted (was einem schon mal zu denken geben sollte und heißt: NEVER USE) Stored Procedure namens [sys].[sp_MSforeachtable].

                        Wie der Name schon ahnen lässt, kann man damit ein SQL Statement gegen jede Tabelle fahren lassen .
                        Nur; vom (Un-) Sinn und Zweck mal abgesehen, welchen gemeinsamen Nennen willst Du zum Filtern erwarten???
                        Nicht jede Tabelle hat die gleichen Feldnamen?
                        Und welches Ergebnis erwartest Du? Der SQL Server kann auch nur ein Resultset zurückliefern, das man vorher definiert.
                        Olaf Helper

                        <Blog> <Xing>
                        * cogito ergo sum * errare humanum est * quote erat demonstrandum *
                        Wenn ich denke, ist das ein Fehler und das beweise ich täglich

                        Comment


                        • #13
                          hi!
                          Also ich möchte Select Produkt from (alle Tabellen sollen durchsucht werden).
                          Also soll er alle Tabellen nach der Spalte Produkt durchsuchen.
                          Gruß

                          Comment


                          • #14
                            Wenn du in einer Datenbank alle Tabellen haben willst, in der es eine Spalte namens 'Produkt' gibt, findest du diese so:
                            Code:
                            select name from sysobjects where id in
                               (select id from syscolumns where name = 'Produkt')
                            and xtype = 'U'
                            Solltest du jedoch den Inhalt dieser Spalten wollen, dann zB etwa so:
                            Code:
                            create table #tmp (tabelle varchar(50), produkt varchar(50))
                            exec sp_msforeachtable
                             @command1 = 'insert into #tmp select replace(substring(''?'', 8, 99),'']'',''''), count(*) from ? where substring(''?'', 8, 99) in (select name + '']'' from sysobjects where id in (select id from syscolumns where name = ''Produkt'')  and xtype = ''U'')'
                            select * from #tmp where produkt > 0
                            drop table #tmp
                            bye,
                            Helmut

                            Comment


                            • #15
                              hi!
                              Also die zweite lösung sieht nciht schlecht aus, jedoch wird der Inhalt der Spalte Produkt als Zahlen dargestellt warum ist das so?
                              Gruß

                              Comment

                              Working...
                              X