日期:2014-05-16 浏览次数:20509 次
在合作开发前还是把在做牛腩发布系统过程中, 复习到的数据库的知识,,曾经单粒的沙子打包进去好 。所以把存储过程入包.。
简单的来说存储过程,就是一个sql语句的结合,存储过程和sql语句没有区别,就是把多条sql语句封装起来了,成为我们程序中独立功能模块。
百度百科是这样说的,很是专业和全面:http://baike.baidu.com/view/68525.htm 所以就不赘述了。
为什么使用存储过程?因为比sql语句执行的速度快。为什么叫存储过程?存储的是一些sql的罗列,是依次执行多个sql语句的过程。
如何创建存储过程?
创建存储过程实例。
语法为:
CREATE PROCedure[owner.]procedure_name[;number] [(parameter1[,parameter2]...[parameter255])] [{FOR REPLICATION}|{WITH RECOMPILE} [{[WITH]|{,}ENCRYPTION]] AS sql_statements |
-- ============================================= -- Author: HaiFang -- Create date: 2012-7-19 -- Description: 根据内容搜索新闻。 -- ============================================= ALTER PROCEDURE [dbo].[news_selectByContent] @content varchar(1000) AS BEGIN select top 10 n.id,n.title ,n.createTime,c.[name] from news n inner join category c on n.caId =c.id --查询的内容。 where n.content like '%' + @content + '%' order by n.createTime desc END
其他的编程语言如何调用存储过程? 把sql语句的名字换成存储过程的名字。
带参数的存储过程,更方便的查询。在asp.net中调用带参数的存储过程。
// 根据新闻类别的caId取出该类别下的所有新闻。 public DataTable SelectBycaId(string caId) { DataTable dt = new DataTable(); //传递存储过程中的参数. string procName = "news_selectById"; SqlParameter[] paras = new SqlParameter[] { new SqlParameter("@caid", caId) }; dt = sqlhelper.ExecuteQuery(procName, paras, CommandType.StoredProcedure); return dt; }
存储过程的优点是:
1.在执行重复任务时能提高效率;
2.使前端的应用程序共享应用逻辑;
3.可以永久创建,也可以临时创建;
4.可以在SQL Server启动时自动执行。
我想很多人都会有这样的感觉,在看第一遍专业的文字我们往往是充满恐惧的,因为我们对未知陌生是恐惧的。虽然被专业文字的准确 生动 形象所折服, 但往往是被他吓倒,要想看懂专业文字方法有 :一是多看它几遍不一定懂,只要熟悉就好,二是仔细看的时候要把专业的"文言文"翻译成自己的"白话文", 这样才是忘不掉的,变成自己的才是忘不掉的.