C#插入临时表

时间:2011-09-11 15:02:51

标签: c# sql-server-2008 temp-tables

我有一个临时表#PORTAL_PRODUTOS,在sql管理器上我可以插入值但是当我尝试使用C#时它会返回一个错误,说明没有#PORTAL_PRODUTOS对象。

我的代码

string sql_insert = @"INSERT INTO #PORTAL_PRODUTOS (DESCRICAO, STRCODIGO, STRREFERENCIA) VALUES (@DESCRICAO, @STRCODIGO, @STRREFERENCIA)";

                        SqlCommand _cmd_insert = new SqlCommand(sql_insert, Conexao);

                        _cmd_insert.Parameters.AddWithValue("@DESCRICAO", tmpProdutoVO.DESCRICAO);
                        _cmd_insert.Parameters.AddWithValue("@STRCODIGO", tmpProdutoVO.STRCODIGO);
                        _cmd_insert.Parameters.AddWithValue("@STRREFERENCIA", tmpProdutoVO.STRREFERENCIA);

                        _cmd_insert.ExecuteNonQuery();
                        _cmd_insert.Parameters.Clear();
                        _cmd_insert.Dispose();

错误发生在ExecuteNonQuery行上。 “无效的对象名称#PORTAL_PRODUTOS”

提前感谢您的帮助。

2 个答案:

答案 0 :(得分:3)

临时表的范围仅限于存储的proc或连接等 所以你可能有不同的联系或你关闭它。

您必须更改代码才能打开和关闭一次:为所有SQL操作保持活动状态

答案 1 :(得分:0)

您应该尝试使用## PORTAL_PRODUTOS

创建一个全局临时表