Re: BUG #13919: Cast error when table is empty.
От | Tom Lane |
---|---|
Тема | Re: BUG #13919: Cast error when table is empty. |
Дата | |
Msg-id | 20633.1454993198@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | BUG #13919: Cast error when table is empty. (mail@eaden.net) |
Список | pgsql-bugs |
mail@eaden.net writes: > When trying to change the type of column I received the error : > PG::DatatypeMismatch: ERROR: column "date_of_birth" cannot be cast > automatically to type date > HINT: Specify a USING expression to perform the conversion. > I totally understand the error. However, there are no rows in the table, so > it IS possible to automatically to cast 0 strings into 0 dates. > If there are no rows, can the column type just be changed? I do not see a good reason to create a special case for this. If there's no data in the table, and you don't feel like creating a fully valid ALTER command, why don't you just drop and recreate the table? Or for that matter you could just make up some useless USING expression, say USING NULL::date. (Also, I believe we apply the USING expression to the column's default value, and also to indexes if any, so "there are no rows" is far from a complete statement of the restrictions that would have to apply before ignoring the lack of a datatype transform could work.) regards, tom lane
В списке pgsql-bugs по дате отправления: