[转]access 标准表达式中数据类型不匹配

好久没有用access,今儿遇到一个特别让人无语的问题:

access数据表的Date/Time类型的字段,假如字段名为dtime:
如果直接用dtime=‘2013/9/6 10:50:21’,sql语句会报错--》“标准表达式中数据类型不匹配”,
如果用dtime like ‘%2013/9/6 10:50:21%’,sql语句依旧会报错--》“标准表达式中数据类型不匹配”,
网上还有哥们儿说了,日期用# #如:dtime=#2013/9/6 10:50:21%#,dtime like #2013/9/6 10:50:21%#,额,感觉不符合sql语法,还是尝试了,依旧报错。
那么,说明Date/Time类型的字段应该对应的是.net框架的DateTime类型,故,应穿进去一个DateTime类型的结构体参数,如下:
sql:……[email protected]……,参数穿进去new OleDbParameter("@dtime", xdtime),xdtime是一个DateTime类型的结构体,这应该是没错了吧?!
结果,如果只有一条sql语句用到Date/Time类型的字段的话,是可以通过,并且正常运行的,但是第二条,第三条……
仍旧报 “标准表达式中数据类型不匹配”,
额,问题是这样解决的,(至今,我仍不知道原因,如果有朋友知道了为什么要这样做,烦请告知哈):
sql:……[email protected]……,参数穿进去new OleDbParameter("@dtime", Convert.ToDateTime(xdtime.ToString()));这样就可以了,
也就是传给sql的Date/Time类型的字段的参数要先.ToString() 转化为字符串,然后Convert.ToDateTime()在转化为DateTime结构体.

转自:http://blog.csdn.net/lcawen88/article/details/11200155?utm_source=tuicool&utm_medium=referral

时间: 2024-10-07 09:44:31

[转]access 标准表达式中数据类型不匹配的相关文章

C#使用OleDB操作ACCESS插入数据时提示:标准表达式中数据类型不匹配。

OleDbParameter param = new OleDbParameter("" + dc.ColumnName, dc.DataType); param.IsNullable = dc.AllowDBNull; if (dr_src.Table.Columns.Contains(dc.ColumnName)) { if (!(dr_src[dc.ColumnName] is System.DBNull)) { if (dc.DataType.FullName.Equals(&

(三)Themeleaf标准表达式之——文字(literals)

2.2 文字(literals) 模板名称:text.html 2.2.1 文本(text literals)(放在 单引号 里面,可以是任意字符) <p> Now you are looking at a <span th:text="'working web application'">template file</span>. </p> 2.2.2 数字(number literals) <p>The year is &

Java中的switch语句后面的控制表达式的数据类型

Java中的switch语句后面的控制表达式的数据类型 1.byte 2.char 3.short 4.int 5.枚举类型 6.Java 7允许java.lang.String类型

利用栈判断输入的表达式中的括号是否匹配(假设只含有左、右括号)

利用栈判断输入的表达式中的括号是否匹配(假设只含有左.右括号) bool Match(char exp[],int n) { int i=0; char e; bool match=true; SqStack *st; InitStack(st);//初始化栈 while(i<n && match)//扫描exp中所有字符 { if(exp[i]=='(')//当前字符为左括号,将其进栈 Push(st,exp[i]); else if(exp[i]==')')//当前字符为右括号

STL笔记(6)标准库:标准库中的排序算法

STL笔记(6)标准库:标准库中的排序算法 标准库:标准库中的排序算法The Standard Librarian: Sorting in the Standard Library Matthew Austern http://www.cuj.com/experts/1908/austern.htm?topic=experts 用泛型算法进行排序    C++标准24章有一个小节叫“Sorting and related operations”.它包含了很多对已序区间进行的操作,和三个排序用泛型

[整理]标准C中的"布尔"类型

C语言提供的基本数据类型:char , int ,float, double. 为什么没有其他语言中常见bool布尔数据类型呢? 1.在标准C语言(ANSI C)中并没有bool数据类型 标准C中,表达式的值0为假,非0为真.一般,为了提高代码可阅读性,自定义3个int类型的宏: #include <stdio.h> #define bool int #define false 0 #define true 1 int main(){ bool result = true;//true的值实际

OLDB读取excel的数据类型不匹配的解决方案(ZT)

1 引言  在应用程序的设计中,经常需要读取Excel数据或将Excel数据导入转换到其他数据载体中,例如将Excel数据通过应用程序导入SQL Sever等数据库中以备使用.笔者在开发“汽车产业链ASP协同商务平台”中遇到了类似需求.某汽车整车生产企业需要将其车辆发车信息发布到汽车产业链平台上去,其数据为内部ERP系统生成的Excel数据表,用户首先将该数据表上传至汽车产业链平台,平台将此Excel数据读取导入到平台内部的SQL Sever数据库中,以供其它应用使用.汽车产业链平台的开发使用的

No.5 表达式中的陷阱

1. 关于字符串的陷阱 JVM对字符串的处理 String java = new String("Java"); 创建了几个对象? 2个."Java"直接量对应的字符串对象:new String()构造器返回的字符串对象 java.intern() 可以字符串池中的直接量对象. 字符串及基本类型的包装类,Java允许通过直接量的方式来创建对应的Java对象:除此之外,简单的算术表达式.连接计算(编译时可以确定具体值)也可以直接创建对应的Java对象 字符串直接量,J

标准C++中的string类的用法总结【转】

转自(略改动):http://www.cnblogs.com/xFreedom/archive/2011/05/16/2048037.html 更全面新颖的说明见:http://www.cplusplus.com/reference/string/string/  说明: 1.size_t 是个unsigned integral type.  2.文中 c字符数组 是指末尾不带'\0'的,注意与 c字符串 的区别 相信使用过MFC编程的朋友对CString这个类的印象应该非常深刻吧?的确,MFC