• vb.net中存储过程的使用


            在机房收费系统过程中,试着使用了存储过程,离之前数据库的学习已经有些日子了。之前对于存储过程的了解也是听过而已,非常不清楚。因此,写这篇博客!

           专业概念:存储过程是一个SQL语句和控制结构的集合,创建于数据库。简单的说,就是一组固定操作的SQL语句集合,类似于编程语言当中的函数或过程,可以通过名称直接调用。可以通过T-SQL语句和企业管理器创建。T-SQL语法如下:

    CREATE PROCEDURE (创建储存过程) 
    
       CREATE PROCEDURE 存储过程名 (参数列表) 
    
       BEGIN 
    
       SQL语句代码块 
    
       END 

           在vb.net和存储过程的结合有两个非常明显的优点。一是,存储过程的执行速度快。因为存储过程是预编译的。在首次运行一个存储过程时查询,优化器对其进行分析优化,并且给出最终被存储在系统表中的执行计划。二是,存储过程能够减少网络流量,这是因为调用存储过程只需要过程名和参数集合,而直接使用则需要向数据库传递大量的sql语句。另外,安全也是其优点之一,通过执行某一存储过程的权限分配,能够实现对相应的数据的访问权限的限制,避免了非授权用户对数据的访问,保证了数据的安全。 同时也可以避免对数据库操作出现错误,因为它是预编译的。

           vb.net中通过SqlClient.SqlCommand类来调用存储过程:

     command = New SqlClient.SqlCommand(“存储过程名”, New SqlClient.SqlConnection(“连接字符串"))
            command.Connection.Open()
            command.CommandType = CommandType.StoredProcedure
            command.Parameters.AddRange(参数集合)
            command.ExecuteNonQuery()

            其中command.executenoneQuery方法的返回值需要注意,对于 UPDATE、INSERT 和 DELETE 语句,返回值为该命令所影响的行数。对于所有其他类型的语句,返回值为 -1。如果发生回滚,返回值也为 -1。

            存储过程的使用可以优化代码结构,提高编程的灵活性。因为,我们通过存储过程把对数据库的操作独立出来。这符合了解耦和的思想,也符合线程的思想。即将任务划分为功能单一,明确的各个部分。这样也就更好的规避了数据库操作错误对软件的影响。


     

          

  • 相关阅读:
    枚举显示中文问题
    各种计算机体系结构的特点与应用(SMP、MPP等)
    Redis应用
    如果是除去末尾特定字符或字符串:TrimEnd方法性能优于Remove方法
    N笔试题
    PropertyGrid中的枚举显示为中文
    【1.2.3】操作系统性能优化
    【T4实践(一)】模板生成代码入门
    构成计算机的各类部件的功能及其相互关系
    net中String是引用类型还是值类型
  • 原文地址:https://www.cnblogs.com/aukle/p/3225820.html
Copyright © 2020-2023  润新知