将 Excel sheet 导入 phpMyAdmin

Importing Excel sheet into phpMyAdmin

我目前正在使用 phpMyAdmin,但遇到了一个问题。将我的 CSV 导入 phpMyAdmin 时,它会四舍五入数字。我已将列设置为浮点数,将 Excel 中的列设置为数字(也尝试了 text/General),但无济于事。有没有其他人遇到过这个问题并找到可行的解决方法?

第二个问题,我是否可以上传 CSV 文件,使其将 phpMyAdmin 中的列名与 Excel 列名相匹配,并在正确的列中输入数据?

// 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...';
  1. 你的文件应该是这样的(十进制字段是通用类型):

xlssheet

  1. 另存为 CSV。文件可能会被保存;分离

这是新的 table:

  1. 打开 phpMyAdmin,选择您的数据库,点击导入并上传 select 文件
  2. 如果没有 selected
  3. ,请将格式更改为 CSV
  4. 格式特定选项的更改 - 列分隔:;
  5. 确保复选框(文件的第一行包含 table 列名称(如果未选中,第一行将成为数据的一部分))被选中
  6. 点击前往
  7. 将根据 CSV 中第一行的结构创建新 table。

这是针对现有的 table:

  1. 打开phpMyAdmin,选择你的数据库,选择你的TABLE匹配导入文件的结构,点击导入和select上传文件
  2. 如果没有 selected
  3. ,请将格式更改为 CSV
  4. 格式特定选项的更改 - 列分隔:;
  5. 将查询的跳过次数更改为 1(这将跳过带有列名的第一行)
  6. 点击前往
  7. 已选择table,其结构与 CSV 相同,将更新并插入 CSV 中的行。

我遇到了同样的问题。 解决了将整数部分和小数部分之间的分隔符从逗号更改为点的问题。

即 365,40 到 365.40

这对我有用。