这是我的错误,我正在使用best-in-place,我希望它更新我的sample\u qty列此表没有id列,因此我对其进行了解决,但即使这样做,我仍然会收到此错误。
ActiveRecord::StatementInvalid(OCIRROR:ORA-01830:日期格式图片在转换整个输入字符串之前结束:选择“SAMPLE\U QTY”。*从“SAMPLE\U QTY”中选择“SAMPLE\U QTY”。“EMPLOYEE\U ID”=“JQIS”和“SAMPLE\U QTY”。“TRANSACTION\U date”=截止日期('2014-11-13 00:00:00 UTC','YYYY-MM-DD HH24:MI:SS')ORDER BY\U date DESC):html" target="_blank">应用程序/控制器/样本控制器。rb:31:“更新”中
Rails 3.1.8 Oracle DB
这是我的模型
default_scope order("CREATE_DATE DESC")
set_table_name :sample_qty
set_primary_keys :employee_id, :create_date
attr_accessible :sample_qty, :create_date
belongs_to :labor
paginates_per 20
validates :transaction_date,
date: { after: Proc.new { Time.now },
before: Proc.new { Time.now + 1.day } }
def transaction_date=(new_date)
self[:transaction_date] = Date.strptime(new_date.to_s, "%m/%d/%Y")
end
def date=(new_date)
if new_date.blank?
self[:date] = nil
else
self[:date] = Date.strptime(new_date.to_s, "%m/%d/%Y")
end
end
def create_date=(new_date)
self[:create_date] = Date.strptime(new_date.to_s, "%m/%d/%Y")
end
end
这是我的控制器
def sample_qty
@samples = Samples.find(params[:employee_id, :sample_qty])
end
def edit
@samples = Samples.find(params[:employee_id])
end
def update
@employee_id = params[:id]
@samples.assign_attributes({:create_date => Time.now.strftime("%Y-%m-%d")})
@samples.update_attributes(params[:samples])
@samples.validates_datetime :create_date
respond_with_bip(@samples)
end
end
看起来你在做:
@samples.assign_attributes({:create_date => Time.now.strftime("%Y-%m-%d")})
但是,您正在分析不同的日期格式:
Date.strptime(new_date.to_s, "%m/%d/%Y")
在一个例子中,它是用正斜杠而不是破折号来分隔的。
在引用的错误消息中,您有“SAMPLE\u QTY”。“TRANSACTION\u DATE”=截止日期('2014-11-13 00:00:00 UTC','YYYY-MM-DD HH24:MI:SS')
如果您可以去掉UTC的位(包括前面的空白),这正是图片所没有的等价物,它应该可以正常工作
请参阅Oracle TO\u DATE docu。
在经历了大量的R之后 以下是我的查询选择*来自openquery(oracle,'select to\u char(to\u date(“创建日期”,“yyyyy-mm-dd”),'dd-mon-yyyy'),来自oracle视图') 数据以以下格式显示,日期为2020-10-07 00:00:000
问题内容: 我想要这种格式 问题答案: 您需要先 解析 日期字符串(使用方法),才能 使用与格式匹配的格式获取对象。 然后使用所需的格式来 格式化 Date对象(Use 方法)以获取字符串。 输出:- 第一种格式是RFC 822 TimeZone与您的日期字符串匹配。有关在日期格式中使用的其他各种选项,请参见。
我得到一串零。有人能帮忙吗?
我在presto上,把日期格式化为varchar,看起来像- 我如何转换这个?
问题内容: 我正在尝试将字符串转换为日期格式,我尝试了很多方法来实现此目的,但是没有成功。我的字符串是“ 2012年1月17日”。我想将其转换为“ 2011-10-17”。有人可以告诉我这样做的方法吗?如果您通过示例工作过,那将是真正的帮助! 问题答案:
问题内容: 我正在使用代码将字符串格式化为日期 但是,如何将日期从格式转换为格式? 问题答案: 使用SimpleDateFormat#format(Date):