C#&Oracle winform向数据库中插入时间
2022/1/13 19:08:14
本文主要是介绍C#&Oracle winform向数据库中插入时间,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
记得零散,凑合看吧先
目的是向数据库中保存当前系统时间。
经常遇到的报错是缺失逗号,最终排查发现问题出在SQL语句。
一开始表结构里字段的类型设为timestamp和date来着,但是考虑到C#中System.Datetime.Now的格式也许不一致而且我不熟悉应该怎么操作,于是干脆把字段类型设置为VARCHAR2(20),C#中也将时间转换为字符串进行保存了。
通过以下的各种尝试最终确定了是我没有写外层的单引号(SQL语句中字符串的单引号)导致的错误
插入时间时的几个试验和对应的报错信息
//SQLString = $"insert into A_DTST2 values({BeginTime},8,9)";//缺失逗号 //SQLString = "insert into A_DTST2 values(啥玩意,8,9)";//列在此处不允许 //SQLString = "insert into A_DTST2 values('啥玩意',8,9)";//System.InvalidOperationException:“集合已修改;可能无法执行枚举操作。” //但能添加 //SQLString = "insert into A_DTST2 values('what',8,9)";//能添加 //String str = "哼"; //SQLString = $"insert into A_DTST2 values({str},8,9)";//列在此处不允许 //String str = "what"; //SQLString = $"insert into A_DTST2 values('{str}',8,9)";//列在此处不允许,也许是单引号双引号的问题。就是,外层+单引OK了 //DbHelperOra.ExecuteSql(SQLString);
小总结一下
- 有关SQL语句数据库操作的调试,应当现在Oracle中,用SQL语句测试再去C#中调试,这样可以避免语句错误导致的功能无法实现
- 功能实现最大,不用管啥类型,甚至可以先不管啥效率,先做出来再说!先做到再做好,什么时候在哪都适用
这篇关于C#&Oracle winform向数据库中插入时间的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2022-03-01沐雪多租宝商城源码从.NetCore3.1升级到.Net6的步骤
- 2024-11-15C#中怎么从PEM格式的证书中提取公钥?-icode9专业技术文章分享
- 2024-11-14云架构设计——如何用diagrams.net绘制专业的AWS架构图?
- 2024-05-08首个适配Visual Studio平台的国产智能编程助手CodeGeeX正式上线!C#程序员必备效率神器!
- 2024-03-30C#设计模式之十六迭代器模式(Iterator Pattern)【行为型】
- 2024-03-29c# datetime tryparse
- 2024-02-21list find index c#
- 2024-01-24convert toint32 c#
- 2024-01-24Advanced .Net Debugging 1:你必须知道的调试工具
- 2024-01-24.NET集成IdGenerator生成分布式全局唯一ID