我想创建临时表并通过存储过程插入数据 [英] I want to create temporary table and insert data through store procedure

查看:86
本文介绍了我想创建临时表并通过存储过程插入数据的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

先生

i want to create temporary table and  insert data through store procedure and query 







<pre>Alter PROCEDURE  dbo.sp_ExpenMonthWise
(
@schemeno char(20),
@sch_amount nvarchar(max),
@Desciption nvarchar(2000),
@sdate smalldatetime,
@Exp_upto_Premonth nvarchar(max),
@Exp_Upto nvarchar(max),
@Exp_During nvarchar(max),
@ExpUpto nvarchar(max),
@PreMonth varchar(50),
@CurrMonth varchar(50)
)
AS
BEGIN
   IF OBJECT_ID('tempdb..#Temp') IS NOT NULL 
BEGIN 
    DROP TABLE #Temp 
END
   CREATE TABLE #Temp
  (
     TempID  INT IDENTITY(1,1) PRIMARY KEY, schemeno char(20), sch_amount nvarchar(max),Desciption nvarchar(2000),sdate smalldatetime,Exp_upto_Premonth nvarchar(max),

       Exp_Upto nvarchar(max),Exp_During nvarchar(max),ExpUpto nvarchar(max),PreMonth Varchar(50),CurrMonth Varchar(50)
  );
  
	INSERT INTO #Temp(schemeno,sch_amount,Desciption,sdate,Exp_upto_Premonth,Exp_Upto,Exp_During,ExpUpto,PreMonth,CurrMonth) VALUES 
	(@schemeno,@sch_amount,@Desciption,@sdate,@Exp_upto_Premonth,@Exp_Upto,@Exp_During,@ExpUpto,@PreMonth,@CurrMonth)
	 DECLARE @totalRecords INT
     DECLARE @I INT

    SELECT @I = 1
    SELECT @totalRecords = COUNT(TempID) FROM #Temp
    WHILE (@I <= @totalRecords)
     BEGIN
    SELECT * FROM #Temp WHERE TempID = @I
     SELECT @I = @I + 1
     END


 SELECT schemeno, sch_amount, Desciption, sdate, Exp_upto_Premonth,Exp_Upto,Exp_During,ExpUpto,PreMonth,CurrMonth
  FROM #Temp 
    
END;







循环插入代码: -






Insert code through loop:-

foreach (DataTable table in Insrtds.Tables)
            {

                foreach (DataRow row in table.Rows)
                {
                    //string monyr = row["monyr"].ToString();
                    //var monyrarr = monyr.ToCharArray();
                    //string finyrr = (monyrarr[4].ToString() + monyrarr[5].ToString());

                    SqlCommand cmd = new SqlCommand("dbo.sp_ExpenMonthWise", con);
                    cmd.CommandType = CommandType.StoredProcedure;  
                    cmd.Parameters.AddWithValue("@schemeno", row["schemeno"]);
                    cmd.Parameters.AddWithValue("@sch_amount", row["sch_amount"]);
                    cmd.Parameters.AddWithValue("@Desciption", row["disp"]);
                    cmd.Parameters.AddWithValue("@sdate", row["schdate"]);
                    cmd.Parameters.AddWithValue("@Exp_upto_Premonth", row["Premonth"]);
                    cmd.Parameters.AddWithValue("@Exp_upto", row["ExpUpto"]);
                    cmd.Parameters.AddWithValue("@Exp_During", row["CurrMonExp"]);
                    cmd.Parameters.AddWithValue("@ExpUpto", row["ExpUptoNow"]);
                    cmd.Parameters.AddWithValue("@PreMonth", PreMonthName);
                    cmd.Parameters.AddWithValue("@CurrMonth", CurrMonthName);
                    cmd.ExecuteNonQuery();





我尝试过:





What I have tried:

i want to create temporary table and  insert data  

推荐答案

示例查询



A sample query

SELECT * INTO #tempEntity  FROM  (SELECT ENTITY_ID,ENTITY_NAME FROM EntityTable)
WHERE ENTITY_ID <= 3


如果您正在等待许可,请考虑一下:您可以直接前往并执行此操作。



如果这不是您所需要的,那么请从Google开始:创建临时表并插入数据通过商店程序 - Google搜索 [ ^ ]并尝试将您的问题细化为一个相当不太模糊的描述。我们无法回答你不问的问题,你这里没有问我们任何问题!
If you are waiting for permission, then consider it given: you may go right ahead and do it.

If that's not what you need, then start with Google: create temporary table and insert data through store procedure - Google Search[^] and try to refine your problem down to a rather less vague description. We can't answer a question you don't ask, and you haven't asked us any question here!


这篇关于我想创建临时表并通过存储过程插入数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆