别人说这样的语句不可以

jdhlowforever 2010-11-03 05:20:42
string strsql="select * from cmr_productcolor where id in(select pro_color from cmr_T_ProductBase where pro_gdscode='"+gds+"')";


这里读出来的 pro_color 是 '1,2,3' 是字符型

数据库调试出现
在将 varchar 值 '1,2,3' 转换成数据类型 int 时失败。

我又不想分开来读
我怎样才能把 pro_color 转化成可以执行的呢?

谢谢!

...全文
271 22 打赏 收藏 转发到动态 举报
写回复
用AI写文章
22 条回复
切换为时间正序
请发表友善的回复…
发表回复
Thinking-7 2010-11-04
  • 打赏
  • 举报
回复
写个split分割函数,
不是几分钟的事情吗?
以后类似问题都可以解决了,
给split函数定义一个分割符号,
你先按什么符号分割就按什么分割,多爽,
有必要再这纠结吗?
jdhlowforever 2010-11-04
  • 打赏
  • 举报
回复
[Quote=引用 16 楼 chen_ya_ping 的回复:]

pro_color那 你直接把这个字段设置为int型
[/Quote]

不行呢。其它地方还要用到这个。。所以字段类型不能变

看样子是没有转化的方法了
chen_ya_ping 2010-11-04
  • 打赏
  • 举报
回复
pro_color那 你直接把这个字段设置为int型
__还是少年 2010-11-04
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 whb147 的回复:]
很明显不可以,类型不匹配

你的id是int
pro_color 是varchar
[/Quote]

应该是这个问题吧
beyond_me21 2010-11-04
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 kkbac 的回复:]

可以这样写.
SQL code
select * from cmr_productcolor where charindex(',' + ltrim(id) + ',', (select ',' + pro_color + ',' from cmr_T_ProductBase where pro_gdscode='"+gds+"')) > 0";
[/Quote]
顶这个
hookyzlr 2010-11-04
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 karascanvas 的回复:]
引用 11 楼 hookyzlr 的回复:

用cast转换应该是可以的。你检查下pro_color的值是不是1,2,3之类的,每个数字之后是不是有空格?
如果你定义成varchar类型,就有可能会出现这个问题


"1,2,3" 这样的字符串能用cast转成整数才怪了。
[/Quote]
额,那是我理解错了,如果是"1,2,3"这种肯定不行。我以为是'1','2','3'这种类型的呢。汗了
种草德鲁伊 2010-11-04
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 hookyzlr 的回复:]

用cast转换应该是可以的。你检查下pro_color的值是不是1,2,3之类的,每个数字之后是不是有空格?
如果你定义成varchar类型,就有可能会出现这个问题
[/Quote]

"1,2,3" 这样的字符串能用cast转成整数才怪了。
hookyzlr 2010-11-04
  • 打赏
  • 举报
回复
用cast转换应该是可以的。你检查下pro_color的值是不是1,2,3之类的,每个数字之后是不是有空格?
如果你定义成varchar类型,就有可能会出现这个问题
种草德鲁伊 2010-11-04
  • 打赏
  • 举报
回复
搜索关键字 sql exec sp_executesql
jdhlowforever 2010-11-04
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 claire448943695 的回复:]

strsql="select * from cmr_productcolor where id in(select CAST(pro_color as int) from cmr_T_ProductBase where pro_gdscode='"+gds+"')";

用CAST强制将varchar转成int
[/Quote]

这个方法行不通,我测试了。没用,如果有用的话,那是最简单的方法了。。
rabbit5 2010-11-04
  • 打赏
  • 举报
回复
只是个想法,用动态sql语句做拼接
jdhlowforever 2010-11-04
  • 打赏
  • 举报
回复
[Quote=引用 20 楼 mayanly 的回复:]

引用 14 楼 beyond_me21 的回复:
引用 7 楼 kkbac 的回复:

可以这样写.
SQL code
select * from cmr_productcolor where charindex(',' + ltrim(id) + ',', (select ',' + pro_color + ',' from cmr_T_ProductBase where pro_g……
[/Quote]

这样是可以,,但我想问问有没有能够转化的东东。。嘎嘎
直接转换 varchar 转 int
mayanly 2010-11-04
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 beyond_me21 的回复:]
引用 7 楼 kkbac 的回复:

可以这样写.
SQL code
select * from cmr_productcolor where charindex(',' + ltrim(id) + ',', (select ',' + pro_color + ',' from cmr_T_ProductBase where pro_gdscode='"+gds+"')) > 0";

……
[/Quote]这个可以试一下
hubeiliuyaping 2010-11-04
  • 打赏
  • 举报
回复
就是来看看
Claire448943695 2010-11-03
  • 打赏
  • 举报
回复
strsql="select * from cmr_productcolor where id in(select CAST(pro_color as int) from cmr_T_ProductBase where pro_gdscode='"+gds+"')";

用CAST强制将varchar转成int
kkbac 2010-11-03
  • 打赏
  • 举报
回复
可以这样写.
select 	* from 	cmr_productcolor where charindex(',' + ltrim(id) + ',', (select ',' + pro_color + ',' from cmr_T_ProductBase where pro_gdscode='"+gds+"')) > 0";

jdhlowforever 2010-11-03
  • 打赏
  • 举报
回复
总的来说。。看样子还是要分开写。。还是不能这样写。........
flyerwing 2010-11-03
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 juge001 的回复:]
C# code
string strsql="select * from cmr_productcolor where id in(select pro_color from cmr_T_ProductBase where pro_gdscode="+gds+")";
去掉两个单引号
[/Quote]
linq搞那个也是很好能的了,等到你做报表就知道了.
baihualin1983 2010-11-03
  • 打赏
  • 举报
回复
用存储过程吧,先把“pro_color ”读出来转换成整形然后再执行select * from cmr_productcolor where id in..
whb147 2010-11-03
  • 打赏
  • 举报
回复
写个自定义函数切分'1,2,3' 为
1
2
3
即可
加载更多回复(2)
内容概要:本文系统研究了基于W-GAN(Wasserstein生成对抗网络)的光伏出力场景生成方法,并提供了完整的Python代码实现。该方法充分利用W-GAN在捕捉复杂数据分布方面的优势,能够生成具有高度真实性与时序一致性的光伏发电功率场景,有效解决了传统场景生成方法在处理非线性、非平稳光伏数据时存在的模式坍塌与分布偏差问题。研究内容涵盖网络架构设计、梯度惩罚机制引入以保障训练稳定性、损失函数优化及生成样本质量评估等关键环节,生成的场景可用于电力系统规划、运行调度、储能配置及风险评估等任务,尤其适用于高比例可再生能源接入背景下的不确定性建模需求。; 适合人群:具备一定Python编程能力、深度学习基础理论知识的研究生、科研人员,以及从事新能源发电预测、电力系统优化调度等相关领域的工程技术人员。; 使用场景及目标:①实现光伏出力不确定性建模,生成满足统计特性的典型与极端功率场景;②支撑含光伏的微电网、主动配电网的优化调度、可靠性分析与韧性评估;③作为深度学习在能源时序数据生成领域的一个典型案例,服务于教学演示与学术研究。; 阅读建议:建议结合所提供的Python代码进行动手实践,重点理解W-GAN中判别器(Critic)结构、梯度惩罚项(Gradient Penalty)的实现原理,并通过可视化手段对比原始数据与生成数据的分布特征,进一步可尝试将其与传统GAN、VAE或DDPM等生成模型在场景多样性、保真度方面进行横向比较。
代码转载自:https://pan.quark.cn/s/a4b39357ea24 **C#反编译工具dnSpy的详细明** dnSpy是一款专门用于C#编程语言的强效反编译器,其具备广泛的功能,涵盖了反编译、调试以及代码编辑等多个方面。这款工具凭借其便捷的操作性和丰富的特性,广泛受到开发者和逆向工程从业者的青睐。本文将详细研究dnSpy的关键功能、运作机制以及其在软件开发中的实际应用。 dnSpy的关键功能之一是反编译。它能够将已编译的.NET程序集(例如DLL或EXE文件)还原为源代码形态,从而让开发者得以审视并掌握应用程序的内部构造。借助IL(中间语言)反编译技术,dnSpy能够生成与原始C#代码高度相似的代码,以便用户进行阅读和分析。不仅如此,dnSpy还兼容其他.NET语言,例如VB.NET和F#。 dnSpy的调试功能是其另一显著优势。它内含了一个功能强大的调试器,使用户可以在反编译后的代码中设置断点,检查并调整变量值,以及追踪代码的执行路径等。这对于故障排除、学习他人代码或进行安全研究都极具帮助。同时,dnSpy支持模块和程序集的热替换,即在调试期间可以即时更新代码,而无需重启应用程序。 另外,dnSpy提供了代码编辑功能,用户可以直接在反编译的代码上进行修改,并将这些更改保存回原始程序集。这种功能对于修正错误、优化代码或进行软件逆向工程研究都极为便利。 除了上述核心功能,dnSpy还拥有卓越的扩展性。它支持插件架构,允许开发者自定义并增加新的功能,如语法高亮显示、代码格式化工具等。这使得dnSpy能够根据用户的个性化需求进行定制,进一步提升了其灵活性和实用性。 在提供的压缩文件中,我们可以发现若干配置文件(例如dnSpy.exe.confi...
内容概要:本报告系统分析了2026—2031年中国生成式AI行业的发展现状、竞争格局与未来趋势。中国生成式AI市场已从“百模大战”进入“应用与算力双轮驱动”阶段,2025年核心市场规模约1,200亿元,用户规模达5.15亿,预计2031年将突破8,000亿元,复合增速约37%。产业链呈现“上游算力与数据、中游模型、下游应用”的结构,价值分布向高毛利率的AI芯片和垂类应用倾斜。DeepSeek、阿里通义等企业在开源、推理性能和生态构建方面引领创新,推动API成本大幅下降。竞争格局形成以字节、阿里、百度、腾讯、DeepSeek为首的第一梯队,市场集中度高,C端CR3达72%。未来趋势指向AI Agent规模化、多模态融合、视频生成爆发及“水电煤”式基础设施化。; 适合人群:关注人工智能产业发展的政府决策者、企业战略负责人、投资机构分析师、科技创业者及高校研究人员。; 使用场景及目标:①把握中国生成式AI市场整体规模、增长潜力与结构性机会;②理解产业链价值分配与核心技术演进方向;③识别头部企业竞争策略与商业模式优劣;④制定投资、创业或企业数字化转型决策提供数据支持与战略参考。; 阅读建议:本报告数据截至2026年6月,2026—2031年数据为预测测算值,使用者应结合动态政策、技术突破与市场竞争变化审慎研判,重点关注风险提示与分主体落地建议,以提升决策前瞻性与可行性。

62,272

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧