我使用ADODB连接MySQL,我厌倦了为每个SQL查询复制循环,所以我创建了一些函数:
function SQLselect($prefix, $tabela, $warunek){
$db = NewADOConnection('mysqli');
$db -> Connect("localhost", "root", "", "dbname");
$rowsname = $db->Execute("SELECT `COLUMN_NAME` FROM `INFORMATION_SCHEMA`.`COLUMNS` WHERE `TABLE_SCHEMA`='dbname' AND `TABLE_NAME`='{$tabela}';");
while (!$rowsname->EOF)
{
$nameofrows[] = $rowsname -> fields['COLUMN_NAME'];
$rowsname->MoveNext();
}
$rowsname->Close();
$sql = $db->Execute("Select * from `{$tabela}`");
while($zadanie = $sql->FetchRow()){
for($i=0; $i < count($nameofrows); $i++){
global ${$prefix.$nameofrows[$i]};
${$prefix.$nameofrows[$i]}[] = $zadanie["$nameofrows[$i]"];
}
}
}
它工作正常。将所有行提取到名为“带有前缀的表中的行”的变量。
但我很确定可以做得更简单,但我找不到正确的方法。