我目前在使用phpMyAdmin进行试验,并遇到了一个问题。当我将CSV文件导入phpMyAdmin时,它会对数字进行四舍五入。我已将该列设置为float,在Excel中将该列设置为Number(还尝试了text / General),但无济于事。有人遇到过这个问题并找到了可行的解决方案吗?
第二个问题是,我是否可以上传CSV文件,以便将phpMyAdmin列名与Excel列名匹配,并将数据输入正确的列中?
我目前在使用phpMyAdmin进行试验,并遇到了一个问题。当我将CSV文件导入phpMyAdmin时,它会对数字进行四舍五入。我已将该列设置为float,在Excel中将该列设置为Number(还尝试了text / General),但无济于事。有人遇到过这个问题并找到了可行的解决方案吗?
第二个问题是,我是否可以上传CSV文件,以便将phpMyAdmin列名与Excel列名匹配,并将数据输入正确的列中?
新建表格:
已有表格:
我曾经遇到过同样的问题。 通过将整数部分和小数部分之间的分隔符从逗号改为点来解决。
例如: 将365,40更改为365.40
这对我有用。
// connecting dB
$mysqli = new mysqli('localhost','root','','testdB');
// opening csv
$fp = fopen('data.csv','r');
// creating a blank string to store values of fields of first row, to be used in query
$col_ins = '';
// creating a blank string to store values of fields after first row, to be used in query
$data_ins = '';
// read first line and get the name of fields
$data = fgetcsv($fp);
for($field=0;$field< count($data);$field++){
$col_ins = "'" . $col[$field] . "' , " . $col_ins;
}
// reading next lines and insert into dB
while($data=fgetcsv($fp)){
for($field=0;$field<count($data);$field++){
$data_ins = "'" . $data[$field] . "' , " . $data_ins;
}
$query = "INSERT INTO `table_name` (".$col_ins.") VALUES(".$data_ins.")";
$mysqli->query($query);
}
echo 'Imported...';