It looks like a possible issue with the DCItem::saveToDB function. Here is the debug output from one attempt at binding a template to a node. It looks like the "INSERT INTO items" query is off by one parameter since 15943 is the template id and not the node id:
[14-Oct-2014 16:49:33.119] [DEBUG] Successful sync query: "INSERT INTO dct_node_map (template_id,node_id) VALUES (15943,8168)" [1 ms]
[14-Oct-2014 16:49:33.119] [DEBUG] Successful sync query: "INSERT INTO dct_node_map (template_id,node_id) VALUES (15943,10760)" [0 ms]
[14-Oct-2014 16:49:33.120] [DEBUG] Successful sync query: "INSERT INTO dct_node_map (template_id,node_id) VALUES (15943,10909)" [1 ms]
[14-Oct-2014 16:49:33.120] [DEBUG] Successful sync query: "INSERT INTO dct_node_map (template_id,node_id) VALUES (15943,11082)" [0 ms]
[14-Oct-2014 16:49:33.121] [DEBUG] Successful sync query: "INSERT INTO dct_node_map (template_id,node_id) VALUES (15943,11255)" [1 ms]
[14-Oct-2014 16:49:33.121] [DEBUG] Successful sync query: "INSERT INTO dct_node_map (template_id,node_id) VALUES (15943,11384)" [0 ms]
[14-Oct-2014 16:49:33.122] [DEBUG] Successful sync query: "INSERT INTO dct_node_map (template_id,node_id) VALUES (15943,11765)" [1 ms]
[14-Oct-2014 16:49:33.122] [DEBUG] Successful sync query: "DELETE FROM acl WHERE object_id=15943" [0 ms]
[14-Oct-2014 16:49:33.122] [DEBUG] {0x7f9e68018130} Successful prepare: "SELECT item_id FROM items WHERE item_id=?" [0 ms]
[14-Oct-2014 16:49:33.122] [DEBUG] {0x7f9e68018130} bind at pos 1: "282"
[14-Oct-2014 16:49:33.122] [DEBUG] Successful prepared sync query: "SELECT item_id FROM items WHERE item_id=?" [0 ms]
[14-Oct-2014 16:49:33.123] [DEBUG] {0x7f9e6804a350} Successful prepare: "INSERT INTO items (node_id,template_id,name,source,datatype,polling_interval,retention_time,status,delta_calculation,transformation,description,instance,template_item_id,flags,resource_id,proxy_node,base_units,unit_multiplier,custom_units_name,perftab_settings,system_tag,snmp_port,snmp_raw_value_type,instd_method,instd_data,instd_filter,samples,comments,item_id) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)" [0 ms]
[14-Oct-2014 16:49:33.123] [DEBUG] {0x7f9e6804a350} bind at pos 1: "15943"
[14-Oct-2014 16:49:33.123] [DEBUG] {0x7f9e6804a350} bind at pos 2: "0"
[14-Oct-2014 16:49:33.123] [DEBUG] {0x7f9e6804a350} bind at pos 3: "Dummy"
[14-Oct-2014 16:49:33.123] [DEBUG] {0x7f9e6804a350} bind at pos 4: "0"
[14-Oct-2014 16:49:33.123] [DEBUG] {0x7f9e6804a350} bind at pos 5: "0"
[14-Oct-2014 16:49:33.123] [DEBUG] {0x7f9e6804a350} bind at pos 6: "300"
[14-Oct-2014 16:49:33.123] [DEBUG] {0x7f9e6804a350} bind at pos 7: "5"
[14-Oct-2014 16:49:33.123] [DEBUG] {0x7f9e6804a350} bind at pos 8: "0"
[14-Oct-2014 16:49:33.123] [DEBUG] {0x7f9e6804a350} bind at pos 9: "0"
[14-Oct-2014 16:49:33.123] [DEBUG] {0x7f9e6804a350} bind at pos 10: "use US::Utilities;
use US::CiscoCommon;
return ciscoEnvMonTemperatureStatusValue($node->name);"
[14-Oct-2014 16:49:33.123] [DEBUG] {0x7f9e6804a350} bind at pos 11: "Temperature"
[14-Oct-2014 16:49:33.123] [DEBUG] {0x7f9e6804a350} bind at pos 12: ""
[14-Oct-2014 16:49:33.123] [DEBUG] {0x7f9e6804a350} bind at pos 13: "0"
[14-Oct-2014 16:49:33.123] [DEBUG] {0x7f9e6804a350} bind at pos 14: "0"
[14-Oct-2014 16:49:33.123] [DEBUG] {0x7f9e6804a350} bind at pos 15: "0"
[14-Oct-2014 16:49:33.123] [DEBUG] {0x7f9e6804a350} bind at pos 16: "0"
[14-Oct-2014 16:49:33.123] [DEBUG] {0x7f9e6804a350} bind at pos 17: "0"
[14-Oct-2014 16:49:33.123] [DEBUG] {0x7f9e6804a350} bind at pos 18: "1"
[14-Oct-2014 16:49:33.123] [DEBUG] {0x7f9e6804a350} bind at pos 19: ""
[14-Oct-2014 16:49:33.123] [DEBUG] {0x7f9e6804a350} bind at pos 20: "<config>
<enabled>false</enabled>
<autoScale>true</autoScale>
<logScaleEnabled>false</logScaleEnabled>
<minYScaleValue>1</minYScaleValue>
<maxYScaleValue>100</maxYScaleValue>
<timeRange>1</timeRange>
<timeUnits>1</timeUnits>
<type>0</type>
<color>49152</color>
<title></title>
<name></name>
<showThresholds>false</showThresholds>
<parentDciId>0</parentDciId>
<order>100</order>
</config>"
[14-Oct-2014 16:49:33.123] [DEBUG] {0x7f9e6804a350} bind at pos 21: ""
[14-Oct-2014 16:49:33.123] [DEBUG] {0x7f9e6804a350} bind at pos 22: "0"
[14-Oct-2014 16:49:33.123] [DEBUG] {0x7f9e6804a350} bind at pos 23: "0"
[14-Oct-2014 16:49:33.123] [DEBUG] {0x7f9e6804a350} bind at pos 24: "0"
[14-Oct-2014 16:49:33.123] [DEBUG] {0x7f9e6804a350} bind at pos 25: ""
[14-Oct-2014 16:49:33.123] [DEBUG] {0x7f9e6804a350} bind at pos 26: ""
[14-Oct-2014 16:49:33.123] [DEBUG] {0x7f9e6804a350} bind at pos 27: "0"
[14-Oct-2014 16:49:33.123] [DEBUG] {0x7f9e6804a350} bind at pos 28: ""
[14-Oct-2014 16:49:33.123] [DEBUG] {0x7f9e6804a350} bind at pos 29: "282"
[14-Oct-2014 16:49:33.124] [DEBUG] Failed prepared sync query: "INSERT INTO items (node_id,template_id,name,source,datatype,polling_interval,retention_time,status,delta_calculation,transformation,description,instance,template_item_id,flags,resource_id,proxy_node,base_units,unit_multiplier,custom_units_name,perftab_settings,system_tag,snmp_port,snmp_raw_value_type,instd_method,instd_data,instd_filter,samples,comments,item_id) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)" [1 ms]
[14-Oct-2014 16:49:33.124] [ERROR] SQL query failed (Query = "INSERT INTO items (node_id,template_id,name,source,datatype,polling_interval,retention_time,status,delta_calculation,transformation,description,instance,template_item_id,flags,resource_id,proxy_node,base_units,unit_multiplier,custom_units_name,perftab_settings,system_tag,snmp_port,snmp_raw_value_type,instd_method,instd_data,instd_filter,samples,comments,item_id) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)"): Operand type clash: int is incompatible with text
[14-Oct-2014 16:49:33.125] [DEBUG] Event::expandText(event=0x7f9e6804f620 sourceObject=100 template='Database query failed (Query: %1; Error: %2)' alarmMsg='(null)' alarmKey='(null)')
[14-Oct-2014 16:49:33.125] [DEBUG] CorrelateEvent: event SYS_DB_QUERY_FAILED id 2625549 source ourserver.ourdomain.com [100]