java sql在数据库 *** 作正常 但是程序里没有返回值

java sql在数据库 *** 作正常 但是程序里没有返回值,第1张

首先创建连接

就创建个Cnnection对象,然后把驱动加上,还有帐号密码什么的!我没连过sql数据库,不知道驱动,你可以在网上搜一下。

给你一个我连接mysql数据库的例子

public Connection Getdata(){//这是连接数据库的一个方法,还可以配置连接池。

Connection con=null

try {

Class.forName("com.mysql.jdbc.Driver")//加驱动

con=DriverManager.getConnection("jdbc:mysql://localhost:3306/data","root","qq")//数据库路径、端口、库名、数据库用户名和密码

} catch (ClassNotFoundException e) {

e.printStackTrace()

} catch (SQLException e) {

e.printStackTrace()

}

return con

}

public void delete(int id){//对数据库进行 *** 作的方法,先调用上面写好的连接!

Connection con=Getdata()

Statement st

try {

st=con.createStatement()

st.executeUpdate("delete from kaoshi where id="+id)

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace()

}

}

PostgreSQL 存储过程定义格式如下:

■结构 PL/pgSQL是一种块结构的语言,比较方便的是用pgAdmin III新建Function,填入一些参数就可以了。

基本上是这样的:

CREATE OR REPLACE FUNCTION 函数名(参数1,[整型 int4, 整型数组 _int4, ...]) RETURNS 返回值类型 AS $BODY$ DECLARE 变量声明 BEGIN 函数体 END $BODY$ LANGUAGE ‘plpgsql’ VOLATILE

■变量类型 除了postgresql内置的变量类型外,常用的还有 RECORD ,表示一条记录。

■赋值 赋值和Pascal有点像:“变量 := 表达式” 有些奇怪的是连接字符串的是“||”,比如 sql := ‘SELECT * FROM’ || table || ‘WHERE …’

■判断 判断又和VB有些像: IF 条件 THEN … ELSEIF 条件 THEN … ELSE … END IF

■循环 循环有好几种写法: WHILE expression LOOP statements END LOOP 还有常用的一种是:(从1循环到9可以写成FOR i IN 1..9 LOOP) FOR name IN [ REVERSE ] expression .. expression LOOP statements END LOOP

■其他 还有几个常用的函数: SELECT INTO record …表示将select的结果赋给record变量(RECORD类型) PERFORM query表示执行query并丢弃结果 EXECUTE sql表示执行sql语句,这条可以动态执行sql语句(特别是由参数传入构造sql语句的时候特别有用)

--简单的例子:

例1:无返回值

CREATE OR REPLACE FUNCTION 函数名称( 参数1,参数2,...)

AS

$BODY$

DECLARE --定义

BEGIN

INSERT INTO "表名" VALUES(参数1,参数2,...)

END

$BODY$

LANGUAGE 'plpgsql' VOLATILE -- 最后别忘了这个。

例2:有返回值

CREATE OR REPLACE FUNCTION 函数名称(deptcode VARCHAR(20) ,deptname VARCHAR(60) ,pycode VARCHAR(60),isenabled CHAR(1))

RETURNS BOOLEAN --返回值,布尔类型

AS

$body$

DECLARE

deptcode VARCHAR(20)

deptname VARCHAR(60)

pycode VARCHAR(60)

isenabled CHAR(1)

BEGIN

UPDATE "deptDict" SET deptcode=deptcode,deptname=deptname,pycode=pycode,isenabled=isenabled,updatedhisdatetime=CURRENT_TIMESTAMP

WHERE deptcode=deptcode

RETURN TRUE

END

$body$

LANGUAGE 'plpgsql' VOLATILE

最后再加上如何执行这个存储过程(函数)

-- 执行存储过程方法1

SELECT * FROM 函数名称(参数1,参数2,...)

-- 执行存储过程方法2

SELECT 函数名称('0参数1,参数2,...)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9912144.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-03
下一篇 2023-05-03

发表评论

登录后才能评论

评论列表(0条)

保存