- 爲何選用SQLserver2008?
在開始項目之初,我選用mysql即Oracle公司的一個體積小、速度快的小型數據數據庫,但我在使用jdbc連接時,出現了多處無法解決的問題,故放棄使用。
在用SQLserver2008時,使用4.0版本的sqljdbc4.jar進行連接,順利完成了連接,故使用SQLserver2008。
2.使用一個javabean與數據庫建立連接
登錄數據庫使用的是sqlserver驗證,驗證密碼安裝時就已經設定好了。
- static {
- try {
- Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
- } catch (ClassNotFoundException e) {
- e.printStackTrace();
- }
- }
- public static Connection getConn(){
- Connection conn = null;
- try {
- conn= DriverManager.getConnection("jdbc:sqlserver://localhost:1433;DataBaseName=shopping","sa","123qaz");
- }catch(SQLException e){
- e.printStackTrace();
- }
- return conn;
- }
此處使用的端口是1143,首先要確認sqlserver的服務已開啓,之後打開sqlserver2008配置管理器c查看端口是否開啓,具體詳細開啓過程請看http://hi.baidu.com/bzdxiayizhan/item/a6727857d37bfbc49f266747
3.在數據庫建表過程中出現的小問題
使用identity(1,1)實現從1開始,沒產生一個新的id自增1.
一開始使用auto_increment,現在已經不使用,不是關鍵字,而改用identity。
- id int primary key identity(1,1),
當使用identity時,使用javabean對數據庫進行增加數據操作時必須使用如下形式:
- 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]即可。但引用時,很費力,建議不要使用。