我正在尝试从Firebird数据库获取一些数据并使用PHP放入MySql数据库。 我的问题是我的SELECT有3847行,代码只是INSERT 981行! 这是我的代码,我在这里写了连接和其他一些东西,因为一切都是正确的...感谢您的帮助!
$res=ibase_query($conexao,
"select
p.id_processo as ID ,
p.alteravel1 as PLACA,
p.titproc as TITPROC,
p.data_inicio as RECEPCIONADO,
p.dt_atu_geral as GERAL,
p.numproc as N_PROCESSO,
p.id_cli,
p.id_adv,
p.id_fase,
p.vara as VARA,
fo.nm_foro as FORO,
cd.nm_cidade as CIDADE,
uf.nm_estado as ESTADO
from processo p
left join pessoa pss on p.id_adv = pss.id_pessoa
left join foro fo on p.id_foro = fo.id_foro
left join cidade cd on fo.id_cidade = cd.id_cidade
left join estado uf on cd.id_estado = uf.id_estado
where pss.nome <> 'JORGE LUIS CONFORTO' and
p.status = '0'"
);
$sql="create table if not exists processo1 (
id int(40) not null primary key,
placa varchar(100),
titproc varchar(100),
data_recepcionado datetime,
data_atual datetime,
n_processo varchar(100),
id_cli int(40),
id_adv int(40),
id_fase int(40),
vara int(40),
foro varchar(100),
cidade varchar(100),
estado varchar(100)
)";
mysqli_query($conexao1, $sql);
while ($escrever=ibase_fetch_assoc($res)){
$id = $escrever['ID'];
$placa = $escrever['PLACA'];
$titproc = $escrever['TITPROC'];
$dtin = $escrever['RECEPCIONADO'];
$dtatu = $escrever['GERAL'];
$nproc = $escrever['N_PROCESSO'];
$cli = $escrever['ID_CLI'];
$adv = $escrever['ID_ADV'];
$fase = $escrever['ID_FASE'];
$vara = $escrever['VARA'];
$foro = $escrever['FORO'];
$cidade = $escrever['CIDADE'];
$estado = $escrever['ESTADO'];
$query = "insert into processo1 (
id,
placa,
titproc,
data_recepcionado,
data_atual,
n_processo,
id_cli,
id_adv,
id_fase,
vara,
foro,
cidade,
estado)
values (
'$id',
'$placa',
'$titproc',
'$dtin',
'$dtatu',
'$nproc',
'$cli',
'$adv',
'$fase',
'$vara',
'$foro',
'$cidade',
'$estado'
)";
mysqli_query($conexao1, $query);
}
答案 0 :(得分:0)
运行每个查询后,应始终检查错误。
由于某种原因,您的插入可能会失败。确切的原因可能是任何事情,但如果至少以这种方式,您应该被告知任何失败的插入错误。
if (!$mysqli_query($query)) {
printf("Error: %s\n", $mysqli_error());
}