天天看點

利用QueryRunner解決 insert into報錯:關鍵字 'WHERE' 附近有文法錯誤

轉自:https://www.cnblogs.com/toohoo/p/7994078.html

1

2

3

4

5

6

7

8

9

10

11

12

13

14

public

int

addManager(Manager manager){

//建立SQL語句

String SQL = 

"insert into tb_manager (managerid,mloginname,"

+

"sex,loginpass,belong) values (?,?,?,?,?)"

;

Object[] param ={manager.getManagerid(),manager.getMloginname(),

manager.getSex(),manager.getLoginpass(),manager.getBelong()};

try

{

return

JdbcUtils.getQueryRunner().update(SQL, param);

catch

(SQLException e) {

e.printStackTrace();

throw

new

RuntimeException(e);

}

}

  

1

2

3

4

5

6

7

8

9

10

11

12

13

14

@Test

public

void

addManager(){

Manager manager = 

new

Manager();

manager.setManagerid(

"man005"

);

manager.setMloginname(

"姜維"

);

manager.setSex(

"男"

);

manager.setLoginpass(

"123"

);

manager.setBelong(

"教務處"

);

int

addManager = managerOp.addManager(manager);

System.out.println(addManager);

}

  報錯資訊:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

java.sql.SQLException: com.microsoft.sqlserver.jdbc.SQLServerException: 關鍵字 

'WHERE'

附近有文法錯誤。 Query: insert into tb_manager(managerid,mloginname,sex,loginpass,belong) values(?,?,?,?,?) Parameters: [man005, 姜維, 男, 

123

, 教務處]

at org.apache.commons.dbutils.AbstractQueryRunner.rethrow(AbstractQueryRunner.java:

392

)

at org.apache.commons.dbutils.QueryRunner.update(QueryRunner.java:

491

)

at org.apache.commons.dbutils.QueryRunner.update(QueryRunner.java:

457

)

at cn.toohoo.manager.dao.ManagerDao.addManager(ManagerDao.java:

32

)

at cn.toohoo.test.Tb_managerTest.addManager(Tb_managerTest.java:

40

)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:

57

)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:

43

)

at java.lang.reflect.Method.invoke(Method.java:

601

)

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.internal.runners.statements.RunBefores.evaluate(RunBefores.java:

28

)

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

)

  解決方法

利用QueryRunner解決 insert into報錯:關鍵字 'WHERE' 附近有文法錯誤

繼續閱讀