On Fri, 15 May 2015, "Leonardo M. Ramé" wrote:

Hi, I need to insert a value into a custom type column in a PostgreSql database.

The type was created using this:

create type doc_type as enum('pdf', 'rtf', 'html', 'doc', 'docx', 'xls', 'xlsx', 'txt');

To insert a field into a table with one column of that type, I use:

var
 lQuery: TSqlQuery;

begin
 ...
lQuery.Sql.Text := 'insert into documents(document_name, document_type) values(:name, :type)';
 lQuery.ParamByName('type').AsString := 'txt';
 ...

I get "Primary Error: column "document_type" is of type doc_type but expression is of type text". How can I cast this?.

I would think
insert into documents(document_name, document_type)  values(:name, 
(:type)::doc_type )';
?

Michael.
--
_______________________________________________
Lazarus mailing list
[email protected]
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus

Reply via email to