Ho un'istruzione INSERT in un file PHP in cui at-signs (@) si verificano davanti al nome della colonna.Istruzione SQL prima della firma prima del nome della colonna
@ campo1, @ field2,
Si tratta di un database MySQL. Cosa significa l'at-sign?
Edit:
Non c'è SET @field1 := 'test'
nello script PHP. Lo script PHP legge un csv e inserisce i dati nella tabella. Può essere usato in modo errato come commento?
<?php
$typo_db_username = 'xyz'; // Modified or inserted by TYPO3 Install Tool.
$typo_db_password = 'xyz'; // Modified or inserted by TYPO3 Install Tool.
// login
$_SESSION['host'] = "localhost";
$_SESSION['port'] = "3306";
$_SESSION['user'] = $typo_db_username;
$_SESSION['password'] = $typo_db_password;
$_SESSION['dbname'] = "database";
$cxn = mysqli_connect($_SESSION['host'], $_SESSION['user'], $_SESSION['password'], $_SESSION['dbname'], $_SESSION['port']) or die ("SQL Error:" . mysqli_connect_error());
mysqli_query($cxn, "SET NAMES utf8");
$sqltrunc = "TRUNCATE TABLE tablename";
$resulttrunc = mysqli_query($cxn,$sqltrunc) or die ("Couldn’t execute query: ".mysqli_error($cxn));
$sql1 = "
LOAD DATA LOCAL
INFILE 'import.csv'
REPLACE
INTO TABLE tablename
FIELDS
TERMINATED BY ';'
OPTIONALLY ENCLOSED BY '\"'
IGNORE 1 LINES
(
`normalField`,
@field1,
@field2,
`normalField2`,
@field3,
@field4
)";
$result1 = mysqli_query($cxn,$sql1) or die ("Couldn’t execute query: " . mysqli_error($cxn));
?>'
SOLUZIONE:
Infine, ho trovato fuori! Il campo @ è usato come manichino per saltare una colonna in un file csv. Vedi http://www.php-resource.de/forum/showthread/t-97082.html http://dev.mysql.com/doc/refman/5.0/en/load-data.html
@testing - Vedo che hai aggiunto un "possibile duplicato" nella tua stessa domanda, quindi votato a distanza su tale base. Puoi chiarire che risponde alla tua domanda? –
Non è un duplicato, i collegamenti richiedono la differenza tra una normale var e una '@ var', questa domanda si chiede cosa significhi' @ xyz' in una query. – Johan
Sarebbe più semplice ottenere specifiche se si include il ** codice php ** rilevante con la query al suo interno. – Johan