Christopher Kings-Lynne wrote: > > > The only idea I have is to call oidin() to do the conversion from string > > to oid. I see this in copy.c: > > > > loaded_oid = DatumGetObjectId(DirectFunctionCall1(oidin, > > CStringGetDatum(string))); > > if (loaded_oid == InvalidOid) > > ereport(ERROR, > > (errcode(ERRCODE_BAD_COPY_FILE_FORMAT), > > errmsg("invalid OID in COPY data"))); > > > > I would give that a try. > > Yes but in this case, the Node is parsed like this: > > | COMMENT ON LARGE OBJECT NumericOnly IS comment_text > { > > ... > > > n->objname = makeList1(makeAConst($5)); > > ... > > $$ = (Node *) n; > } > > So there is no CString to convert to a Datum...
But I see makeAConst as: static Node * makeAConst(Value *v) { Node *n; switch (v->type) { case T_Float: n = makeFloatConst(v->val.str); break; case T_Integer: n = makeIntConst(v->val.ival); break; case T_String: default: n = makeStringConst(v->val.str, NULL); break; } return n; } which uses makeStringConst(). -- Bruce Momjian | http://candle.pha.pa.us [EMAIL PROTECTED] | (610) 359-1001 + If your life is a hard drive, | 13 Roberts Road + Christ can be your backup. | Newtown Square, Pennsylvania 19073 ---------------------------(end of broadcast)--------------------------- TIP 2: you can get off all lists at once with the unregister command (send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])