Java中调用SQLServer存储过程示例

文章作者 100test 发表时间 2007:09:06 11:53:45
来源 100Test.Com百考试题网


  最近做了个Java的小项目(第一次写Java的项目哦), 到网上搜索了半天,找到了一个比较好点的调用存储过程的例子,而且网上普遍采用的都是setXXX((int parameterIndex, XXX x)的形式。这种形式感觉不是很直观,下面就发布一个完整的采用setXXX(String parameterName, XXX x)的编写方法。创建数据表,存储过程的代码都完整发布。

  创建表:

CREATE TABLE [BookUser] (
[UserID] [int] IDENTITY (1, 1) NOT NULL ,
[UserName] [varchar] (50) COLLATE Chinese_PRC_CI_AS NOT NULL ,
[Title] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NOT NULL ,
[Guid] [uniqueidentifier] NOT NULL CONSTRAINT [DF_BookUser_Guid] DEFAULT (newid()),
[BirthDate] [datetime] NOT NULL ,
[Description] [ntext] COLLATE Chinese_PRC_CI_AS NOT NULL ,
[Photo] [image] NULL ,
[Other] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL CONSTRAINT
[DF_BookUser_Other] DEFAULT (默认值),
CONSTRAINT [PK_BookUser] PRIMARY KEY CLUSTERED
(
[UserID]
)
ON [PRIMARY]
)
ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO

  创建存储过程:

CREATE PROCEDURE InsertUser
@UserName varchar(50),
@Title varchar(255),
@Guid uniqueidentifier,
@BirthDate DateTime,
@Description ntext,
@Photo image,
@Other nvarchar(50),
@UserID int output
As

Set NOCOUNT ON
If Exists (0select UserID from BookUser Where UserName = @UserName)
RETURN 0
ELSE
Begin
INSERT INTO BookUser (UserName,Title,Guid,BirthDate,Description,Photo,Other) VALUES(@UserName,@Title,@Guid,@BirthDate,@Description,@Photo,@Other)
SET @UserID = @@IDENTITY
RETURN 1
End
GO


相关文章


ring2.X中AOP的使用浅析
Java程序员需要了解的几个开源协议
Ecli e插件开发中实现刷新和重编译
Java实战篇:设计自己的A otation
Java中调用SQLServer存储过程示例
Java中消除实现继承和面向接口编程
初学者如何开发出高质量的J2EE系统
让JavaME程序真正RunAnywhere
Struts终结者?对比组件框架技术tapestry
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛