看到这个名词的时候相信大家都不会陌生,但是关于它自己都了解哪些呢?比如说怎么就出现了它呢?它是由什么组成的呢?它是如何发生效果的呢?
组成:
关于存储过程官方的解释是说它是放在服务器上的预先编译好的SQL语句。看到这里,作为文科生的人可能又要迷糊了,什 么是服务器呀?为什么叫预先编译好的SQL语句呀?它又是在哪里编译呢?
如何建立:
下面让我一个个来解答上述问题。以我现在的菜鸟经验看来,服务器就是一台电脑,只不过这台电脑能干的事情比我们普 通的电脑能干的事情要多。预先编译好的SQL语句就是提前写好的SQL语句,它是放在数据库里边的。举个例子来说,我现 在用的是SQL数据库。看下面的图,可能会更加的清楚。
先是打开数据库,然后选中自己的数据库,在“可编程性”这一栏里面有存储过程这个项,然后右击就可以建立一个存储过程了。
格式:
这样一个存储过程就建立好了,最后执行一次就OK了。
如何发生效果的呢?
就像一把钥匙打开一扇门一样,这里存储过程的名字就是你用来和自己的程序发生交互的钥匙,但是钥匙眼在哪呢?很简单,原来写我们都写那个什么str="select * from 表",现在只要写成str="存储过程的名字"。
为什么会有存储过程?
现在机房收费系统正在紧锣密鼓地进行当中,很多的时候我们需要操作的不是单独的一张表,而是很多张表,有时候甚至是更新一张表,然后在另外一张表里插入一条数据等操作。简而言之,存储过程就是为了更加方便的解决多表的多操作。
使用存储过程的优缺点?
从上面的例子来看,它让我们很容易的就解决了多表多操作的问题,但是大家想想我如果换了一个数据库,用Oracl那么这些存储过程又需要重新写一遍,那岂不是很麻烦。所以我们可以看到存储过程的复用性很低。当然任何事物都有两面性,我们要做的就是放大他的优点。
学习的反思:
这一部分的学习停留了很久,看到这个名词的时候我都不知道从何下手。但是昨天的讲课让我真的意识到了自己的问题出在了哪里?首先,要从心态上藐视问题,然后从战略上宏观把握问题。那如何做到宏观把握呢?多问问自己几个问题,把问题的出生、发展、将来弄清楚之后,我相信你会觉得顿时豁然开朗许多。