java怎么挪用mysql中的存储过程呢,把返回的记实集显示出来。下面举例申明java的sql的用法。我写的经验对你进修java有帮忙的话,给我投票、点赞或者保藏!
新建一个swt-java项目,项目标名称为javasql。
把mysql的java驱动加载到项目中。mysql-connector-java-5.1.22-bin.jar
在项目中新建一个shell窗口。
添加java代码,链接mysql数据库:
try {
Class.forName("com.mysql.jdbc.Driver");
conn=DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=utf-8;","root","123456");
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
在窗体中增入table组件,用来显示存储过程的数据。
我在mysql中test数据库界说了一个“cunchugc”过程,返回两条数据:
CREATE DEFINER=`root`@`localhost` PROCEDURE `cunchugc`()
BEGIN
SELECT '张三','男','25','c1','12345678' UNION
SELECT '李四','男','38','a1','36998521';
END$$
怎么挪用存储过程呢,把过程返回的数据显示到表格中,下图是运行成果。
try {
Class.forName("com.mysql.jdbc.Driver");
conn=DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=utf-8;","root","123456");
Statement st=conn.createStatement();
ResultSet re=st.executeQuery("call cunchugc()"); //存储过程
while (re.next()){
TableItem ti=new TableItem(table,SWT.NONE);
ti.setText(0, re.getString(1));
ti.setText(1, re.getString(2));
ti.setText(2, re.getString(3));
ti.setText(3, re.getString(4));
ti.setText(4, re.getString(5));
}
re.close();
st.close();
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
0 篇文章
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!