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

Variable deklarieren und anwenden



<< |< 1 2 >| >> 11 Einträge, 2 Seiten
Gast Gast
 2007-01-08 10:44
#72931 #72931
Hallo Leute!
Frohes Neues.

Ich habe die folgende Zwei TAbellen .

Code: (dl )
1
2
3
4
5
6
Tabelle1:                    Tabelle2 
Id NEID REfID NEID
1 2389 1 2436
2 2563 2 2563

Ich habe auch Folgende SQL Statement


$query="SEELECT Tabelle1.ID,Tabelle1.NEID , Tabelle2.REfID,Tabelle2.NEID From Tabelle1 Left JOIN On Tabelle1.ID= Tabelle2.REfID"
$sth = $dbh->prepare($query) or die "Querry Error prepare: $DBI::errstr\n";
$ds = $sth->execute or die "Querry Error execute: $DBI::errstr\n";
if (($newdata ->{ID}) eq ($newdata->{Data_RefID}))
{
if (($newdata->{NEID}) eq ($newdata-->{$NEID})){
print "Update\n";

der problem ist beim Vergleich von der Datei " NEID " von Beiden Tabellen in der Letzte Zeile oen gezeigt !!!!
Kann ich vielleicht an Tabelle1.NEID eine Variable Zuweisen , die ich vielleicht weiter im Code nutze??

Hat jemand eine idee?

Danke im Voraus
}
pq
 2007-01-08 10:56
#72932 #72932
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
[sql]SELECT Tabelle1.ID,Tabelle1.NEID , Tabelle2.REfID,Tabelle2.NEID AS NEID2 From Tabelle1 Left JOIN On Tabelle1.ID = Tabelle2.REfID[/sql]
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
nour
 2007-01-08 11:13
#72933 #72933
User since
2006-11-15
108 Artikel
BenutzerIn
[default_avatar]
Hallo,

ich bekomme die folgende Fehler
[CODE]
#Bareword "NEID1" not allowed while "strict subs" in use at ./test2.pl line 82.

ich weiss ja nicht woran es liegt.

Danke.
nepos
 2007-01-08 11:18
#72934 #72934
User since
2005-08-17
1420 Artikel
BenutzerIn
[Homepage] [default_avatar]
Hm, du machst einen Execute in der Datenbank, machst damit nachher aber nichts mehr?
Verstehe ich dich richtig, dass du NEID aus dem Ergebnis deiner Datenbankabfrage haben willst?

PS: Kleine Bitte am Rande: bitte setz deinen Code in Code-Tags, dann wirds leichter lesbar und übersichtlicher ;)
nepos
 2007-01-08 11:21
#72935 #72935
User since
2005-08-17
1420 Artikel
BenutzerIn
[Homepage] [default_avatar]
Hm, also NEID1 sehe ich in dem geposteten Code überhaupt nicht. Du solltest schon den passenden Ausschnitt posten, damit wir sehen, was du genau machst...
nour
 2007-01-08 11:25
#72936 #72936
User since
2006-11-15
108 Artikel
BenutzerIn
[default_avatar]
ich ím SQL Statement eine von den Beiden NEIDS umbenenen "AS NEID1" und ich will gneau nach Execute Beide NEIDs"TAbelle1.NEID" und Tabelle2:NEID" VErgleichen und zwar wie Folgend:
[CODE]
if (($newdata->{NEID}) eq (NEID1)){
#print "Update\n";
}

aber es liefer mir die obeigen Fehler !!

Danke
nour
 2007-01-08 11:27
#72937 #72937
User since
2006-11-15
108 Artikel
BenutzerIn
[default_avatar]
der genauere Skript ist wie Folgend
------------------------------------------------------------
[CODE]
$query="SEELECT Tabelle1.ID,Tabelle1.NEID , Tabelle2.REfID,Tabelle2.NEID AS NEID1 From Tabelle1 Left JOIN On Tabelle1.ID= Tabelle2.REfID"
$sth = $dbh->prepare($query) or die "Querry Error prepare: $DBI::errstr\n";
$ds = $sth->execute or die "Querry Error execute: $DBI::errstr\n";
if (($newdata ->{ID}) eq ($newdata->{Data_RefID}))
{
if (($newdata->{NEID}) eq ($newdata-->{NEID1})){



DANKE
print "Update\n";
renee
 2007-01-08 11:32
#72938 #72938
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Das SQL ist unabhängig von Perl. Das heißt, Du kannst im SQL-Statement soviel "AS"'s haben, um Variablen für Dein Perl-Programm musst Du Dich selbst kümmern...

Code: (dl )
1
2
3
4
5
6
7
8
9
my $stmt = 'SELECT Tabelle1.ID,Tabelle1.NEID , Tabelle2.REfID,Tabelle2.NEID AS NEID2 From Tabelle1 Left JOIN On Tabelle1.ID = Tabelle2.REfID';
my $sth = $dbh->prepare($stmt) or die $dbh->errstr();
$sth->execute() or die $dbh->errstr();

while(my ($id,$neid_1,$refid,$neid_2) = $sth->fetchrow_array()){
if($newdata->{NEID} eq $neid_1){
print "gleich!\n";
}
}
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/
pq
 2007-01-08 11:33
#72939 #72939
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
nour, du musst den code nicht zweimal posten! noch dazu mit dem SEELECT!
das ist kein gültiges SQL. vielleicht gibst du dir einfach mal ein bisschen mühe,
wenn du hier hilfe haben willst.
ich habe dir die lösung als SQL gepostet, und wenn du nicht weisst, wo du
das einbauen sollst, dann zweifle ich, ob du überhaupt kapierst, was dein script macht.
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
pq
 2007-01-08 11:36
#72940 #72940
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
zudem ist der vergleich if (($newdata ->{ID}) eq ($newdata->{Data_RefID}))
ziemlich hirnig, denn du machst darauf ja einen JOIN. vertraust du
deiner datenbank nicht oder was?
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
<< |< 1 2 >| >> 11 Einträge, 2 Seiten



View all threads created 2007-01-08 10:44.