Navicat函数和过程(Function, Produce)使用总结
1.Navicat运行函数输入参数时,什么都不填和填NULL是不一样的,具体可以通过Print打印,或者自己去尝试.
(1)比如执行如下的语句,什么都不输入:
PRINT('nChannelAddr') //注意打印字符串要用单引号. PRINT(@nChannelAddr) PRINT('sSAMSTag') PRINT(@sSAMSTag)
把nChannelAddr和SAMSTag进行打印,结果如下:
发现int类型被赋值为了0,而char类型的估计赋值为了空字符串''.
(2)而如果选择输入NULL,打印结果如下:
因为都是NULL,所以不显示吧?
2.创建函数时,采用默认的sys模式,这个是系统定义的类型,莫把其当做了数据库的表名.
创建生成的函数红框中的元素要有,分别代表函数名,入参类型,返回值类型.
注意如果在写SQL语句的过程中想要改变参数或者返回值的类型,直接在语句中修改.比如把int类型的n改为vchar类型的s.
3.使用函数可以返回数据库表:https://www.cnblogs.com/Stephen-Qin/p/12493382.html
4.比如创建过程p1时,一开始会显示类似:
CREATE PROCEDURE [dbo].[p1]
保存之后,就会变成:
ALTER PROCEDURE [dbo].[p1]
此时不可以去更改过程的名字了,已经固定了。若更改会报“Inbalid object name”的错误
tip: 如果不知道一些错误的原因,可以再创建一个例子,对比下差别。
新战场:https://blog.csdn.net/Stephen___Qin