2017-04-09 7 views
0

Guten Morgen alle zusammen.einfügen in Tabelle mit Laravel mit Zeitraum (speckeld)

ich ein Problem, das ich nicht lösen konnte

Ich versuche, einen Datensatz in der Datenbank mit Laravel zu speichern, das Problem ist, dass eines der Felder einen Punkt in seinem Namen hat.

Das ist die Struktur: struct table

ich, dies zu tun versucht:

$emqu_accountavg = DB::table('emqu_accountavg_resptime')->insert([ 
        'company_id' => $company_id, 
        '#Month' => $item['#Month'], 
        'System' => $item['System'], 
        'APPLID' => $item['APPLID'], 
        'GUI/NoGUI' => $item['GUI/NoGUI'], 
        'Resptime avg. (ms)' => $item['Resptime avg. (ms)'], 
       ]); 

Aber das ist der Fehler, den ich bekommen:

QueryException in Connection.php line 647:SQLSTATE[42S22]: Column not found: 1054 Unknown column 'Resptime avg. (ms)' in 'field list' (SQL: insert into `emqu_accountavg_resptime` (`company_id`, `#Month`, `System`, `APPLID`, `GUI/NoGUI`, `Resptime avg`.` (ms)`) values (1, 12017, BWP, APPL358552, GUI, 1581,4)) 

Ich habe auch versucht es, dies zu tun weg:

emqu_accountavg_resptime::create([ 
        'company_id' => $company_id, 
        '#Month' => $item['#Month'], 
        'System' => $item['System'], 
        'APPLID' => $item['APPLID'], 
        'GUI/NoGUI' => $item['GUI/NoGUI'], 
        'Resptime avg. (ms)' => $item['Resptime avg. (ms)'], 
       ]); 

Es tritt kein Fehler auf und die Datensätze werden gespeichert, aber der Punkt, der den Punkt enthält, behält den Wert null bei. ich diesen Wert überprüfen:

$item['Resptime avg. (ms)'] 

Und in Ordnung, das Problem ist der Name des Feldes mit speckeld (Punkt) in der Datenbank

+0

Nicht sicher, ob das funktioniert .. Versuchen Sie 'DB: roh '(' \ 'Lebenszeit durchschn. (Ms) \' ') => $ item [' Resptime avg. (ms) '] ' –

Antwort

0

Sie auf Ihrem ersten Fehler sehen, dass die Spalte Laravel einzufügen versucht to ist `Resptime avg`` (ms)` Es sollte `Resptime avg sein. (ms) `.

können Sie finden, wie man richtig den Wert hier zu entkommen:

Updating a MySQL column that contains dot (.) in its name

+0

Ich habe dies gemacht: emqu_accountavg_resptime :: create ([ ' company_id '=> $ company_id, ' # Monat '=> $ item [' # Monat '], ' System '=> $ item ['System'], 'APPLID' => $ Element ['APPLID'], 'GUI/NoGUI' => $ Element ['GUI/NoGUI'], 'Resptime durchschnittlichen (ms)' => $ Element ['Resptime avg. (ms)'], ]); Der Wert wird jedoch als null gespeichert –

0

Ich bekam die Antwort, ohne die Namen der Felder der Tabelle angibt, aber die Reihenfolge der gleichen Respekt wie es ist gespeichert, also:

DB::insert('insert into emqu_accountavg_resptime values (?, ?, ?, ?, ?, ?)', [$company_id, $item['#Month'],$item['System'],$item['APPLID'],$item['GUI/NoGUI'],$item['Resptime avg. (ms)']]); 

Vielen Dank für Ihre Hilfe.

Verwandte Themen