我正在Jython上运行SQLAlchemy,并尝试使用jTDS和windows身份验证连接到mssql数据库。我可以很好地查询和删除,但当我尝试插入新值时,它将在提交时挂起。在
print 'before add'
session.add(newVal)
print 'after add'
session.commit()
print 'after commit'
我看到了前两个打印语句,但没有看到最后一个。我的CPU快用完了,甚至不能直接使用mssqlmanagementstudio查询表。当我终止jythonjava进程时,我可以再次查询,但新值还没有添加。在
奇怪的是,我可以使用SQL命令直接插入值:
^{pr2}$你知道我做错了什么吗?在
下面是一个缩短的堆栈跟踪:
"MainThread" prio=6 tid=0x0000000000def000 nid=0x528 runnable [0x0000000002c3d000]
java.lang.Thread.State: RUNNABLE
at java.lang.Throwable.fillInStackTrace(Native Method)
- locked <0x0000000021e98880> (a org.python.core.PyException)
at org.python.core.PyException.fillInStackTrace(PyException.java:70)
at java.lang.Throwable.<init>(Throwable.java:181)
at java.lang.Exception.<init>(Unknown Source)
at java.lang.RuntimeException.<init>(Unknown Source)
at org.python.core.PyException.<init>(PyException.java:46)
at org.python.core.PyException.<init>(PyException.java:43)
at org.python.core.PyException.<init>(PyException.java:61)
at org.python.core.Py.AttributeError(Py.java:145)
at org.python.core.PyObject.noAttributeError(PyObject.java:936)
at org.python.core.PyObject.object___getattribute__(PyObject.java:3694)
at org.python.core.PyObject$object___getattribute___exposer.__call__(Unknown Source)
at org.python.core.PyObjectDerived.__findattr_ex__(PyObjectDerived.java:993)
at org.python.core.PyObject.__getattr__(PyObject.java:929)
at sqlalchemy.dialects.mssql.zxjdbc$py.post_exec$3(C:\Users\pchavez\bin\netbeans\NetBeans 6.7 Python EA2\python1\jython-2.5\Lib\site-packages\sqlalchemy\dialects\mssql\zxjdbc.py:52)
at sqlalchemy.dialects.mssql.zxjdbc$py.call_function(C:\Users\pchavez\bin\netbeans\NetBeans 6.7 Python EA2\python1\jython-2.5\Lib\site-packages\sqlalchemy\dialects\mssql\zxjdbc.py)
at org.python.core.PyTableCode.call(PyTableCode.java:165)
...
at org.python.pycode._pyx0.f$0(C:\Users\pchavez\sqltool\src\db\sqltest.py:99)
at org.python.pycode._pyx0.call_function(C:\Users\pchavez\sqltool\src\db\sqltest.py)
at org.python.core.PyTableCode.call(PyTableCode.java:165)
at org.python.core.PyCode.call(PyCode.java:18)
at org.python.core.Py.runCode(Py.java:1197)
at org.python.util.PythonInterpreter.execfile(PythonInterpreter.java:166)
at org.python.util.jython.run(jython.java:229)
at org.python.util.jython.main(jython.java:117)
据我所知,它是sqlalchemy.方言.mssql.zxjdbc模块:
def post_exec(self):
if self._embedded_scope_identity:
while True:
...
目前没有回答
相关问题 更多 >
编程相关推荐