此内容来自专业的实训课,有错误欢迎指出。
一:配置环境变量
此电脑---右键-----属性---选择高级系统设置-----选择环境变量
(1)加一个系统变量 DERBY_HOME %JAVA_HOME%DB
(2)双击path %DERBY_HOME%\BIN
(3)改Java_HOME的环境变量路径为db的存放位置。
二:在命令行CMD输入ij看是否成功(没有报错)
(1)先执行ij
(2)建立一个数据库:connect'jdbc:derby:数据库的名字;create=true|false' 注意如果是已经存在的数据库前面的语句就可以不带create=true|false了。
(3)建一个表(名字为mess):create table mess(number char(10) primary key,name varchar (20),birth date,price double);
(4)之后可以进行一些数据库操作了:
查询:select * from mess;
select name,price from mess;
插入:insert into mess value('2','中档狗','2020-01-11','1010');
更新:update mess set price=2999 where number='3';
update mess set name='中档狗' where price<2000 and price>=1000;
删除:delete from mess where number='2';
三:网络derby数据库
(1)首先执行 startNetworkServer (注意:在哪启动就在哪连接)
(2)执行ij
(3)connect'jdbc:derby://127.0.0.1:1527//dog;create=true';(127.0.0.1:1527是IP地址加端口号,dog是数据库的名字)
这次的任务是做这样的一个简单的驾考管理系统:
首先如何通过代码进行与数据库的操作呢,举一个查询的例子:
package sdtbu_java_shixun;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Statement;
public class Query {
private String databasename;
private String SQL;
private String columnname[];
private String record[][];
private Connection con;
private String uri="jdbc:derby:";
public Query() {
super();
// TODO Auto-generated constructor stub
try {
//加载驱动
Class.forName("org.apache.derby.jdbc.EmbeddedDriver");
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public String getDatabasename() {
return databasename;
}
public void setDatabasename(String databasename) {
this.databasename = databasename;
}
public String getSQL() {
return SQL;
}
public void setSQL(String sQL) {
SQL = sQL;
}
public String[] getColumnname() {
return columnname;
}
public void setColumnname(String[] columnname) {
this.columnname = columnname;
}
public String[][] getRecord() {
return record;
}
public void setRecord(String[][] record) {
this.record = record;
}
public void startQuery() {
Statement smt;
ResultSet rs;
ResultSetMetaData metadate;
if(databasename !=null) {
uri+=databasename;
try {
//创建连接
con=DriverManager.getConnection(uri);
//创建连接
smt=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_READ_ONLY);
//执行sql语句
rs=smt.executeQuery(SQL);
metadate=rs.getMetaData();
int clumns=metadate.getColumnCount();
columnname=new String[clumns];
for(int i=0;i<clumns;i++)
columnname[i]=metadate.getColumnName(i+1);
rs.last();//跑到最后查询有几条记录
record =new String[rs.getRow()][clumns];
int j=0;
rs.beforeFirst();//到记录的最前面
while(rs.next()) {
for(int i=1;i<=clumns;i++)
record[j][i-1]=rs.getString(i);
j++;
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
con.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
所以只要是有了数据库的名字和SQL语句就可以执行了。插入和更新其实是跟查询差不多的。
可以去我的gethup上面去看最终的代码,采用的是javafx写的界面:代码 点击Add files via upload即可进入
实现的功能有查询、删除、更新、里面还有一个最终的课程设计报告设计报告,里面有解释和成品。
来源:CSDN
作者:ZCY19990813
链接:https://blog.csdn.net/ZCY19990813/article/details/103937606