【发布时间】:2019-01-23 11:01:09
【问题描述】:
使用数组部分插入时出现 Sqlserv php 错误
阵列准备
foreach ($data as $rs) {
$params []="({$rs->hd},'{$rs->dvn}',{$rs->mth},{$rs->yr},{$rs->stid},{$rs->prcd},'{$rs->prnm}',{$rs->prte},{$rs->ssl},{$rs->clsk},1)";
}
插入声明:
$SqlInsert="insert into SQl_test (Ss_Hq_cd,Ss_division,Ss_month,Ss_yr,Ss_stk_Id,Ss_prod_cod,Ss_prod_name,ss_prod_rate,Ss_Sale,Ss_Cl_stk,ss_tran_stat) values(?,?,?,?,?,?,?,?,?,?,?) ";
$stmt = sqlsrv_query( $conn, $SqlInsert,$params);
EROOR:
语句准备/执行出错。\n"
Array ( [0] => Array ( [0] => 22018 [SQLSTATE] => 22018 [1] => 245 [code] => 245 [2] => [Microsoft][ODBC Driver 13 for SQL Server][SQL Server] 将 varchar 值 '(757,'MAIN',12,2018,100899,1250,'xyz',0,100,45,1)' 转换为数据类型 int 时转换失败。[message] => [Microsoft][ODBC Driver 13 for SQL Server][SQL Server]将 varchar 值 '(757,'MAIN',12,2018,100899,1250,'xyz',0,100,45,1)' 转换为数据类型 int.))
【问题讨论】:
标签: php loops prepared-statement sql-insert sqlsrv