1

我正在开发一个原型,我可以在其中动态访问 SQL 服务器。表名和列名应该在运行时可配置。

例如:如果选择表或插入记录,我应该将这些值传递给带有表名、列名和参数的原型类。班级应该负责其余的工作。

我正在尝试建立该课程。

关于建议的开始步骤的建议。

谢谢

4

2 回答 2

0

也许这很有用...
//方法

 public void insertCheque()
            {

         try {     

            SqlParameter[] param = new SqlParameter[5];
            param[0] = new SqlParameter("@IdBankChequeBook", SqlDbType.Int);
            param[1] = new SqlParameter("@IdBankChequeType", SqlDbType.Int);
            param[2] = new SqlParameter("@IdBankChequeStatus", SqlDbType.Int);
            param[3] = new SqlParameter("@TransType",SqlDbType.Int);
            param[4] = new SqlParameter("@ClientID",SqlDbType.Int);

//向存储过程发送sql参数

 SqlHelper.ExecuteNonQuery(Connecting.LCM, CommandType.StoredProcedure, "InsertBankCheque",param); 



        }
        catch (Exception ex)
        {

        }   
    }

//存储过程相关

set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go      
ALTER PROCEDURE [dbo].[InsertBankCheque]    
@IdBankChequeBook int ,
@IdBankChequeType int ,
@IdBankChequeStatus int ,
@TransType int ,
@ClientID int ,
As
    Insert into BankCheque
    (
    IdBankChequeBook,
    IdBankChequeType,
    IdBankChequeStatus,
    TransType ,
    ClientID )   
     values 
        (
        @IdBankChequeBook,
        @IdBankChequeType,
        @IdBankChequeStatus,
        @TransType,  
        @ClientID )
于 2013-03-13T08:30:56.130 回答
0
DECLARE @ColName nvarchar(4000)
DECLARE @TableName nvarchar(4000)
DECLARE @ColName2 nvarchar(4000)
DECLARE @Parameter nvarchar(4000)
set @TableName='tblTest'
set @ColName='ID'
set @ColName2='colValue'
set @Parameter=1

DECLARE @sql nvarchar(4000)
SET @sql = ' SELECT '+@ColName+' from ' + @TableName+ ' where '+@ColName2+'='+@Parameter
exec(@sql)

这就是我正在做的。您可以将上面给定的参数传递给存储过程,这将起到作用

于 2013-01-23T07:34:50.263 回答