jsp輕量數據庫(輕量數據庫有哪些)

本文目錄一覽:

jsp連接數據庫方法(詳細的)

上面的給出了jsp內嵌java的最初模式,現在一般是三層結構了即MVC結構,就這個例子我來給你解釋下是怎麼做的,java對連接數據庫提供了統一的接口,各個數據庫廠商根據提供的接口規範開發自己的連接方法順序如下:1、用Class.forName()方法加載驅動:Class.forName(“com.microsoft.jdbc.sqlserver.SQLServerDriver”).newInstance(); 黑體部分為數據庫廠商自己開發的驅動。2、定義好連接數據庫的url地址,連接串String url=”jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs”;黑體部分為固定寫法不用理會。回到你最初的問題,如何創建數據庫,這裡你可以去baidu下每個數據庫創建的方法,一般數據庫安裝的時候都有默認的數據庫名,和對應的系統管理員工號和密碼,DatabaseName=pubs這裡說明sql serv 2000中建立了一個名字叫pubs的數據庫jdbc:microsoft:sqlserver://localhost:1433固定寫法唯一不同的是1433端口號,可能你在安裝sql serv 2000的時候改變了該端口號為1500那麼這裡就應該為jdbc:microsoft:sqlserver://localhost:15003、定義好DatabaseName=pubs的登錄用戶名和密碼 String user=”sa”;用戶名

String password=””;密碼4、創建Connection對象,通過調用DriverManager.getConnection方法獲得。 Connection conn= DriverManager.getConnection(url,user,password);黑體部分就是你定義好的連接串,用戶名,密碼,不可改變順序。到這裡為止數據庫就連接上了,但是連接好了數據庫還要做點什麼,比如打印出來,接下看。5、通過獲得的Connection對象conn創建Statement 對象stmtStatement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);黑體部分是定義ResultSet的一些屬性的,具體含義可以參考JDK的api。6、定義好你準備取得數據的sql語句,比如下面 select * from test說明想從test表中取得所有的數據,關於sql語句可以去查找相關數據庫資料。 String sql=”select * from test”;定義好語句後,就用上一步創建好的Statement 對象stmt來執行這個sql語句,並返回一個ResultSet對象。

  ResultSet rs=stmt.executeQuery(sql);執行完這步後rs中已經取得了test表所有的數據,那麼接下來要展現在網頁上。7、rs.next()對你取得的記錄集做一個循環直到沒有值為止,rs.getString(1)代表你test表中的第一個字段rs.getString(2)代表你test中的第二個字段,如果還有更多字段可以繼續rs.getString(3)..rs.getString(N) while(rs.next()) {%

您的第一個字段內容為:%=rs.getString(1)%

您的第二個字段內容為:%=rs.getString(2)%

%}%8、當所有數據展現完畢,調用close()方法將所有資源關閉。 rs.close();

stmt.close();

conn.close();回顧下大致過程:加載驅動 Class.forName();定義好相關的數據,調用DriverManager.getConnection(driver,user,password)獲得一個數據庫連接conn通過conn創建Statement對象stmt,conn.createStatement();通過stmt執行定義好的sql語句獲得數據集ResultSet rs=stmt.executeQuery(「select * from test」);通過rs.next()方法循環遍曆數據集的數據,通過rs.getString(1)獲得第一條數據的第一個字段內容,這裡要注意的是getString是對應數據庫是字符類型,如果test表的第一個字段不是字符類型則用rs.getInt(1)獲得。展現完畢後關閉所有資源conn stmt rs close方法。

jsp操作數據庫

可以用JavaBean的方法來實現連接數據庫,方便快捷

配置:tomcat+SQLserver+jsp

首先在這個文件夾下寫Java代碼

..你的tomcat安裝文件夾\webapps\你的站點名\WEB-INF\classes文件夾下conn.java

內容如下:

package test.db;//導入所需包

import java.io.*;

import java.sql.*;

public class conn {

//聲明類成員

public Connection con;

public String URL = “jdbc:odbc:iot”;

public String Message;

public boolean connection() {

try{

//加載JDBC-ODBC橋驅動程序

Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);

}

catch(ClassNotFoundException ex) {

Message = ex.getMessage();

System.exit(-1);

}

try {

//試圖通過JDBC-ODBC橋建立一個與iot數據源的連接

con = DriverManager.getConnection(URL);

//數據庫連接成功

return true;

}

catch(SQLException ex) {

Message = ex.getMessage();

return false;

}

}

//關閉數據庫連接

public boolean close() {

try{

con.close();

return true;

}

catch(Exception ex) {

Message = ex.getMessage();

return false;

}

}

//執行sql查詢語句,返回執行結果集

public ResultSet exeSQL(String sqlstr) {

try{

connection();

Statement stmt = con.createStatement();

ResultSet rs = stmt.executeQuery(sqlstr);

return rs;

}catch(Exception ex) {

Message = ex.getMessage();

}

return null;

}

//從指定的結果集rs中返回某字段str的值

public String getString(ResultSet rs,String str) {

try {

return rs.getString(str);

}catch(Exception ex){

Message = ex.getMessage();

}

return null;

}

}

編譯運行這個Java代碼

第二步,寫一個jsp代碼,命名為conn.jsp放在..你的tomcat安裝文件夾\webapps\你的站點名\inc文件夾下

%@ page import= “java.sql.*”%

jsp:useBean id=”dbBean” scope =”session” class = “test.db.conn” /

%

dbBean.connection();

Connection conn = dbBean.con;

Statement stmt = conn.createStatement();

String sql;

ResultSet rs;

ResultSet rs1;

ResultSet rs2;

ResultSet rs3;

String sql1;

String sql2;

String sql3;

%

以上是配置JavaBean,調用conn.jsp來連接數據庫,加入這段代碼

%@ include file=”../inc/conn.jsp”%

再說說curd

創建(Create)

、更新(Update)、讀取(Read)和刪除(Delete)

SQL中有四種基本的DML操作:INSERT,SELECT,UPDATE和DELETE。由於這是大多數SQL用戶經常用到的,我們有必要在此對它們進行一一說明。在圖1中我們給出了一個名為EMPLOYEES的表。其中的每一行對應一個特定的僱員記錄。

INSERT語句

用戶可以用INSERT語句將一行記錄插入到指定的一個表中。例如,要將僱員John Smith的記錄插入到本例的表中,可以使用如下語句:

INSERT INTO EMPLOYEES VALUES (‘Smith’,’John’,’1980-06-10′,’Los Angles’,16,45000);

通過這樣的INSERT語句,系統將試着將這些值填入到相應的列中。這些列按照我們創建表時定義的順序排列。在本例中,第一個值「Smith」將填到第一個列LAST_NAME中;第二個值「John」將填到第二列FIRST_NAME中……以此類推。

SELECT語句

SELECT語句可以從一個或多個表中選取特定的行和列。因為查詢和檢索數據是數據庫管理中最重要的功能,所以SELECT語句在SQL中是工作量最大的部分。實際上,僅僅是訪問數據庫來分析數據並生成報表的人可以對其他SQL語句一竅不通。

SELECT語句的結果通常是生成另外一個表。在執行過程中系統根據用戶的標準從數據庫中選出匹配的行和列,並將結果放到臨時的表中。在直接SQL(direct SQL)中,它將結果顯示在終端的顯示屏上,或者將結果送到打印機或文件中。也可以結合其他SQL語句來將結果放到一個已知名稱的表中。

SELECT語句功能強大。雖然表面上看來它只用來完成本文第一部分中提到的關係代數運算「選擇」(或稱「限制」),但實際上它也可以完成其他兩種關係運算—「投影」和「連接」,SELECT語句還可以完成聚合計算並對數據進行排序。

SELECT語句最簡單的語法如下:

SELECT columns FROM tables;

當我們以這種形式執行一條SELECT語句時,系統返回由所選擇的列以及用戶選擇的表中所有指定的行組成的一個結果表。這就是實現關係投影運算的一個形式。

UPDATE語句

UPDATE語句允許用戶在已知的表中對現有的行進行修改。

例如,我們剛剛發現Indiana Jones的等級為16,工資為$40,000.00,我們可以通過下面的SQL語句對數據庫進行更新(並清除那些煩人的NULL)。

UPDATE EMPLOYEES SET GRADE = 16, SALARY = 40000 WHERE FIRST_NAME = ‘Indiana’ AND LAST_NAME = ‘Jones’;

上面的例子說明了一個單行更新,但是UPDATE語句可以對多行進行操作。滿足WHERE條件的所有行都將被更新。如果,你想讓Boston辦事處中的所有職員搬到New York,你可以使用如下語句:

UPDATE EMPLOYEES SET BRANCH_OFFICE = ‘New York’ WHERE BRANCH_OFFICE = ‘Boston’;

如果忽略WHERE子句,表中所有行中的部門值都將被更新為’New York’。

UPDATE語句的語法流圖如下面所示:

UPDATE table

SET column = value [{, column = value}]

[ WHERE predicate [ { logical-connector predicate}]];

DELETE語句

DELETE語句用來刪除已知表中的行。如同UPDATE語句中一樣,所有滿足WHERE子句中條件的行都將被刪除。由於SQL中沒有UNDO語句或是「你確認刪除嗎?」之類的警告,在執行這條語句時千萬要小心。如果決定取消Los Angeles辦事處並解僱辦事處的所有職員,這一卑鄙的工作可以由以下這條語句來實現:

DELETE FROM EMPLOYEES WHERE BRANCH_OFFICE = ‘Los Angeles’;

如同UPDATE語句中一樣,省略WHERE子句將使得操作施加到表中所有的行。

DELETE語句的語法流圖如下面所示:

DELETE FROM table

[WHERE predicate [ { logical-connector predicate} ] ];

現在我們完成了數據操作語言(DML)的主要語句的介紹。

基本思路就是這樣,希望可以幫助到你,還有不清楚的可以和我百度聯繫

jsp做網站用什麼數據庫合適

建議用MYSQL,因為大部分都試用這個,您可以先學習,這樣懂的人也多,學習也快,用戶群體也龐大。

jsp選項該怎麼存數據庫

首先在JSP頁面的數據庫處理部分使用:try {statement(…..); }catch(SQLException e) { 1、像上面的語句中,我不知道是複製過來的還是寫錯了: String sql=insert into tb_member values(‘+income+’); 很明顯右邊少了一個引號: String sql=insert into tb_member values(‘+income+’); 2、拋出異常中可能說明是違反主鍵約束:查看數據庫表,將次主鍵約束暫時刪除。 3、拋出異常可能說明字符串被截斷,說明你定義的char類型太短,一般向這樣的字段保持定義在varchar(20)左右。 4、本來還有可能是類型不匹配或指定參數太多或不夠等,但就你題目中描述,只有一個字段就能出現這樣的異常了。 出於個人開發經驗的一點點建議: 以後連接數據庫不要這樣去連接,盡量使用Bean去完成,不然程序很混亂,以後維護非常困難。 對數據庫的操作不要顯示地去指定參數和表,尤其是參數,可以使用預處理方式,多步驟連貫操作,可以使用事務來達到數據操作的原子性,當然某些也可以通過數據庫的事務去完成。多步驟的非連貫信息的操作可以使用JDBC 3.0提供的批處理方式去完成以提高對數據庫的批量訪問成10倍得提高效率。 像在做通用模板的時候,對數據庫的表的指定的動態賦予的,當然對其某些字段的操作也是動態的,那麼數據庫類型和參數的個數也是動態的,如果用上述過程去完成非常困難。尤其還要對一些數據庫內部的空值異常進行處理。 1、公司數據沒有改變,就改變報表的樣式。 2、公司報表總數沒有變,某些報表數據有增加或刪除的現象。 3、公司的報表有增加。 尤其是後面的兩者,如果沒有通用模板,當發生這些情況,就需要重新編碼而且對程序進行從新編譯的過程)

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/241526.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-12 12:38
下一篇 2024-12-12 12:38

相關推薦

  • Python 常用數據庫有哪些?

    在Python編程中,數據庫是不可或缺的一部分。隨着互聯網應用的不斷擴大,處理海量數據已成為一種趨勢。Python有許多成熟的數據庫管理系統,接下來我們將從多個方面介紹Python…

    編程 2025-04-29
  • openeuler安裝數據庫方案

    本文將介紹在openeuler操作系統中安裝數據庫的方案,並提供代碼示例。 一、安裝MariaDB 下面介紹如何在openeuler中安裝MariaDB。 1、更新軟件源 sudo…

    編程 2025-04-29
  • Python通配符有哪些

    Python通配符是一種表示字符串中模糊匹配的有效工具,用於匹配與具有特定模式匹配的字符串。Python中主要的通配符有:*,?,[]和{}。 一、星號通配符 * 在Python中…

    編程 2025-04-29
  • 數據庫第三範式會有刪除插入異常

    如果沒有正確設計數據庫,第三範式可能導致刪除和插入異常。以下是詳細解釋: 一、什麼是第三範式和範式理論? 範式理論是關係數據庫中的一個規範化過程。第三範式是範式理論中的一種常見形式…

    編程 2025-04-29
  • 註冊表取證工具有哪些

    註冊表取證是數字取證的重要分支,主要是獲取計算機系統中的註冊表信息,進而分析痕迹,獲取重要證據。本文將以註冊表取證工具為中心,從多個方面進行詳細闡述。 一、註冊表取證工具概述 註冊…

    編程 2025-04-29
  • Python函數類型有哪些

    本文將從以下幾個方面詳細闡述Python函數類型。 一、內置函數 Python的內置函數是指在Python編程語言中提供的可以直接使用的函數,不需要通過導入模塊等方式引入。 部分常…

    編程 2025-04-29
  • leveldb和unqlite:兩個高性能的數據庫存儲引擎

    本文將介紹兩款高性能的數據庫存儲引擎:leveldb和unqlite,並從多個方面對它們進行詳細的闡述。 一、leveldb:輕量級的鍵值存儲引擎 1、leveldb概述: lev…

    編程 2025-04-28
  • Python程序變量名有哪些

    Python是一種高級、面向對象、解釋型編程語言,它因為其簡潔明了的語法和廣泛的應用領域而被廣泛使用。在Python中,變量名是關鍵的標識符,它們用於訪問存儲在內存中的值。本文將介…

    編程 2025-04-28
  • Python怎麼導入數據庫

    Python是一種高級編程語言。它具有簡單、易讀的語法和廣泛的庫,讓它成為一個靈活和強大的工具。Python的數據庫連接類型可以多種多樣,其中包括MySQL、Oracle、Post…

    編程 2025-04-28
  • 北京有哪些好的Python培訓機構

    想要成為一名全能開發工程師,Python是必不可少的編程語言之一。在北京,Python培訓機構也是各式各樣。下面就從教學質量、師資力量、教學內容、服務質量等多個方面,為大家推薦幾個…

    編程 2025-04-28

發表回復

登錄後才能評論