thinkphp MySQL 数据库
thinkphp从excel读取数据插入mysql,生成sql语句正确,单独能执行,用$model->execute($sql),执行时,凡是字符串都只插入了首字符。生成sql语句是这样 insert into table values('','ABCDEF'),没有列举完,只是举例,单独执行插入成功,在thinkphp里面执行,字符串ABCDEF只插入了一个A。在tp里面打印出最后执行的sql语句也是对的
回复讨论(解决方案)
直接执行也是同样的结果吗? 我本来还以为会是数据库字段类型和长度限制了 要是直接执行也这样 那得追踪到TP的最终mysql_query的地方检察mysql_query之前的$sql
直接执行也是同样的结果吗? 我本来还以为会是数据库字段类型和长度限制了 要是直接执行也这样 那得追踪到TP的最终mysql_query的地方检察mysql_query之前的$sql
能说详细一些吗?谢谢你
直接执行也是同样的结果吗? 我本来还以为会是数据库字段类型和长度限制了 要是直接执行也这样 那得追踪到TP的最终mysql_query的地方检察mysql_query之前的$sql
能说详细一些吗?谢谢你
其实是你这边应该描述的详细一点
没有无解的"灵异问题" 一定是哪里有问题
依我浅见,或者是TP对SQL语句的处理出了问题,或者是mysql的数据结构/类型有问题. 没能想出其他可能
所以先试试手动写SQL语句直接在mysql执行, 看看结果,你现在说插入成功,插入后的结果呢?也是想要的吗?
如果手动插入结果正确 那就在TP框架内顺藤摸瓜找到TP插入mysql的语句 将此时的SQL语句打印出来 看跟你手写的SQL语句是否一致.
然后才好进一步看....
当然,可能有大神遇到过这种问题能一下指出原因 不过在此之前可以先试试这样找找原因
其实是你这边应该描述的详细一点
$res = $order_insert->execute($sql);
echo $order_insert->getLastSql();
在执行execute的时候,$sql是正常的,复制出来单独执行,结果也是想要的。 当执行完,用$order_insert->getLastSql();获取最后一条执行的sql语句,sql语句也是正常的,对这个sql字符串直接复制到execute执行也是能正常插入数据,就是当做参数执行时,出现上面说的情况
你怎么不在当做参数执行时,也看一下 $order_insert->getLastSql() 呢 其实是你这边应该描述的详细一点
$res = $order_insert->execute($sql);
echo $order_insert->getLastSql();
在执行execute的时候,$sql是正常的,复制出来单独执行,结果也是想要的。 当执行完,用$order_insert->getLastSql();获取最后一条执行的sql语句,sql语句也是正常的,对这个sql字符串直接复制到execute执行也是能正常插入数据,就是当做参数执行时,出现上面说的情况
你怎么不在当做参数执行时,也看一下 $order_insert->getLastSql() 呢
看了的,就是把组装出来的sql语句当做参数给execute,然后执行后,再获取最后一条执行的sql语句,打印出来是完整的sql语句 insert into table value('','ABCDEF');这样的语句,但是数据库的表里面对应ABCDEF这个字符只插入了一个字符A
这个会不会是数据库的字段问题啊,直接把sql在mysql执行还会这样?
这个会不会是数据库的字段问题啊,直接把sql在mysql执行还会这样?
不是字段问题哈,直接执行插入是正常的!
已经找到问题,是读取excel的时候,要加一句setOutputEncoding

TheSecretTokeEpingAphp-PowerEdwebSiterUnningSmoothlyShyunderHeavyLoadInVolvOLVOLVOLDEVERSALKEYSTRATICES:1)emplactopCodeCachingWithOpcachingWithOpCacheToreCescriptexecution Time,2)使用atabasequercachingCachingCachingWithRedataBasEndataBaseLeSendataBaseLoad,3)

你应该关心DependencyInjection(DI),因为它能让你的代码更清晰、更易维护。1)DI通过解耦类,使其更模块化,2)提高了测试的便捷性和代码的灵活性,3)使用DI容器可以管理复杂的依赖关系,但要注意性能影响和循环依赖问题,4)最佳实践是依赖于抽象接口,实现松散耦合。

是的,优化papplicationispossibleandessential.1)empartcachingingcachingusedapcutorediucedsatabaseload.2)优化的atabaseswithexing,高效Quereteries,and ConconnectionPooling.3)EnhanceCodeWithBuilt-unctions,避免使用,避免使用ingglobalalairaiables,并避免使用

theKeyStrategiestosiminificallyBoostphpapplicationPermenCeare:1)useOpCodeCachingLikeLikeLikeLikeLikeCacheToreDuceExecutiontime,2)优化AtabaseInteractionswithPreparedStateTemtStatementStatementSandProperIndexing,3)配置

aphpdepentioncontiveContainerIsatoolThatManagesClassDeptions,增强codemodocultion,可验证性和Maintainability.itactsasaceCentralHubForeatingingIndections,因此reducingTightCightTightCoupOulplingIndeSingantInting。

选择DependencyInjection(DI)用于大型应用,ServiceLocator适合小型项目或原型。1)DI通过构造函数注入依赖,提高代码的测试性和模块化。2)ServiceLocator通过中心注册获取服务,方便但可能导致代码耦合度增加。

phpapplicationscanbeoptimizedForsPeedAndeffificeby:1)启用cacheInphp.ini,2)使用preparedStatatementSwithPdoforDatabasequesies,3)3)替换loopswitharray_filtaray_filteraray_maparray_mapfordataprocrocessing,4)conformentnginxasaseproxy,5)

phpemailvalidation invoLvesthreesteps:1)格式化进行regulareXpressecthemailFormat; 2)dnsvalidationtoshethedomainhasavalidmxrecord; 3)


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

SublimeText3 Linux新版
SublimeText3 Linux最新版

螳螂BT
Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

禅工作室 13.0.1
功能强大的PHP集成开发环境

适用于 Eclipse 的 SAP NetWeaver 服务器适配器
将Eclipse与SAP NetWeaver应用服务器集成。

VSCode Windows 64位 下载
微软推出的免费、功能强大的一款IDE编辑器