今天我写php对某个表进行插入,
之前gff_line我给它取名为 index,导致我一直产生mysql语法报错
他说明在index附近有报错,我后来才意识到index可能是mysql的标识符,在php5.5.12中不能采用index作为字段名称。
因此我把index改成另外一个名字,我的文件就能跑通了。
顺便附上我的code
$value) {
$fp = fopen($value,"r");
$str ="";
while(!feof($fp)){
$i = $i + 1;
$str = fgets($fp);
$str = trim($str);
if(strcmp($str[0],"+")!=0){//extract the non "+++" line
$arr = explode("\t",$str);
$sql_insert = "INSERT INTO cgc_new_table(gff_line,
type,prev_dis,for_dis,cgc_no,refseq_id,start,end,pro,strand,product,signature,gen,taxid,sp_name)
VALUES ('"
.mysqli_escape_string($connect,$arr[0])."','"
.mysqli_escape_string($connect,$arr[1])."','"
.mysqli_escape_string($connect,$arr[2])."','"
.mysqli_escape_string($connect,$arr[3])."','"
.mysqli_escape_string($connect,$arr[4])."','"
.mysqli_escape_string($connect,$arr[5])."','"
.mysqli_escape_string($connect,$arr[6])."','"
.mysqli_escape_string($connect,$arr[7])."','"
.mysqli_escape_string($connect,$arr[8])."','"
.mysqli_escape_string($connect,$arr[9])."','"
.mysqli_escape_string($connect,$arr[10])."','"
.mysqli_escape_string($connect,$arr[11])."','"
.mysqli_escape_string($connect,$arr[12])."','"
.mysqli_escape_string($connect,$arr[13])."','"
.mysqli_escape_string($connect,$arr[14])."');";
$result_in = mysqli_query($connect, $sql_insert) or die ('Error querying database.'. mysqli_error($connect));
if($i % 10000 == 0)
print $i."\n";
}
}
}
//$result = mysqli_query($connect, $sql) or die ('Error querying database.'. mysqli_error($connect));
?>