ฐานข้อมูล Oracle สร้างตารางและเพิ่มข้อมูลก่อน
1. สร้างตารางนักเรียนในฐานข้อมูล Oracle ก่อน:
สร้างตารางนักเรียน (หมายเลขรหัส (11) คีย์หลัก NULL, STU_NAME VARCHAR (16) ไม่ใช่ NULL, หมายเลขเพศ (11) ค่าเริ่มต้น NULL, หมายเลขอายุ (11) ค่าเริ่มต้น NULL, ที่อยู่ VARCHAR (128) ค่าเริ่มต้น);
2. เพิ่มข้อมูลบางส่วนลงในตาราง
insert into student values('1','王小军','1','17','北京市和平里七区30号楼7门102')
เขียนรหัส java ใน myeclipse
1. นำเข้า ojdbc6.jar เข้าสู่โครงการ
ก่อนอื่นสร้างโครงการจากนั้นคลิกขวาในโครงการด้วยเมาส์-> ใหม่-> โฟลเดอร์; ชื่อโฟลเดอร์: lib; สิ่งนี้สร้าง LIB โฟลเดอร์ในโครงการ จากนั้นนำเข้าแพ็คเกจ ojdbc6.jar ลงในโฟลเดอร์
ที่อยู่ดาวน์โหลดของแพ็คเกจนี้คือ: http://wd.vevb.com:81//201612/yuanma/ojdbc6_jb51.rar
ย้ายเมาส์ไปยังแพ็คเกจ คลิกขวา-> Build Path-> เพิ่มไปยัง Build Path;
2. สร้างคลาสและเริ่มการเข้ารหัส
นำเข้า java.sql.Connection; นำเข้า Java.sql.DriverManager นำเข้า java.sql.preparedStatement; นำเข้า java.sql.resultset; นำเข้า java.sql.resultsetmetadata; 192.168.0.x เป็นที่อยู่ดั้งเดิม (เพื่อเปลี่ยนเป็นที่อยู่ IP ของคุณเอง), หมายเลขพอร์ต 1521, XE เป็นชื่อฐานข้อมูลเริ่มต้นของเวอร์ชันที่เรียบง่ายของ Oracle Private String String UserNAMR = "ORCL"; รหัสผ่านสตริงคงที่ส่วนตัว = "ORCL"; กลยุทธ์คงที่ส่วนตัว drvier = "oracle.jdbc.oracledriver"; url สตริงแบบคงที่ส่วนตัว = "JDBC: Oracle: Thin:@192.168.0.x: 1521: XE"; // สร้างการเชื่อมต่อการเชื่อมต่อฐานข้อมูลการเชื่อมต่อ = null; // สร้างวัตถุคำสั่ง precompiled โดยทั่วไปใช้สิ่งนี้แทนคำสั่ง PreparedStatement PSTM = NULL; // สร้างผลลัพธ์ชุดผลลัพธ์ชุดผลลัพธ์ rs = null; / *** เพิ่มข้อมูลลงในฐานข้อมูล* ก่อนอื่นรับจำนวนข้อมูลทั้งหมดในตารางหมายเลขทั้งหมด +1 คือค่า id ของข้อมูลที่เพิ่มใหม่* @param stuname: ชื่อนักเรียน* @param เพศ: เพศของนักเรียน 1 หมายถึงผู้ชาย 2 หมายถึงผู้หญิง* @param อายุ // string sql = // "แทรกลงในค่านักเรียน ('1', 'Wang Xiaojun', '1', '17', 'Gate 7, อาคาร 30, Depingli District 7, Beijing"); String SQL = "เลือกนับ (*) จากนักเรียนโดยที่ 1 = 1"; String sqlstr = "แทรกลงในค่านักเรียน (?,?,?,?,?,?)"; จำนวน int = 0; ลอง {// คำนวณจำนวนข้อมูลทั้งหมดในตารางฐานข้อมูลนักเรียน PSTM = Connection.prepareStatement (SQL); RS = PSTM.ExecuteQuery (); ในขณะที่ (rs.next ()) {count = rs.getInt (1) + 1; System.out.println (Rs.getInt (1)); } // ดำเนินการการแทรกข้อมูลการแทรก PSTM = การเชื่อมต่อ PREPRepRepReatement (SQLSTR); pstm.setint (1 นับ); pstm.setstring (2, stuname); PSTM.SetInt (3 เพศ); pstm.setint (4, อายุ); PSTM.SetString (5, ที่อยู่); PSTM.ExecuteUpdate (); } catch (sqlexception e) {e.printstacktrace (); } ในที่สุด {releaseresource (); }} / *** ลบข้อมูลไปยังฐานข้อมูล* @param stuname: ลบข้อมูลตามชื่อ* / โมฆะสาธารณะ deletedata (สตริง stuname) {connection = getConnection (); String sqlstr = "ลบจากนักเรียนที่ stu_name =?"; System.out.println (stuname); ลอง {// ดำเนินการลบข้อมูลการดำเนินการ pstm = connection.prepareStatement (SQLSTR); PSTM.SetString (1, Stuname); PSTM.ExecuteUpdate (); } catch (sqlexception e) {e.printstacktrace (); } ในที่สุด {releaseresource (); }} / ** * แก้ไขข้อมูลไปยังฐานข้อมูล * @param stuname: ชื่อนักเรียน, สอบถามค่าของแถวที่จะแก้ไขตามค่านี้ * @param เพศ * @param อายุ * @param ที่อยู่ * / โมฆะสาธารณะอัปเดต String sql = "เลือก ID จากนักเรียนที่ 1 = 1 และ stu_name =?"; String SQLSTR = "อัปเดตชุดนักเรียน stu_name =?, gender =?, age =?, address =? ที่ไหน id =?"; จำนวน int = 0; ลอง {// คำนวณจำนวนข้อมูลทั้งหมดในตารางฐานข้อมูลนักเรียน PSTM = Connection.prepareStatement (SQL); PSTM.SetString (1, Stuname); RS = PSTM.ExecuteQuery (); ในขณะที่ (rs.next ()) {count = rs.getInt (1); System.out.println (Rs.getInt (1)); } // ดำเนินการแทรกการทำงานของข้อมูล PSTM = การเชื่อมต่อการเตรียมการตั้งค่า (SQLSTR); PSTM.SetString (1, Stuname); PSTM.SetInt (2 เพศ); pstm.setint (3, อายุ); PSTM.SetString (4, ที่อยู่); PSTM.SetInt (5, นับ); PSTM.ExecuteUpdate (); } catch (sqlexception e) {e.printstacktrace (); } ในที่สุด {releaseresource (); }} / *** ข้อมูลการสืบค้นในฐานข้อมูล* / โมฆะสาธารณะ selectData () {connection = getConnection (); String sql = "เลือก * จากนักเรียนที่ 1 = 1"; ลอง {pstm = connection.prepareStatement (SQL); RS = PSTM.ExecuteQuery (); ในขณะที่ (rs.next ()) {string id = rs.getString ("id"); ชื่อสตริง = rs.getString ("stu_name"); สตริงเพศ = rs.getString ("เพศ"); อายุสตริง = rs.getString ("อายุ"); String address = Rs.getString ("ที่อยู่"); System.out.println (id + "/t" + ชื่อ + "/t" + เพศ + "/t" + อายุ + "/t" + ที่อยู่); }} catch (sqlexception e) {e.printstacktrace (); } ในที่สุด {releaseresource (); }} / *** ใช้ ResultSetMetAdata เพื่อคำนวณจำนวนคอลัมน์* / โมฆะสาธารณะ SelectData2 () {Connection = getConnection (); String SQL = "เลือก * จากพนักงานที่ 1 = 1"; จำนวน int = 0; ลอง {pstm = connection.prepareStatement (SQL); RS = PSTM.ExecuteQuery (); ในขณะที่ (rs.next ()) {count ++; } resultsetMetAdata rsmd = rs.getMetAdata (); int cols_len = rsmd.getColumnCount (); System.out.println ("count =" + count + "/tcols_len =" + cols_len); } catch (sqlexception e) {e.printstacktrace (); } ในที่สุด {releaseresource (); }} / ** * รับวัตถุการเชื่อมต่อ * * @return * / การเชื่อมต่อสาธารณะ getConnection () {ลอง {class.forName (drvier); การเชื่อมต่อ = driverManager.getConnection (URL, USERNAMR, รหัสผ่าน); System.out.println ("เชื่อมต่อกับฐานข้อมูลได้สำเร็จ"); } catch (classnotFoundException e) {โยน runtimeException ใหม่ ("คลาสไม่พบ!", e); } catch (sqlexception e) {โยน runtimeException ใหม่ ("รับข้อผิดพลาดการเชื่อมต่อ!", e); } ส่งคืนการเชื่อมต่อ; } / *** ทรัพยากรรีลีส* / โมฆะสาธารณะ releaserEsource () {ถ้า (rs! = null) {ลอง {rs.close (); } catch (sqlexception e) {e.printstacktrace (); }} if (pstm! = null) {ลอง {pstm.close (); } catch (sqlexception e) {e.printstacktrace (); }} if (การเชื่อมต่อ! = null) {ลอง {connection.close (); } catch (sqlexception e) {e.printstacktrace (); -3. สร้างคลาสทดสอบ
การทดสอบระดับสาธารณะ {โมฆะคงที่สาธารณะหลัก (สตริง [] args) { /*** เพิ่มเติม, การลบ, การปรับเปลี่ยนและการค้นหาเสร็จสมบูรณ์ แต่มีข้อ จำกัด บางประการ* 1 ไม่มีปัญหาใหญ่กับการเพิ่ม* 2. การลบต้องให้ค่าที่จะลบ */// สร้าง OperateOracle Object OperateOracle OO = new OperateOracle (); // ทดสอบการดำเนินการข้อมูล // oo.adddata ("Sun Yat-Sen", 1, 25, "No. 111, Hongqi Road, Haidian District, Beijing"); // ทดสอบการทำงานของข้อมูล // oo.deletedata ("Sun Yat-Sen"); // การทดสอบการอัพเดทข้อมูลการทำงาน OO.updatedata ("Sun Yat-Sen", 1, 30, "no. 11 Yueshan Road, Dongcheng District, Beijing"); // ทดสอบข้อมูลการสอบถามข้อมูล // oo.selectdata (); // test resultsEtMetAdata class // oo.selectData2 (); -ตามที่ระบุไว้ในคลาสทดสอบคุณสามารถเชื่อมต่อกับฐานข้อมูล Oracle ในวิธีที่ถูกต้องและดำเนินการเพิ่มเติมการลบการปรับเปลี่ยนและการดำเนินการค้นหา แต่กลไกการประมวลผลสำหรับการดำเนินการที่ไม่ถูกต้องบางอย่างไม่สมบูรณ์แบบเพียงพอ
ข้างต้นเป็นเนื้อหาทั้งหมดของบทความนี้ ฉันหวังว่าเนื้อหาของบทความนี้จะช่วยในการศึกษาหรือทำงานของทุกคน ฉันหวังว่าจะสนับสนุน Wulin.com เพิ่มเติม!