Schrift
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]10871[/thread]

SQL::Abstract - was alles fehlt



<< |< 1 2 >| >> 16 Einträge, 2 Seiten
Froschpopo
 2007-11-22 21:21
#102840 #102840
User since
2003-08-15
2653 Artikel
BenutzerIn
[default_avatar]
Ich habe mal meine Fragen gebündelt weil ich sonst jedesmal ein neues Thema öffnen müsste:

1. Wie kann ich IF()-Abfragen machen?

2. wie funktioniert GROUP BY?

3. wie wende ich DAY, MONTH, YEAR, COUNT usw. im SELECT-Bereich an?

4. wie werden Aliasse (AS) gesetzt?

5. wie funktioniert REPLACE?

6. Wie verwende ich Subselects?


Da das Modul eher einen primitiven EIndruck hinterlässt wäre ich schon froh wenn wenigstens eines von meinen Fragen umsetzbar wäre. :(
#Kein Kommentar
 2007-11-22 22:32
#102844 #102844
User since
2007-06-09
575 Artikel
HausmeisterIn
[default_avatar]
doku?
Gerade weil wir alle in einem Boot sitzen, sollten wir froh sein, dass nicht alle auf unserer Seite sind
Froschpopo
 2007-11-23 02:00
#102856 #102856
User since
2003-08-15
2653 Artikel
BenutzerIn
[default_avatar]
#Kein Kommentar+2007-11-22 21:32:42--
doku?


Limit, Subselect's usw. wird dort nichtmal erwähnt.
Das Modul scheint eher was für kleine Ansprüche zu sein.
Von 33 Statements kann ich grad mal 3 Stück mit SQL::Abstract ausführen und das ist ziemlich mager.
Froschpopo
 2007-11-23 05:17
#102857 #102857
User since
2003-08-15
2653 Artikel
BenutzerIn
[default_avatar]
ich merke schon, das muss man mit in die @fields reinschreiben:

my @fields = ("IF(...)", "count(id)" genauso wie count usw.
renee
 2007-11-23 09:38
#102865 #102865
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Für Limit gibt's CPAN:SQL::Abstract::Limit
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
renee
 2007-11-23 09:58
#102870 #102870
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Froschpopo+2007-11-22 20:21:49--
Ich habe mal meine Fragen gebündelt weil ich sonst jedesmal ein neues Thema öffnen müsste:

1. Wie kann ich IF()-Abfragen machen?

Nenn mal eine Beispielabfrage

Quote
2. wie funktioniert GROUP BY?


Quote
3. wie wende ich DAY, MONTH, YEAR, COUNT usw. im SELECT-Bereich an?

Code (perl): (dl )
1
2
my ($stmt) = $sql->select('tabelle', [qw/a DAY() NOW()/], \%where);
print $stmt,"\n";


Quote
4. wie werden Aliasse (AS) gesetzt?

Tabelle oder Spalte?
Code (perl): (dl )
1
2
my ($stmt) = $sql->select('tabelle as t', ['column as c'], \%where);
print $stmt,"\n";


Quote
5. wie funktioniert REPLACE?
Beispiel?

Quote
6. Wie verwende ich Subselects?


Da das Modul eher einen primitiven EIndruck hinterlässt wäre ich schon froh wenn wenigstens eines von meinen Fragen umsetzbar wäre. :(


Wenn man sich mal genauer mit dem Modul beschäftigt (Doku lesen !! und einfach mal "rumspielen"), bekommt man einiges hin!
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
renee
 2007-11-23 10:01
#102871 #102871
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Froschpopo+2007-11-22 20:21:49--
2. wie funktioniert GROUP BY?

SQL::Abstract::Clauses
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
esskar
 2007-11-23 10:03
#102872 #102872
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
teilweise ist es aber echt "veraltet".
ich erinnere mich dunkel, dass z.b. "DBIx-Class" irgendwo eine versteckte erweiterung dieses moduls hat.
wenn ich nur nochmal genau wüsste, wo!
Froschpopo
 2007-11-23 14:47
#102910 #102910
User since
2003-08-15
2653 Artikel
BenutzerIn
[default_avatar]
Quote
2. wie funktioniert GROUP BY?

SELECT * FROM tbl GROUP BY users

Quote
3. wie wende ich DAY, MONTH, YEAR, COUNT usw. im SELECT-Bereich an?

Code (perl): (dl )
1
2
my ($stmt) = $sql->select('tabelle', [qw/a DAY() NOW()/], \%where);
print $stmt,"\n";

Danke, das habe ich heut nacht auch schon herausgefunden. Damit ist das Thema "Funktionen" soweit schonmal abgehakt.

Quote
4. wie werden Aliasse (AS) gesetzt?

Tabelle oder Spalte?
Code (perl): (dl )
1
2
my ($stmt) = $sql->select('tabelle as t', ['column as c'], \%where);
print $stmt,"\n";

Ich hatte damit gerechnet, dass es für alles mögliche Parameter gibt. Aber ein Blick auf den Quelltext vom Modul hat mich dann halbwegs ernüchtert.

Quote
5. wie funktioniert REPLACE?
Beispiel?
REPLACE INTO tbl
(ist dasselbe wie INSERT, nur dass ein bereits vorhandener Datensatz mit demselben INDEX ersetzt wird, so spart man sich ein SELECT)

Quote
6. Wie verwende ich Subselects?
SELECT (SELECT COUNT(*) FROM tbl2) AS friends, id FROM tbl1

Ich bin aber mittlerweile auf die Idee gekommen:
my @fields = ( subselect => "(".$stmt2.")" );

Da das Modul eher einen primitiven EIndruck hinterlässt wäre ich schon froh wenn wenigstens eines von meinen Fragen umsetzbar wäre. :(


renee+2007-11-23 08:38:09--
Für Limit gibt's CPAN:SQL::Abstract::Limit

LIMIT ist wieder so ein Beispiel, wie auch GROUP BY: Sowas ist doch, wenn man so ein Modul entwickelt, ganz vorn in der Todo-Liste anzuordnen. Fast jedes SELECT hat doch ein LIMIT. Ich setze mich doch auch nicht an einen Tisch ohne Gabeln.


Mal etwas in eigener Sache:
Mein Script verarbeitet derweil ca. 9 Module, davon sind 2 meine eigenen, 3 keine Standardmodule. Bei Letzteren habe ich teilweise schon echt Panik-Schübe dass die Teile (darunter auch SQL::Abstract) nicht Perl6 kompatibel sein werden. Weil so wie SQL::Abstract entwickelt wird sieht es mir nicht danach aus, als ob da noch ein Entwickler groß Interesse dran hätte.
Froschpopo
 2007-11-23 15:22
#102923 #102923
User since
2003-08-15
2653 Artikel
BenutzerIn
[default_avatar]
wahnsinn, damit SQL::Abstract::Limit erstmal läuft muss man halb Cpan installieren

Da braucht man Testt::Exception, Test::Builder, Test::Simple und und und.
Wenn nur eines davon nicht bald in Perl6 übersetzt wird macht es das komplette SQL::Abstract kaputt.
Das war ja nur die Modulliste für SQL::Abstract::Limit.
Bin ja mal gespannt was für SQL::Abstract::Class noch so benötigt wird.
<< |< 1 2 >| >> 16 Einträge, 2 Seiten



View all threads created 2007-11-22 21:21.