Zum Inhalt springen

bigpoint

Mitglieder
  • Gesamte Inhalte

    1.243
  • Benutzer seit

  • Letzter Besuch

Beiträge von bigpoint

  1. Original geschrieben von g_nikolai

    wenn Du das Recht auf dem Server dazu hast.

    Guido

    Was verstehst Du unter ???

    Muss man irgend welche speziale Rechte dazu besitzen ???

    Denn wen ich versuche das zu machen kriege ich solchen Fehler:

    [Microsoft][ODBC SQL Server Driver]Ungültiger Zeichenwert für Konvertierungsangabe.

  2. Original geschrieben von Panther

    Was ich aber nicht verstehe :

    du setzt in der Schleife @x = @x/100 und liest dann nen Wert aus dem Cursor in die Variable @x ein ohne sie vorher zu verarbeiten, oder hast du was vom Code aus der Schleife rausgenommen ?

    Den Schreibfehler in der If Exists Bedingung hast du nur hier beim posten gemacht , oder ?

    Entweder verstehe ich das ganze was Du machst oder es läuft nicht richtig denn wenn ich so versuche zu machen kriege ich nichts gefunden dh. er sollte nicht nur einmal zwei stelle abschneiden sondern solange bis was gefunden oder bis null


    declare x_cursor cursor for select x from Tabelle1
    where ...
    open x_cursor;

    fetch x_cursor into @x;


    print 'fetch_status von x_cursor :'
    print @@fetch_status –@@fetch_status ist 0
    while @@fetch_status = 0
    begin

    print'@x vor' –hier kriege ich den orginal Wert
    print @x
    if exists (select was from Tabelle2 where x=@x) – ist hier was falsch ?
    begin
    print'x'
    print @x – hier kommt er nie ;(
    end
    fetch next from x_cursor into @x
    set @x =@x/100
    print'x nach'
    print @x -- hier schneidet er zwei stellen ab aber geht nicht wieder hoch
    end
    close x_cursor
    deallocate x_cursor

    [/PHP]

  3. Original geschrieben von g_nikolai

    Du kannst auch eine quasi Set anweisung benutzten um die Werte aus der DB oder Select in eine Variable zu sichern.

    Bsp:

    Declare @Ergebnis int

    select @Ergebnis=1+1

    sollte auch funktionieren. zumindest tut es das bei mir in edlichen Stored Procedures.

    Guido

    ja, wenn es 'select 1.5*10' nicht in varchar gespeichert wehre ;)

  4. Original geschrieben von Panther

    Hi,

    wo kommt der erste Wert für @x her ? Du settzt am anfang der Bedingung @x = @x/100

    hast aber X noch keinem Wert zugewiesen., oder fehlt da noch ein Teil des Codes ?

    Hi , ja richtig es fehlt noch teil von Cod, der wert @x ist gesetz allerdings läft es nur eimal durch ;(

    Habe mir gedacht LOOP zu benutzen aber irgend wie klapt es nicht ;(

  5. Schon wieder ein prob ;)

    Ich habe in eine Tabelle1 eine SpalteS und dort steht ein Zahl zB 35011004 in eine andere Tabelle2 ist auch eine SpalteS wo steht auch ein Zahl Jetzt muß ich solange in der Tabele2 SpalteS einen Satz suchen bis gefunden.

    Die regeln sind so: wenn in der Tabele2 SpalteS die Zahl 35011004 nicht gefunden ist zahl um zwie von rechts kürzen und weiter suchen so habe ich es versucht funk aber leider noch nicht richtig ;(


    declare x_cursor cursor for select x from Tabele1
    where .....
    open x_cursor
    fetch next from x_cursor
    into @ SpalteS
    while @@fetch_status = 0
    begin
    set @x =@x/100
    fetch next from x_cursor into @x
    if exists (select bed from Tabele2 where SpaleS=@SpalteS)
    begin
    ......
    end
    fetch next from x_cursor into @ SpalteS
    end
    close x_cursor
    deallocate x_cursor

    [/PHP]

  6. Original geschrieben von Diablo999

    Probiers mal ohne den ;

    Weiß nicht obs das ist, aber probieren geht über studieren...

    
    
    EXEC ('IF (' + @bedasud + ' ) BEGIN select 1 END ')
    
    

    Ansonsten kann ich mir nur vorstellen das in der Bedingung was

    falsches drin steht was kein TRUE oder FALSE zurückliefert.

    Diablo999

    Vielen Dank für Antwort ;)

    Also im Bedingung steht 20<10 ich probiere aber gleich ohne ;

  7. noch was :

    Ich habe ein Bedingung im varchar z.B. 20<40 dann schicke ich es am exec etwa so

    EXEC ('IF (' + @bedasud + ' ) BEGIN select 1; END ')

    Und dann prüfe mit

    if @@rowcount = 1

    ob es wahr oder falsch war es funktioniert auch wunderbar wenn es war ist aber sobald es falsch ist kriege ich Syntaxfehler, wie kann man es lösen ????

  8. Original geschrieben von Diablo999

    Geht glaub ich nicht, aber du kannst das Ergbnis in einer Tabelle auffangen...

    
    
    create table #tmp
    
    (
    
      n int
    
    )
    
    
    insert into #tmp
    
    exec('select 1+1')
    
    
    select * from #tmp
    
    

    Weiß nicht ob dir das was bringt...

    Diablo999

    ja das ist eine Lösung Danke ;)

  9. Original geschrieben von HolzOnkel

    ....mal ne blöde Frage zwischen rein...

    Welche Felder werden denn im Varchar-Feld eingelagert als Bedingung? Nur Abfragen auf das Feld "EK" oder auch auf andere Felder?

    Gruss,

    der Onkel

    Ich weis ja nicht wo zu Du es brauchst aber ja auch andere, willst Du auch wiesen welche ????

  10. Original geschrieben von gurkenpapst

    Z.B. so:

    select * from bubu where haha like '%\%%';

    Das heisset, du musst das %-Zeichen, das du suchst, mit einem backslash escapen.

    Kriege zwar keinen Fehler aber auch kein Resultat obwohl es steht 100% was im Feld mit % zB EK+10%

  11. Original geschrieben von Diablo999

    Microsoft SQL Server???

    Wenn ja, ist es glaub ich nicht möglich ne Bedingung in nem VARCHAR zu verpacken

    um ihn dann in ner Verzweigung auszuwerten. Aber es müsste so gehen, jedenfalls

    im SQL-Server.

    Des mit dem ersetzen des Wertes lass ich mal weg...

    
    
      SELECT  @Bedingung = '143 < 120'
    
    
      EXEC 
    
      ("
    
        IF (" + @Bedingung + ") BEGIN
    
           SELECT @Super
    
        END
    
      ")
    
    
    Hoffe ich erzähle jetzt was richtiges... Diablo999
    also so
    
      SELECT  @Bedingung = '143 < 120'
    
    
      EXEC 
    
      ("
    
        IF (" + @Bedingung + ") BEGIN
    
           SELECT @Super
    
        END
    
      ")
    
    

    kriege ich fehler:

    Falsche Syntax in der Nähe des IF-Schlüsselwortes.

    Wenn ja, ist es glaub ich nicht möglich ne Bedingung in nem VARCHAR zu verpacken

    gibt's da wirklich nicht schon eine funktion ? Vielleich irgend wo im Netz

  12. Hallo,

    habe folgenden Problem, in eine Spalte ‚Bedingung‘ ist Bedingung als varchar gespeichert z.B. EK>120

    Ich brauche dieses Bedingung in einem IF Block abzufragen, den wert von EK habe ich in einem int @bedasud

    Ich habe mir gedacht dass man es so machen kann :

    select REPLACE(@bedasud,'EK',@EK);

    if(@bedasud)

    kriege aber fehler denn im @bedasud steht eindeutig EK>120 aber wenn ich den wert mi print @bedasud ausgebe steht richtig also 123(@EK)>120

    Am besten wäre wenn ich eifach nur die Zahl 120 als int irgend wie kriegen konnte.

    Kann mir jemand Helfen ???

  13. Hallo,

    ich benutze MSFlexGrid und will den CtoolTipCtrl in Verbindung mit MSFlexGrid setzen dh. wenn ich mit der Maus drauf gehe soll das angezeigt werden wo sich grade die Maus befindet also in Spalt 1 Spalte 1 usw.

    Den MSFlexGrid fühle ich in eine for schleife wie komme ich aber an die einzelne werte wenn ich mit die Maus drauf gehe ???

  14. Original geschrieben von Beagol+Sollum

    meines Wissens ist das Default auf ON

    Also ich benutze sichten und wenn ich ein insert ausführe ohne SET XACT_ABORT

    Auf ON zu setzen meckert der Query Analyzer das ich SET XACT_ABORT auf OFF gesetzt habe und deswegen kann auch keinen insert ausführen. Da ich insert nur durch die Schichten mache habe mir gedacht es wehre besser wenn ich es irgend wie automatisch setzen konnte

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...