I'm using a database writer - and it appears to create the tables in mysql and postgresql correctly.
What I'm not clear about is how I might then execute arbitrary SQL statements, e.g. to create indices etc?
Cheers,
Steve.
I'm using a database writer - and it appears to create the tables in mysql and postgresql correctly.
What I'm not clear about is how I might then execute arbitrary SQL statements, e.g. to create indices etc?
Cheers,
Steve.
Well, Database Writer failed [on second loop through] with error:
'Execute failed: Column "id" of type "StringCell" from input does not match type "VARCHAR" in database at position 16'
In the MySQL DB, field "id" was type "text".
When I changed the column "id" to type "varchar(10)" both in the back-end DB and the node configuration, the node ran fine.
"StringCell" should be compatible with "text" - so is this a bug?
Cheers,
Steve.
Hi Steve,
You can use the Database Reader node to execute SQL other than SELECT statements. However, if you want the node to execute without an error, you must add a 'dummy' SELECT at the end of the SQL to give the node something to return. For example (lifted from a workflow where I do exactly what you are asking for!):
CREATE INDEX fps_maccsfp_idx ON rdk.fps USING gist(maccsfp); SELECT count(*) FROM rdk.fps
Kind regards
James
Splendid, I'll try that.
Cheers,
Steve.
With KNIME 2.10, we will release a generic SQL Executor nodes, among many other new cool Database Access and Manipulator nodes. Just stay tuned.