Announcement

Collapse
No announcement yet.

SQL-Insert Befehl; Probleme mit String

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

  • SQL-Insert Befehl; Probleme mit String

    Hallo,

    ich habe mir ein Programm unter Visual Basic Programmiert, dass mir Dateien in einzelne Strings ausgibt.

    Diese Strings will ich nun in eine Datenbank schreiben.

    Das Funktioniert auch sehr schön, bis eine Datei auftaucht die wie folg geschrieben wurde

    z.B. Like's oder I'll;

    Einen String mit einem ' im Text kann ich mit einer normalen INSERT INTO Anweisung nicht in eine Datenbank schreiben

    Code:
    INSERT INTO tbl_test VALUES (1,'Hallo die ist ein Test');
    Dieser Befehl funktioniert zu 100% ^^

    aber

    Code:
    INSERT INTO tbl_test VALUES (1,'Love's');
    Das Funktioniert nicht. Grund ist ja er unterteil diesen Befehl in 3 Spalten von 2 Möglichen die ich definiert habe.

    Tabellenstruktur ist wie folg:

    ID As Integer
    String as varchar(255)

    Wie kann ich nun String mit einem ' in die Datenbank schreiben?

    OK ich könnte auch ein ´ oder ` verwenden. Aber ich will ein ' verwenden.

    mfg

    Seby

  • #2
    Hallo,

    vor einigen Jahren hatte ich mal mit Delphi und Interbase gearbeitet und dort konnte ich mich den "Befehl" SET TERM das ; durch ein ^ ersetzen.

    Also hat er das ; nicht als ende des Triggers genommen sondern das ^-Zeichen

    Vielleicht gibt es ja so etwas in SQL.

    Ich such noch ein bissel weiter im I-Net bzw. in einem SQL-Buch.

    Aber vielleicht weiß das schon jemadn von euch.

    Code:
    SET TERM ^ ;
    
    
    /* Triggers only will work for SQL triggers */
    
    CREATE TRIGGER Set_finr FOR T_FILME 
    ACTIVE BEFORE INSERT POSITION 0
    AS
    BEGIN
    if (NEW.finr is Null) then
      NEW.finr = GEN_ID(g_Filme, 1);
    END
     ^
    
    CREATE TRIGGER Set_KDNR FOR T_KUNDEN 
    ACTIVE BEFORE INSERT POSITION 0
    as BEGIN
    if (NEW.kdnr is Null) then
     new.kdnr = gen_id(G_KUNDEN,1);
    END
     ^
    
    COMMIT WORK ^
    SET TERM ;^

    Also: vielleicht kann ich das zeichen ' das die einzelnen Spalten trennt durch das Zeichen # ersetzen

    mfg

    Seby

    Comment


    • #3
      Code:
      INSERT INTO tbl_test VALUES (1,'Love''s');

      Comment


      • #4
        Hallo,

        vielen Dank für Deinen Post.

        Ich habe viel mit SQL gemacht aber dieses Problem hatte ich nur seitdem ich Windows Datein auslesen will bzw. m*3 sammlung^^

        Normal hätte ich da auch draufkommen müssen aber trozdem vielen Dank


        mfg

        Seby

        Comment

        Working...
        X