简单的Oracle查询:文字与格式字符串不匹配 [英] Simple Oracle query: literal does not match format string

查看:2783
本文介绍了简单的Oracle查询:文字与格式字符串不匹配的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想在Oracle中执行一个简单的函数.签名定义如下:

I want to execute a simple function in Oracle. The signature is defined as follows:

CREATE OR REPLACE FUNCTION NewCaseListForValidation
(
                             p_fromDate in DATE,
                             p_toDate in DATE,
                             p_rowCount in INT
)
RETURN
                             SYS_REFCURSOR
IS
                             return_value SYS_REFCURSOR;
...

我应该能够执行以下操作:

I should be able to execute it with:

var rc refcursor
exec :rc := newcaselistforvalidation('2010-01-01','2011-01-01',100);
print :rc

但是当键入"newcaselistforvalidation('2010-01-01','2011-01-01',100)"时,我得到:

But when typing "newcaselistforvalidation('2010-01-01','2011-01-01',100)", I get:

ERROR at line 1:
ORA-01861: literal does not match format string
ORA-06512: at line 1

我在Google上搜索了一下,似乎无法弄清楚以正确的格式键入日期.谁能帮我吗?

I googled a bit and it seems I can't figure out to type the date in a correct format. Can anyone help me?

推荐答案

在Oracle中查询NLS_PARAMETERS,您将能够查看数据库接受日期的格式.

Query NLS_PARAMETERS in Oracle- you will then be able to see what format your DB is accepting dates in.

但是通常我使用to_date()函数:

Typically however i use the to_date() function:

to_date('01-01-2011','DD-MM-YYYY');

在英国输入我的日期.

这篇关于简单的Oracle查询:文字与格式字符串不匹配的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆