默认值是这样的
activated_date.date_value为“激活日期”, completed_date.date_value为“完成日期”,
2015-11-25 05:34:57 2015-11-25 05:35:03
如何以MM / dd / YYYY格式传递包体的日期值 这是包体
pkg_campaign_interactions_qty.getCampaignIncomingQty(Obj.object_id,TO_DATE(TO_CHAR(activated_date.date_value, 'MM / DD / YYYY'), 'MM / DD / YYYY'),TO_DATE(TO_CHAR(completed_date.date_value,'MM / DD / YYYY'),'MM / dd / YYYY'))作为“互动”
我尝试将此格式的日期值传递给ORA-01843:不是有效月份
to_date(activated_date.date_value,'MM/dd/YYYY') as "Activated Date",to_date(completed_date.date_value,'MM/dd/YYYY') as "Completed Date",
这是我的包裹身体
CREATE OR REPLACE PACKAGE "PKG_CAMPAIGN_INTERACTIONS_QTY" as FUNCTION getCampaignIncomingQty(tableName IN VARCHAR2,ActivatedDate IN DATE,CompletedDate IN DATE) RETURN NUMBER end PKG_CAMPAIGN_INTERACTIONS_QTY;
/
答案 0 :(得分:2)
您收到的错误消息表示您尝试转换为日期的值没有指定格式。
char a[5]={"st","nd","rd","th","th"};
只有当activation_date.date_value是一个包含MM / dd / YYYY格式的日期的字符串时,才会给你一个日期。
不是有效月份表示字符串第一部分的值不是1到12之间的数字。
根据您提供的样本,您应该使用:
#include <iostream>
#include <stdio.h>
#include <string>
using namespace std;
int main(){
int value=1;
int ivalue;
int sum=0;
int average;
int x,y;
int max=INT_MIN;
int min=INT_MAX;
int count=0;
int maxPos=1;
int minPos=1;
string A[5]={"st","nd","rd","th","th"};
cout << "Enter loop limit : "; cin >> value ;
cout<<endl;
cout<<endl;
for( x=0;x<=value-1;x++){
for (x=0;x<=A[5];x++)
cout << "Enter "<<x+1<<A[0]<<" value : "; cin >> ivalue;
sum=sum+ivalue;
count++;
if (ivalue>max)
{
max=ivalue;
maxPos = count;
}
if (ivalue<min)
{
min=ivalue;
minPos = count;
}
}
cout<<endl;
cout<<endl;
cout << "Sum of entered values = " <<sum <<endl;
cout << "Average value = "<< sum/value<<endl;
cout << "Minimum value = " << min << endl;
cout << "Minimum value entered at index :" << minPos << endl;
cout << "Maximum value = " << max<< endl;
cout << "Maximum value entered at index : " << maxPos<< endl;
}
因此,如果您的函数具有date类型的输入参数,则可以通过以下方式调用它:
strcpy(szDirPath, pszParentDir);
strcat(szDirPath, "\\*.*");
hFindDir = FindFirstFile(szDirPath, &FindFileDataDir);