sql: MySQL and Microsoft SQL Server Stored Procedures IN, OUT using csharp code

MySQL存储过程:

#插入一条返回值
DELIMITER $$
DROP PROCEDURE IF EXISTS `geovindu`.`proc_Insert_BookKindOut` $$
CREATE PROCEDURE `geovindu`.`proc_Insert_BookKindOut` (IN param1Name NVarChar(1000),IN param1Parent Int,OUT ID INT)
BEGIN
     IF NOT EXISTS (SELECT * FROM BookKindList WHERE BookKindName=param1Name) then   #如果存在相同的记录,不添加
        INSERT INTO BookKindList (BookKindName,BookKindParent)VALUES(param1Name ,param1Parent);
        #set ID=Last_insert_id()
        SELECT LAST_INSERT_ID() into ID;
      end if;
END $$
DELIMITER ;

Microsoft SQL Server存储过程

--插入一条返回值
IF EXISTS (SELECT * FROM sysobjects WHERE [name] = 'proc_Insert_BookKindOut')
DROP PROCEDURE proc_Insert_BookKindOut
GO
CREATE PROCEDURE proc_Insert_BookKindOut
(
	--@BookKindID Int,
	@BookKindName NVarChar(1000),
	@BookKindCode varchar(100),
	@BookKindParent Int,
	@BookKindID int output
)
AS
IF NOT EXISTS (SELECT * FROM BookKindList WHERE [BookKindName]=@BookKindName)
BEGIN
INSERT INTO BookKindList
(
	[BookKindName] ,
	[BookKindCode],
	[BookKindParent]
)
	VALUES
(
	@BookKindName ,
	@BookKindCode,
	@BookKindParent
)
select @BookKindID=@@IDENTITY
END
GO

csharp 读取MySQL存储过程:

 /// <summary>
        /// 追回返回值
        /// </summary>
        /// <param name="bookKindList"></param>
        /// <param name="id"></param>
        /// <returns></returns>
        public int InsertBookKindOut(BookKindListInfo bookKindList,out int id)
        {
            int ret = 0;
            int tid = 0;
            try
            {
                MySqlParameter[] par = new MySqlParameter[]{
				new MySqlParameter("?param1Name",MySqlDbType.VarChar,1000),
				new MySqlParameter("?param1Parent",MySqlDbType.Int32,4),
                new MySqlParameter("?ID",MySqlDbType.Int32,4),
				};
                par[0].Value = bookKindList.BookKindName;
                par[1].Value = bookKindList.BookKindParent;
                par[2].Direction = ParameterDirection.Output;
                ret = MySqlHelpDu.ExecuteSql("proc_Insert_BookKindOut", CommandType.StoredProcedure, par);
                if (ret > 0)
                {
                    tid = (int)par[2].Value;
                }
            }
            catch (MySqlException ex)
            {
                throw ex;
            }
            id = tid;

            return ret;
        }

csharp 读取Microsoft SQL Server存储过程

        /// <summary>
        /// 追加记录返回值
        /// </summary>
        /// <param name="bookKindList"></param>
        /// <param name="iout"></param>
        /// <returns></returns>
        public int InsertBookKindOut(BookKindListInfo bookKindList,out int iout)
        {
            int ret = 0;
            int tou = 0;
            try
            {
                SqlParameter[] par = new SqlParameter[]{
				new SqlParameter("@BookKindName",SqlDbType.NVarChar,1000),
				new SqlParameter("@BookKindParent",SqlDbType.Int,4),
                new SqlParameter("@BookKindID",SqlDbType.Int,4),
				};
                par[0].Value = bookKindList.BookKindName;
                par[1].Value = bookKindList.BookKindParent;
                par[2].Direction = ParameterDirection.Output;
                ret = DBHelper.ExecuteSql("proc_Insert_BookKindOut", CommandType.StoredProcedure, par);
                if (ret > 0)
                {
                    tou =(int)par[2].Value;
                }
            }
            catch (SqlException ex)
            {
                throw ex;
            }
            iout = tou;
            return ret;
        }

 

 

时间: 2024-09-04 16:41:00

sql: MySQL and Microsoft SQL Server Stored Procedures IN, OUT using csharp code的相关文章

MySQL 和 Microsoft SQL server一样吗

问题描述 MySQL和MicrosoftSQLserver一样吗C#能和mysql连接吗? 解决方案 解决方案二:MySQL和MicrosoftSQLserver一样吗不一样MySQL现在是甲骨文的东西MicrosoftSQLserver简称MsSQL,是微软的东西C#能和mysql连接吗?能,去mysql的官网下载.net版本的connector,然后根据附带的教程学习解决方案三:1.一个是微软的,一个是oracle的.2..net无所不能解决方案四:能连,给你个东西,MySql.Data.d

将MySQL迁移到Microsoft SQL Server 2000 (一)

mysql|server 将MySQL迁移到Microsoft SQL Server 2000 摘要 本白皮书描述了 Microsoft SQL Server 2000 的迁移能力,并提供了帮助开发人员将 MySQL 数据库迁移到 SQL Server 2000 的特定信息. 引言 本指南解释如何利用几个内置的 SQL Server 工具和实用程序将 MySQL 迁移到 Microsoft? SQL Server? 2000.它还提供了如何修改 MySQL 应用程序,使之与 SQL Server

《SQL初学者指南(第2版)》——1.2 Microsoft SQL Server、MySQL和Oracle

1.2 Microsoft SQL Server.MySQL和Oracle 尽管我们的目标是介绍SQL的核心语言,因为它适用于所有的实现,但是,我也会提供SQL语法的一些具体示例.由于各个厂商的语法各异,我决定重点关注如下这3种数据库所使用的SQL语法: Microsoft SQL Server: Oracle: MySQL. 大多数情况下,这些数据库有着相同的语法.然而,偶尔也会有所不同.如果这3种数据库之间有任何的差异,本书的正文中将会采用Microsoft SQL Server的语法,我会

《SQL初学者指南》——1.3 Microsoft SQL Server、Oracle和MySQL

1.3 Microsoft SQL Server.Oracle和MySQL SQL初学者指南尽管我的目标是介绍SQL的核心语言,因为它适用于所有的实现,但是我也会提供SQL语法的一些具体示例.因为各个厂商的语法各异,所以我决定重点关注如下这3种数据库所使用的SQL语法: Microsoft SQL Server:Oracle:MySQL.我会在本书的正文中介绍Microsoft SQL Server的语法.然后,如果这3种数据库之间有任何的差异,我会像下面这样,专门指出MySQL或Oracle的

把Oracle数据库移植到Microsoft SQL Server 7.0

oracle|server|数据|数据库  把Oracle数据库移植到Microsoft SQL Server 7.0 摘要:本文是为那些想把自己的Oracle应用程序转换为Microsoft SQL Server应用程序的开发人员编写的.本文描述了一个成功的转换所需要的工具.过程和技术.同时强调了建立高性能.高度并行的SQL Server应用程序的基本的设计要素. 本文的读者应该具有: Oracle关系型数据管理系统(RDBMS)的坚实基础. 普通数据库管理知识. 熟悉Oracle SQL和P

Oracle 和 MIcrosoft SQL 的不同

oracle 还是有很多的不同,转贴如下:http://www.bristle.com/Tips/SQL.htm#Oracle%20Tips  Table of Contents:Oracle Tips SQL Tips SELECT * and more Materialized View PL/SQL Tips SQL Navigator Tips See Also MS SQL Server Tips SQL Tips Dynamic SQL in a Stored Procedure S

将MySQL迁移到Microsoft SQL Server 2000 (二)

mysql|server 用于数据迁移的 MySQL 工具 MySQL 提供了几个客户端工具和实用程序,最常用的有: mysql - 一个交互式客户程序,可以对数据库发布查询并查看结果 mysqldump - 此工具可以提取 MySQL 数据库中的架构和数据,并放到一个文件中 mysqlimport - 此工具可以读取文件中的架构和数据,并放到一个 MySQL 数据库中 mysqladmin - 此工具可以执行管理任务,比如创建数据库和删除数据库 myODBC - 一个 32 位的开放式数据库连

Microsoft SQL Server 7.0 的数据迁移到MySQL上的一种方法(转)

mysql|server|数据   想必大家都很喜欢用Word打字,用Excel进行计算和规划,用PowerPoint作幻灯片进行展示-,但是这只用到了Office系列产品的很少的一部分功能.据调查,绝大部分用户只用到了Office产品的20%的功能,很少有人注意到Visual Basic for Application.实际上,熟悉掌握VBA的功能可以使你的工作事半功倍,尤其对会计.金融等专业来说,作出一套好的宏,几乎可以作到一劳永逸!最近,AutoCAD中也加入了VBA的功能,这不能不说这是

Microsoft SQL Server 7.0 的数据迁移到MySQL上的一种方法(转)-数据库相

    想必大家都很喜欢用Word打字,用Excel进行计算和规划,用PowerPoint作幻灯片进行展示-,但是这只用到了Office系列产品的很少的一部分功能.据调查,绝大部分用户只用到了Office产品的20%的功能,很少有人注意到Visual Basic for Application.实际上,熟悉掌握VBA的功能可以使你的工作事半功倍,尤其对会计.金融等专业来说,作出一套好的宏,几乎可以作到一劳永逸!最近,AutoCAD中也加入了VBA的功能,这不能不说这是一个趋势!    VBA的功