0
当插入到字符串和日期唯一约束的PostgreSQL数据库中时,字符串部分的精确匹配未被使用。如下所示,当我尝试将'AA','2010-01-04'组合插入到数据库中时,我得到A,2010-01-04已存在的重复冲突。PostgreSQL的唯一约束不使用完全匹配
INSERT INTO orats_opt
(ticker,dates,stockpx,iv30,iv60,iv90,m1atmiv,m1dtex,m2atmiv,m2dtex,m3atmiv,m3dtex,m4atmiv,m4dtex,slope,deriv,slope_inf,deriv_inf,dclsHV10,dclsHV20,dclsHV60,dclsHV120,dclsHV252,dORHV10,dORHV20,dORHV60,dORHV120,dORHV252)
VALUES ('AA','2010-01-04
+00'::date,16.63,47.68,43.25,43.16,52.34,12.0,43.28,47.0,43.15,103.0,43.08,194.0,2.28,0.03878,2.323,0.05939,45.21,47.01,45.15,47.52,71.41,41.94,49.32,44.63,47.31,60.38)
ERROR: duplicate key value violates unique constraint "unique_ticker_date" DETAIL: Key (ticker, dates)=(A, 2010-01-04) already exists. ********** Error ********** ERROR: duplicate key value violates unique constraint "unique_ticker_date" SQL state: 23505 Detail: Key (ticker, dates)=(A, 2010-01-04) already exists.
请** [编辑] **你的问题,并添加完整'创建table'为'orats_opt'和相应的唯一约束(或指数)语句。 ** [编辑] **你的问题。请不要**在注释 –
表中添加代码或附加信息,最好从psqls'\ d + orats_opt' –
或许'ticker'被定义为'char(1)'。 –