delphi2010下使用TMyQuery调用mysql的存储过程传时间参数的问题

wuwenzhe wuwenzhe 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
1、MySQL的存储过程定义为:
BEGIN
SELECT * FROM
(select 派单时间,派单人,流水号,车辆单位,车牌号码,
cast(GPS北斗维修派单 as DECIMAL) as GPS北斗维修派单
from all_in
WHERE 派单时间
BETWEEN strBeginTime AND strEndTime
ORDER BY 派单时间 DESC)t3
union all
SELECT * FROM
(select
cast('合计' as CHAR) as 派单时间,
cast('' as CHAR) as 派单人,
cast('' as CHAR) as 流水号,
cast('' as CHAR) as 车辆单位,
cast('' as CHAR) as 车牌号码,
sum(GPS北斗维修派单)
from all_in
WHERE 派单时间
BETWEEN strBeginTime AND strEndTime
ORDER BY 派单时间 DESC)t4;
END

2、存储过程的参数定义为:in strBeginTime varchar(20),in strEndTime varchar(20)

3、delphi代码中的调用,是通过TMyQuery调用的,代码如下:
with myqry13 do
begin
Close;
SQL.Clear;
SQL.Add('call p_allSend(:strBegin, :strEnd)');
Params.CreateParam(ftDateTime,'strBegin',ptInput);
Params.CreateParam(ftDateTime,'strEnd',ptInput);
Params[0].Value := StrToDateTime(StrBeginTime);
Params[1].Value := StrToDateTime(strEndTime);
ShowMessage('3');
Open;
ShowMessage('4');
Active;
end;
其中时间是从datepicker上获得并经过变换得来的datetime值。
strBeginTime := DateTimeToStr(trunc(dtp1.DateTime)) + ' 0:00:00';
strEndTime := DateTimeToStr(trunc(dtp2.DateTime)) + ' 23:59:59';

4、错误显示为showmessage(3)以后,就报错,截图如下:

谁能告诉我为什么StrToDateTime没有起到把string转换为datetime的作用?
...全文

相关推荐

Delphi XE10.3通过MyDac控件连接MySql数据库

在本文中,我们将深入探讨如何使用Embarcadero Delphi XE10.3中的MyDAC控件连接到MySQL数据库。

alicates

MyDAC v5.10源文件包在Delphi中连接MySQL的安装配置与实战指南

在Delphi开发中,连接MySQL常面临驱动兼容与性能瓶颈。相比ODBC和dbExpress的中间层转换开销,基于MySQL原生客户端协议的数据库访问组件能更高效地处理数据类型与SQL特性。MyDAC作为老牌组件,其源文件包虽无一键安装向导,但通过合理的目录配置和包编译,可无缝集成到IDE。本文从组件选型原理讲起,详细说明源文件包的结构、手工安装步骤,并演示TMyConnection、TMyQuery等核心组件的实战用法。针对高并发场景,还介绍了连接池参数调优、预编译语句及批量写入技巧,帮助开发者建立从连

Huigr王

MyDAC 5.00.1.7 完整源码:Delphi/C++Builder 下免依赖直连 MySQL 的开发套件

提供 MyDAC v5.00.1.7 全量源代码,支持 Delphi、C++Builder、Delphi for .NET 和 Kylix 环境,实现原生级 MySQL 数据库接入。无需 BDE、ODBC 或第三方运行时依赖,既可通过纯 TCP/IP 协议直连 MySQL 服务端,也兼容官方 libmysql.dll 客户端库。内置 TMyConnection、TMyQuery、TMyTable 等核心可视化组件,覆盖连接管理、SQL 执行、事务控制、数据导入导出(TMyLoader/TMyDump)、结构

flower

Delphi 12.3下MyDAC直连MySQL:源码编译与调优实践

在数据库应用开发中,连接层始终是影响工程效率与稳定性的关键环节。当Delphi老项目面临数据库升级,传统ODBC或DBX驱动常因认证协议变化而失效,此时原生直连组件成为优选方案。MyDAC作为Delphi环境下的MySQL专用数据访问组件,通过自实现原生协议绕开客户端依赖,在TMyConnection、TMyQuery等核心类中封装了连接管理、参数化查询与事务控制。掌握其源码编译流程、连接参数调优及运行期调试技巧,能显著降低迁移成本,解决MySQL 8认证、字符集乱码等高频问题。本文从组件结构出发,结合工程

东予薏米

delphi7使用MYDAC链接数据库源码

通过调用"TMyQuery.Open"方法执行查询,结果会自动填充到TMyQuery的数据集中。5. **数据操作与显示** 可以使用TDataSource和DBGrid等组件来显示查询结果。

sinat_30494791
评论 2
收藏 已收藏
分享
返回顶部
wuwenzhe
数据库相关 2,508 成员 88,437 内容