程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> sqlserverexception-SQLServerException: 沒有為參數號 8 設置值

sqlserverexception-SQLServerException: 沒有為參數號 8 設置值

編輯:編程綜合問答
SQLServerException: 沒有為參數號 8 設置值

public String getAddMessage()
{ String str="";
Connection con;
PreparedStatement sql;
try { String uri="jdbc:sqlserver://127.0.0.1:1433;DatabaseName=BookStore";
con=DriverManager.getConnection(uri,"sa","sa");
String insertCondition="INSERT INTO Books VALUES (?,?,?,?,?,?,?)";//數據庫中第一個字段為id,設為了自動增長
sql=con.prepareStatement(insertCondition);
if(name.length()>0)
{
sql.setString(2,name);
sql.setString(3,author);
sql.setString(4,sort);
sql.setFloat(5,price);
sql.setString(6,publisher);
sql.setString(7,date);
sql.setString(8,introduction);
int m=sql.executeUpdate();
if(m!=0)
{ str="添加"+m+"條書籍信息成功";
ok=true;
}
else
{ str="添加書籍信息失敗";
}
}
else
{ str="必須要有圖書名稱";
}
con.close();
}
catch(SQLException e)
{ str="您還沒有填寫書籍信息或"+e;
}
return str;
}

最佳回答:


INSERT INTO Books VALUES (?,?,?,?,?,?,?)
你如果這個寫的話,哪麼你就需要把sql.setString(1,id);設值近去才行的
當然id也可以 UUID.randomUUID().toString() 這樣獲得的

也可以改成這樣:

INSERT INTO Books(字段2~字段7) VALUES (?,?,?,?,?,?)
sql.setString(1,name);
sql.setString(2,author);
sql.setString(3,sort);
。。。。
。。。
。。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved