Hello all!
I don't know whether it is a bug but I came across the following
problem. While performing queries on exact structure match bingo
produced the following error. Here is one of the queries:
------------------------------------------------------------------
>>> import pyodbc
>>> db = pyodbc.connect('DRIVER={SQL Server Native Client 10.0};SERVER=localhost;DATABASE=mmdb;UID=mmdb_user;PWD=mmdb-pass;CHARSET=UTF8', autocommit=True)
>>> c = db.cursor()
>>> c.execute("""SELECT * FROM molecule_structure , bingo.SearchExact('molecule_structure', '[CuH8+2].[O-]CCN(C)C.[O-]CCN(C)C', '') t where
molecule_structure.id =
t.id""")
Traceback (most recent call last):
File "<pyshell#45>", line 1, in <module>
c.execute("""SELECT * FROM molecule_structure ,
bingo.SearchExact('molecule_structure', '[CuH8+2].[O-]CCN(C)C.
[O-]CCN(C)C', '') t where
molecule_structure.id =
t.id""")
ProgrammingError: ('42000', '[42000] [Microsoft][SQL Server Native
Client 10.0][SQL Server]A .NET Framework error occurred during
execution of user-defined routine or aggregate "_SearchExact": \r
\nSystem.Data.SqlClient.SqlException: Invalid column name \'mol_rowid
\'.\r\nSystem.Data.SqlClient.SqlException: \r\n \xe2
System.Data.SqlClient.SqlConnection.OnError(SqlException exception,
Boolean breakConnection)\r\n \xe2
System.Data.SqlClient.SqlInternalConnection.OnError(SqlException
exception, Boolean breakConnection)\r\n \xe2
System.Data.SqlClient.SqlInternalConnectionSmi.EventSink.DispatchMessages(Boolean
ignoreNonFatalMessages)\r\n \xe2
Microsoft.SqlServer.Server.SmiEventSink_Default.DispatchMessages(Boolean
ignoreNonFatalMessages)\r\n \xe2
Microsoft.SqlServer.Server.SmiEventSink_Default.DispatchMessages(Boolean
ignoreNonFatalMessages)\r\n \xe2
System.Data.SqlClient.SqlDataReaderSmi.InternalNextResult(Boolean
ignoreNonFatalMessages)\r\n \xe2
System.Data.SqlClient.SqlDataReaderSmi.NextResult()\r\n \xe2
System.Data.SqlClient.SqlCommand.RunExecuteReaderSmi(CommandBehavior
cmdB (6522) (SQLExecDirectW)')
---------------------------------------------------------------------------
As you can see the smiles consists of components separated with a dot.
Moreover the identical bingo.SearchSub query produces no errors.
Actually I am not good in chemistry and maybe that error is supposed
to be produced. I am looking forward to your comments.
I use Bingo 1.5, MS SQL Server 2008 Express, pyodbc 2.1.7, Python 2.6,
WinXP SP2.
Best regards,
Pavlo Musienko