将多个输入输入到数据库中,PHP

时间:2014-10-23 06:48:43

标签: php database netbeans sqliteopenhelper

我需要输入多个数据,就像在50000个不同的数据集中一样,将数据输入到带有txt文件的数据库中。 数据如图所示输入。

chr 166999824 67210768 NM_032291

用标签分隔它们。

有没有办法帮助输入众多不同的数据,而无需逐个慢慢输入?我们目前正在使用Netbeans和MySQL来实现这一目标。 不同的表是 Gene_id(主键) 染色体 START_POSITION end_position 缕 accession_number。

数据库示例

Gene_ id:1

染色体:chr1

start_position:66999824

end_position:67210768

strand:positive(这是正面的还是负面的)

accession_number:NM_032291

谢谢。

2 个答案:

答案 0 :(得分:0)

您的代码将如下所示。

$file = fopen("yourtextfile.txt","r");
    while(! feof($file))
      {
      $line = fgets($file);
      $array = preg_split('/\s+/', $line); // split lines by tab or spaces
      // your query here Ex Insert into tableName(col1,col2,col2)values($array[0],$array[1],$array[2]
      }
    fclose($file);

答案 1 :(得分:0)

<?php
$f=fopen('file.txt','r');
//file function reads the entire file into an array
$list = file($f,FILE_SKIP_EMPTY_LINES);

//this is the connection to database function
DB_connect();

foreach($list as $data)
{
    $x = explode("\t", $data);
    $chromosome=$x[0];
    $start_position=$x[1];
    $end_position=$x[2];
    $strand=$x[3];
    $accession_number=$x[4];
    $query="INSERT INTO table_name VALUES ('$chromosome','$start_position','$end_position','$strand','$accession_number')";
    mysql_query($query) or die("error insert query");
}
fclose($f);
?>