項目使用sqlserver2008出現的問題總結(1)

  1.  爲何選用SQLserver2008?

      在開始項目之初,我選用mysql即Oracle公司的一個體積小、速度快的小型數據數據庫,但我在使用jdbc連接時,出現了多處無法解決的問題,故放棄使用。

      在用SQLserver2008時,使用4.0版本的sqljdbc4.jar進行連接,順利完成了連接,故使用SQLserver2008。

 2.使用一個javabean與數據庫建立連接

登錄數據庫使用的是sqlserver驗證,驗證密碼安裝時就已經設定好了。

  1.  static { 
  2. try { 
  3. Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); 
  4. catch (ClassNotFoundException e) { 
  5. e.printStackTrace(); 
  6. public static Connection getConn(){ 
  7.  
  8. Connection conn = null
  9. try { 
  10. conn= DriverManager.getConnection("jdbc:sqlserver://localhost:1433;DataBaseName=shopping","sa","123qaz"); 
  11. }catch(SQLException e){ 
  12. e.printStackTrace(); 
  13. return conn; 

此處使用的端口是1143,首先要確認sqlserver的服務已開啓,之後打開sqlserver2008配置管理器c查看端口是否開啓,具體詳細開啓過程請看http://hi.baidu.com/bzdxiayizhan/item/a6727857d37bfbc49f266747

 3.在數據庫建表過程中出現的小問題


使用identity(1,1)實現從1開始,沒產生一個新的id自增1.

一開始使用auto_increment,現在已經不使用,不是關鍵字,而改用identity。

  1. id int primary key identity(1,1),  

當使用identity時,使用javabean對數據庫進行增加數據操作時必須使用如下形式:

  1. String sql= "insert into users(username,password,phone,addr,rdate)values(?,?,?,?,?)"

否則出現“僅當使用了列的列表,並且 IDENTITY_INSERT 爲 ON 時,才能在表 'users' 中爲標識列指定顯式值”錯誤提示。

另一種修改方式,請參見:http://blog.csdn.net/routered/article/details/5523260


建庫時不要使用user作爲一個table的名字,user是數據庫裏的保留字,若想使用[user]即可。但引用時,很費力,建議不要使用。


 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章