加入收藏 | 设为首页 | 会员中心 | 我要投稿 云计算网_泰州站长网 (http://www.0523zz.com/)- 视觉智能、AI应用、CDN、行业物联网、智能数字人!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

来自外部应用程序的Access数据库中的日期字段的月份名称(C#)

发布时间:2021-01-08 07:28:36 所属栏目:MsSql教程 来源:网络整理
导读:我想在C#中在运行时填充下拉列表.我在Access 2003数据库中有一个日期/时间字段(例如,01/05/2000).我希望在运行时的下拉列表中有月份名称(即1月,2月,…). SELECT DISTINCT MonthName(Month(DATE_OF_BOOKING)) AS MNTH FROM TRAVEL_DETAILS WHERE YEAR(DATE_

我想在C#中在运行时填充下拉列表.我在Access 2003数据库中有一个日期/时间字段(例如,01/05/2000).我希望在运行时的下拉列表中有月份名称(即1月,2月,…).

SELECT DISTINCT MonthName(Month(DATE_OF_BOOKING)) AS MNTH 
    FROM TRAVEL_DETAILS WHERE YEAR(DATE_OF_BOOKING)='2008'

上面的查询工作正常,我直接从Access运行它,
但是,当我试图从C#中的OledbCommand对象运行它时,它说

Undefined function ‘MonthName’ in expression.

解决方法

来自社交msdn thread的文字:

Custom user-written VBA functions as
well as many built-in VBA language
functions are executed by Microsoft
Access when embedded in a SQL query.
Unfortunately the functions available
to the Jet database engine are limited
(when executed via ADO,ADO.NET,
etc.). You can find a list of those
available in the following MS KB
article:

How to configure Jet 4.0 to prevent unsafe functions from running in Access 2003.

编辑:使用Format()方法.

SELECT DISTINCT  format(DATE_OF_BOOKING,'MMMM') 
   AS MNTH FROM TRAVEL_DETAILS WHERE YEAR(DATE_OF_BOOKING)='2008'

(编辑:云计算网_泰州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读