日期:2014-05-17  浏览次数:20491 次

类似动软代码生成器的存储过程
       
       在开发小项目时,经常会遇到很多的对表的增删改查操作,无外乎就是些增删改查的存储过程和c#调用代码。这些很大程度上都差不多,不厌其烦,用代码生成器,有时候又觉得不太灵活。有很多地方还要改动,比较麻烦。所以就偷了个懒,自己写了个存储过程,专门用来自动生成这些代码。分享下,如果大家在使用过程中发现有不好的地方,也可以指出来,好改正改正。。。

      自动生成代码的存储过程URL:http://download.csdn.net/source/3031230

      
      先将该存储过程下载下来,在数据库中创建后,就可以通过该存储过程来生成代码了。
       
      示例如:
      

/*通过存储过程自动生成对Employee表进行增、删、改、查操作的存储过程,示例如下:*/
/*在数据库中创建测试表*/
CREATE TABLE Employee(
[id] [int] IDENTITY(1,1) PRIMARY KEY NOT NULL,
[name] varchar(50) NULL,
[sex] [varchar](2) NULL,
[phone] [varchar](20) NULL,
[city] [varchar](20) NULL,
[address] [varchar](100) NULL
 )
 go
 


--1、增加操作
--A、增加时添加所有字段(除主键外)
--自动生成添加存储过程 
exec sp_SendCode 'Employee',@opertype=2
go
--自动生成对应的c#调用代码
exec sp_SendCode 'Employee',@type=2,@opertype=2
go

--B、如果增加操作时只添加部分字段,可以给@fields参数进行赋值,如只添加"姓名",“性别”,“电话”字段(如果在@fields参数中,存在无效字段,则会自动过滤掉)
--自动生成添加存储过程 
exec sp_SendCode 'Employee',@opertype=2,@fields='name,sex,phone'
go

--自动生成对应的c#调用代码
exec sp_SendCode 'Employee',@opertype=2,@type=2,@fields='name,sex,phone'
go





--2、删除操作
--A、根据表中的主键进行删除
--自动生成删除存储过程 
exec sp_SendCode 'Employee',@opertype=4
go
--自动生成对应的c#调用代码
exec sp_SendCode 'Employee',@opertype=4,@type=2
go


--B、根据表中指定字段作为条件删除,则指定@where参数的值即可,如根据"name"和"sex"字段删除,多个字段用逗号隔开
--自动生成删除存储过程 
exec sp_SendCode 'Employee',@opertype=4,@where='name,sex'
go
--自动生成对应的c#调用代码
exec sp_SendCode 'Employee',@opertype=4,@type=2,@where='name,sex'
go








--3、查询示例:为了减少代码,由存储过程自动生成的代码我就不贴了
--A、查询所有数据
--自动生成查询存储过程
exec sp_SendCode 'Employee',@opertype=1
go
--生成对应的c#调用代码
exec sp_SendCode 'Employee',@opertype=1,@type=2
go

--B、根据条件查询部分数据,条件字段用逗号隔开
--自动生成查询存储过程
exec sp_SendCode 'Employee',@opertype=1,@where='name'
--生成对应的c#调用代码
exec sp_SendCode 'Employee',@opertype=1,@type=2,@where='name'
go

--C、根据主键字段查询单条数据
--自动生成查询存储过程
exec sp_SendCode 'Employee',@opertype=1,@where='id'
--生成对应的c#调用代码
exec sp_SendCode 'Employee',@opertype=1,@type=2,@where='id'







--4、修改(和增加类似,大家自己去试吧。写累了)