sqlsrv_query上的sql变量的长度限制?
技术问答
405 人阅读
|
0 人回复
|
2023-09-14
|
sqlsrv_query上的sql变量是否有任何已知的长度限制?我有一个应用程序,它发送一个命令块来执行SQL SERVER(插入到…,插入到…等)。它在Linux(mssql)上运行良好,但在Windows(sqlsrv)上,最后一条指令被忽略。丢失最后一条指令的sql命令有4900行。9 F3 i* f. p' F* b4 }5 d
$qry_str = "";
/ K1 k8 D5 ^2 h8 y+ n3 Tfor () {
; N- v! ]2 l# F; K( o1 K' b( K $qry = "INSERT INTO tbl1 ~7 u8 I( l. H* V
(field1,
* ^0 P4 n% h/ a. h7 t field2,
+ a9 n" L9 c4 z8 o1 y etc)0 u1 l+ ]$ C: ^3 J) }: [1 V
VALUES9 u$ i: L/ p8 v9 ?2 o" U
('$val1',8 |: }# L' x6 D. t
'$val2',
, n" C) G. {' c; \+ ` etc)";
. B( ~+ z3 ?' F% C //echo "$qry";
) z+ `! }" l/ v $qry_str .= "$qry;\n";! o5 F1 l/ e8 T4 s
}, U& I2 j6 d6 q- |& `
" t( Q1 A$ U. { K: F$ u解决方案:- }) [ }/ X! [3 E! m" \1 j% N: Q
% r1 j e2 y! t* [9 H7 k k5 Y( h: x; v
; O( {# M" x5 B* n: y2 y* D 在sqlsrv_query大于536的sql字符串上,将截断为65536个字符。尝试使用mssql_query查询或将查询写入文件,然后从sqlcmd工具执行查询 |
|
|
|
|
|