请教:使用存储过程的必要性?系统发布给用户后,还要人工对数据库添加存储过程吗?

i169net1 2006-05-31 10:50:06
1、对于复杂的数据库操作,当然是用存储过程好。
但是一些简单的操作,比如插入一条记录INSERT INTO...,这样也值得单独写一个存储过程吗?
如果要插入的字段很多,那岂不要设置很多的输入参数?
很麻烦的样子啊~~~

2、对于返回多个数据集的存储过程,是否直接用 SqlDataAdapter.Fill() DataSet,此DataSet应该有多个Table,将返回这多个数据集?
不知道具体的代码应该这么写?哪位大哥给写一个...谢谢!

3、对于采用了存储过程的系统,发布给用户使用后,还要人工对数据库添加存储过程吗?
还是发布的安装程序会自动设置数据库的啊?

谢谢!
...全文
136 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
kssys 2006-06-02
  • 打赏
  • 举报
回复
1.并非以复杂/不复杂来衡量是否写存储过程。
频繁使用的操作应写成存储过程,这样将加大效率。

2.Fill时可以不写表名。

3.自然是需要加进去的。但是这一步可以通过企业管理器的生成脚本来解决
i169net1 2006-06-02
  • 打赏
  • 举报
回复
Up...
i169net1 2006-06-01
  • 打赏
  • 举报
回复
问题2 、
conn.Open();
string C_name="test2 '06-05-17','0'"; //调用存储过程test2
SqlDataAdapter objAdapter = new SqlDataAdapter(C_name, conn);
DataSet ds=new DataSet();
objAdapter.Fill(ds,"mydb"); //向一个表中填充,但如果返回两个结果集呢?该怎么写?
conn.Close();

如:存储过程:test2----------------
CREATE PROC test2
@year datetime,
@Num int
as
select * from A表 where [year]=@year and [id]=@Num
select * from B表 where [year]=@year and [id]=@Num
GO
i169net1 2006-05-31
  • 打赏
  • 举报
回复
谢谢各位!

问题1、2还是没有回音啊...
大个啊 2006-05-31
  • 打赏
  • 举报
回复
4、在设计存储过程时,是大而全好呢?还是小而精好呢?
比如:多个数据表的关联操作:添加、编辑、删除,可以将这三个功能写在同一个存储过程中,通过不同的输入参数来区分具体的操作要求;
当然也可以将它写成三个独立的存储过程,分别执行添加、编辑、删除操作...

==============================
我一般是把添加、编辑写成一个,删除操作写成一个
szc21 2006-05-31
  • 打赏
  • 举报
回复
我一般是写不同的存储过程,用哪个调哪个,写在一起反儿不好调用
i169net1 2006-05-31
  • 打赏
  • 举报
回复
再问一个问题:
4、在设计存储过程时,是大而全好呢?还是小而精好呢?
比如:多个数据表的关联操作:添加、编辑、删除,可以将这三个功能写在同一个存储过程中,通过不同的输入参数来区分具体的操作要求;
当然也可以将它写成三个独立的存储过程,分别执行添加、编辑、删除操作...

请大家谈谈,到底采用哪种方式更好些?
softdeveloper 2006-05-31
  • 打赏
  • 举报
回复
系统怎么会知道你的存储过程怎么编写的?除非你把数据库一起卖给客户,否则就要手工建立存储过程。
大个啊 2006-05-31
  • 打赏
  • 举报
回复
备份恢复
分离附加

存储过程也是数据库对象,不会丢失的
自然框架 2006-05-31
  • 打赏
  • 举报
回复
1、简单的 insert into 那就直接用 sql语句添加了,我是比较烦使用存储过程的,尤其是简单的。

2、不是太明白。DataSet里面自然会有多个DataTable 了。
DataSet1.Tables[0];
DataSet1.Tables[1];
这么调用呀。


3、手工添加。所以我才不太喜欢存储过程,如果是程序的话,发个包替换文件就可以了。

4、添加修改是一个存储过程。删除吗?呵呵,简单的就直接用sql语句删除了。费那个事呢。
数据库系统的认识 这学期我们开了数据库系统这门课,开课近五周的时间,虽然只学习到第二章,但 是从绪论中我就已经感受到了数据库的强大,有关数据库的内容老师也给我们讲解了很 多,接下来我想来谈谈我对数据库的认识,还望老师批评指正。 我们都知道数据库是数据管理的最新技术,是计算机科学的重要分支。而且对于一个国家 来说,数据库的建模,数据库信息量的大小和使用频度的已成为衡量这个国家信息化程 度的高低的重要标志。所以,数据库系统这门2课时及其重要的,学好它很必要。 数据库最常用的术语有数据(Data)、数据库(DB)、数据库管理系统(DBMS)、数据 库系统(DBS)等,以下是我对它们的理解: 数据(Data):数据是数据库中存储的基本对象。数据的种类很多,文字,图形,图 像,声音,学生的档案记录,货物的运输情况等,这些都是数据。可以对数据做如下定 义:描述事物的符号记录称为数据; 数据库(DB):数据库,顾名思义,是存放数据的仓库。只不过这个仓库是在计算机 存储设备上,而且数据是按一定的格式存放的。所谓数据库是指长期存储在计算机内的 ,有组织的,可共享的数据集合; 数据库管理系统(DBMS):数据库管理系统是位于用户与操作系统之间的一层数据 管理软件。它的主要功能包括:数据定义功能,数据操纵功能,数据库的运行管理,数 据库的建立和维护功能等; 数据库系统(DBS):数据库系统是指在计算机系统中引入数据库后的系统,一般由 数据库数据库管理系统,应用系统数据库管理原和用户构成。 数据库管理技术的产生和发展共经历了三个阶段:人工管理阶段(20世纪50年代中 期以前),文件系统阶段(20世纪50年代后期到60年代中期),数据库系统阶段(20世 纪60年代后期以后)。其特点经历了从数据不能保存,不能共享,不具有独立性,到数 据结构化,共享性高,冗余度低,易扩充,独立性高,由DBMS统一管理和控制的逐步优 化。 数据模型分为两类,一类是概念模型,主要用于数据库设计,一类是逻辑模型和物 理模型,主要用于DBMS的实现。数据模型通常由数据结构、数据操作和完整性约束三部 分组成。 数据库系统的三级模式结构是指数据库系统是由外模式、模式和内模式三级组成, 数据库管理系统在这三级模式之间还提供了两层映像,这样的系统结构保证了数据库系 统中能够具有较高的逻辑独立性和物理独立性。 通过对这些内容的学习,我深刻认识到作为一名计算机专业的学生学好这门课的重 要性与必要性,在接下来的学习中,更会严格要求自己,紧跟老师步伐,下课多加复习 ,遇到不懂的问题将会及时查阅资料或者向老师同学请教。 ----------------------- 对数据库系统的认识全文共2页,当前为第1页。 对数据库系统的认识全文共2页,当前为第2页。

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧