Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共7 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:[求助]SQLReplaceFor中的表达式

1楼
jyh7081 发表于:2024/4/17 8:49:00
蓝老师好!
下面的代码,是想更新[正确率历史]列为空的值,用本行的[生成日期]、[平均正确率]、[正值正确率]、[负值正确率]的列值拼接,拼接成“2024-04-15(63.89/86.67/47.62)”样的格式~
运行代码提示“类型 生成日期 不是已定义的系统类型。”,这种情况应该怎样修改?
谢谢!

Dim cnt As Integer
cnt = DataTables("趋势汇总").SQLReplaceFor("正确率历史","Convert([生成日期],'System.String') & '(' & [平均正确率] & '/' & [正值正确率] & '/' & [负值正确率] & ')'", "正确率历史 is null", True)
Output.Show("合计更新了" & cnt & "条记录的折扣!")
2楼
有点蓝 发表于:2024/4/17 9:03:00
什么数据库?
3楼
jyh7081 发表于:2024/4/17 9:13:00
SQLserver

4楼
有点蓝 发表于:2024/4/17 9:57:00
DataTables("趋势汇总").SQLReplaceFor("正确率历史","Convert(nvarchar(10),[生成日期],120) + '(' + [平均正确率] + '/' + [正值正确率] + '/' + [负值正确率] + ')'", "正确率历史 is null", True)

不同数据库的函数用法不一样的:https://www.baidu.com/s?wd=SqlServer%20Convert
5楼
jyh7081 发表于:2024/4/17 10:11:00
提示:

图片点击可在新窗口打开查看此主题相关图片如下:截屏图片 (3).jpg
图片点击可在新窗口打开查看

6楼
有点蓝 发表于:2024/4/17 10:40:00
到后台数据库,里看上面哪些列是ntext,改为nvarchar(max).

另外看看那些是数值列,也要转换为字符串:https://www.baidu.com/s?wd=SqlServer%20Convert
7楼
jyh7081 发表于:2024/4/17 11:57:00
好了~  谢谢!

Dim cnt As Integer
cnt = DataTables("趋势汇总").SQLReplaceFor("正确率历史", "Convert(nvarchar(10),[生成日期],120) + '(' + CAST([平均正确率] AS nvarchar) + '/' + CAST([正值正确率] AS nvarchar) + '/' + CAST([负值正确率] AS nvarchar) + ')'", "正确率历史 is null", True)
Output.Show("合计更新了" & cnt & "条记录的折扣!")
共7 条记录, 每页显示 10 条, 页签: [1]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .03125 s, 2 queries.