그것을 :) 닫기 전에 모든 질문을 읽어 보시기 바랍니다
임과 함께 준비된 문을 찾고 mysqli (중요하지 PDO, 나는 그것을 사용할 수 없으며 일부 PDO 코드를 전송할 수 없기 때문에 mysqli.), 어디에 내가 많은 값 (약 2000) 긴 쿼리를 삽입 할 수 있습니다. 하지만 쿼리를 준비해야합니다. 준비 여러 삽입 mysqli
그래서 내가 그렇게 시작 :
$array = array("a1", "a2", "a3","a5", "a7", "a5","a9", "a32", "a3", "a4");
// AND SO ON UP TO 2000
$type = "s";
$end = count($array);
$query = "INSERT INTO table (value) VALUES (?)";
for ($i = 0; $i <= $end - 1; $i++)
{
$query .= ", (?)";
$type .= "s";
}
$stmt = $conn->prepare($query);
$stmt->bind_param("$type", /* PROBLEM */); // HERE IS THE PROBLEM!!!
$stmt->execute();
$stmt->close();
하지만 지금 내 문제, 어떻게 "bind_param"의 변수를 바인딩 할 수 있습니다 dynamicaly?
"실행"에 대한 for-loops와 같은 것을 보여주지 마십시오. 2000 삽입물에는 너무 느리기 때문에 :).
나는
$allvalues = "";
foreach ($array as $value)
{
$allvalues .= "$value ";
}
$stmt->bind_param("$type", $allvalues);
그러나 물론, 나는 그 바인딩 어차피 같은 것을 의미한다.
"(중요하지 PDO, 나는 그것을 사용할 수 없으며 일부 PDO 코드를 전송할 수 없기 때문에 mysqli.) "- PDO는 대부분의 사람들이 데이터베이스를 선택하는 교차 데이터베이스입니다. – Nick
하지만 왜 다른 데이터베이스를 사용해야합니까? 나는 mysql 만 필요로하고, PDO와 mysqli를 테스트했으며, mysqli는 ** 항상 ** 빠르기 때문에 PDO가 필요 없다. –
@CopyDevil 그 자리에 당신의 증거는 어디 있습니까? – Neal