String sql = "SELECT tradeId, t.cardNo, tradeType, tradeAmount, targetCard, poundage, tradeTime, acceptBankID, atmNo ; FROM Trade t JOIN BankCard b on t.cardNo = b.cardNo JOIN Customer c on b.custId = c.custId WHERE name = ? " ;
perform to get the right results in the database , put java code to die !
error message:
java.sql.SQLException: com.microsoft.sqlserver.jdbc.SQLServerException: column name 'name' is not valid. Query: SELECT tradeId, t.cardNo, tradeType, tradeAmount, targetCard, poundage, tradeTime, acceptBankID, atmNo FROM Trade t JOIN BankCard b on t.cardNo = b.cardNo JOIN Customer c on b.custId = c.custId WHERE name =? Parameters: [ruirui]
at org.apache.commons.dbutils.AbstractQueryRunner.rethrow (AbstractQueryRunner.java: 363)
at org.apache.commons.dbutils.QueryRunner.query (QueryRunner.java: 350)
at org.apache.commons.dbutils.QueryRunner.query (QueryRunner.java: 211)
at com.javaweb.bank.dao.impl.BaseDAO.queryForList (BaseDAO.java: 123)
at com.javaweb.bank.test.TradeDAOImplTest.testGetTradesWithName (TradeDAOImplTest.java: 61)
at sun.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java: 39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java: 25)
at java.lang.reflect.Method.invoke (Method.java: 597)
at org.junit.runners.model.FrameworkMethod $ 1.runReflectiveCall (FrameworkMethod.java: 44)
at org.junit.internal.runners.model.ReflectiveCallable.run (ReflectiveCallable.java: 15)
at org.junit.runners.model.FrameworkMethod.invokeExplosively (FrameworkMethod.java: 41)
at org.junit.internal.runners.statements.InvokeMethod.evaluate (InvokeMethod.java: 20)
at org.junit.runners.BlockJUnit4ClassRunner.runNotIgnored (BlockJUnit4ClassRunner.java: 79)
at org.junit.runners.BlockJUnit4ClassRunner.runChild (BlockJUnit4ClassRunner.java: 71)
at org.junit.runners.BlockJUnit4ClassRunner.runChild (BlockJUnit4ClassRunner.java: 49)
at org.junit.runners.ParentRunner $ 3.run (ParentRunner.java: 193)
at org.junit.runners.ParentRunner $ 1.schedule (ParentRunner.java: 52)
at org.junit.runners.ParentRunner.runChildren (ParentRunner.java: 191)
at org.junit.runners.ParentRunner.access $ 000 (ParentRunner.java: 42)
at org.junit.runners.ParentRunner $ 2.evaluate (ParentRunner.java: 184)
at org.junit.runners.ParentRunner.run (ParentRunner.java: 236)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run (JUnit4TestReference.java: 50)
at org.eclipse.jdt.internal.junit.runner.TestExecution.run (TestExecution.java: 38)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests (RemoteTestRunner.java: 467)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests (RemoteTestRunner.java: 683)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run (RemoteTestRunner.java: 390)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main (RemoteTestRunner.java: 197)
------ Solution ------------------------------------ --------
try specify the name of the table name.
------ Solution ---------------------------------------- ----
.. try to write the Customer table in the back From now
------ For reference only -------------------- -------------------
how nobody . . . . . .
------ For reference only -------------------------------------- -
is that right :
String sql = "SELECT tradeId, t.cardNo, tradeType, tradeAmount, targetCard, poundage, tradeTime, acceptBankID, atmNo ; FROM Trade t JOIN BankCard b on t.cardNo = b.cardNo JOIN Customer c on b.custId = c.custId WHERE c.name ; = " ? ;
still useless :
java.sql.SQLException: com.microsoft.sqlserver.jdbc.SQLServerException: Unable to bind multi-part identifier "c.name". Query: SELECT tradeId, t.cardNo, tradeType, tradeAmount, targetCard, poundage, tradeTime, acceptBankID, atmNo FROM Trade t JOIN BankCard b on t.cardNo = b.cardNo JOIN Customer c on b.custId = c.custId WHERE c.name =? Parameters: [ruirui]
at org.apache.commons.dbutils.AbstractQueryRunner.rethrow (AbstractQueryRunner.java: 363)
at org.apache.commons.dbutils.QueryRunner.query (QueryRunner.java: 350)
at org.apache.commons.dbutils.QueryRunner.query (QueryRunner.java: 211)
at com.javaweb.bank.dao.impl.BaseDAO.queryForList (BaseDAO.java: 123)
at com.javaweb.bank.test.TradeDAOImplTest.testGetTradesWithName (TradeDAOImplTest.java: 61)
at sun.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java: 39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java: 25)
at java.lang.reflect.Method.invoke (Method.java: 597)
at org.junit.runners.model.FrameworkMethod $ 1.runReflectiveCall (FrameworkMethod.java: 44)
at org.junit.internal.runners.model.ReflectiveCallable.run (ReflectiveCallable.java: 15)
at org.junit.runners.model.FrameworkMethod.invokeExplosively (FrameworkMethod.java: 41)
at org.junit.internal.runners.statements.InvokeMethod.evaluate (InvokeMethod.java: 20)
at org.junit.runners.BlockJUnit4ClassRunner.runNotIgnored (BlockJUnit4ClassRunner.java: 79)
at org.junit.runners.BlockJUnit4ClassRunner.runChild (BlockJUnit4ClassRunner.java: 71)
at org.junit.runners.BlockJUnit4ClassRunner.runChild (BlockJUnit4ClassRunner.java: 49)
at org.junit.runners.ParentRunner $ 3.run (ParentRunner.java: 193)
at org.junit.runners.ParentRunner $ 1.schedule (ParentRunner.java: 52)
at org.junit.runners.ParentRunner.runChildren (ParentRunner.java: 191)
at org.junit.runners.ParentRunner.access $ 000 (ParentRunner.java: 42)
at org.junit.runners.ParentRunner $ 2.evaluate (ParentRunner.java: 184)
at org.junit.runners.ParentRunner.run (ParentRunner.java: 236)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run (JUnit4TestReference.java: 50)
at org.eclipse.jdt.internal.junit.runner.TestExecution.run (TestExecution.java: 38)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests (RemoteTestRunner.java: 467)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests (RemoteTestRunner.java: 683)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run (RemoteTestRunner.java: 390)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main (RemoteTestRunner.java: 197)
------ For reference only ---------- -----------------------------
sincerely thank you ! This really is the answer ! How is this going ? !
没有评论:
发表评论