临时表

问题描述

stringconnstring=ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;SqlConnectionconn=newSqlConnection(connstring);conn.Open();stringsqlcmd="create##fly(name(varchar(50),ageint)";SqlCommandcmd=newSqlCommand(sqlcmd,conn);stringname="nameg";intage=12;stringsqlcmd2="Insertinto##flyvaluesname,age";SqlCommandcmd2=newSqlCommand(sqlcmd2,conn);Response.Write("aa");stringsqlcmd1="select*from#fly";SqlDataAdaptersda=newSqlDataAdapter(sqlcmd1,conn);DataSetds=newDataSet();sda.Fill(ds);GridView1.DataSource=ds;GridView1.DataBind();conn.Close();错误提示是:对象名'#fly'无效。说明:执行当前Web请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。异常详细信息:System.Data.SqlClient.SqlException:对象名'#fly'无效。

解决方案

解决方案二:
##flyor#fly
解决方案三:
我写错了这里使用的##fly和#fly,我都试过但错误提示是相同的。stringconnstring=ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;SqlConnectionconn=newSqlConnection(connstring);conn.Open();stringsqlcmd="create##fly(name(varchar(50),ageint)";SqlCommandcmd=newSqlCommand(sqlcmd,conn);stringname="nameg";intage=12;stringsqlcmd2="Insertinto##flyvaluesname,age";SqlCommandcmd2=newSqlCommand(sqlcmd2,conn);Response.Write("aa");stringsqlcmd1="select*from##fly";SqlDataAdaptersda=newSqlDataAdapter(sqlcmd1,conn);DataSetds=newDataSet();sda.Fill(ds);GridView1.DataSource=ds;GridView1.DataBind();conn.Close();错误提示是:对象名'##fly'无效。说明:执行当前Web请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。异常详细信息:System.Data.SqlClient.SqlException:对象名'##fly'无效
解决方案四:
这些放到存储过程去
解决方案五:
你试下把"create##fly(name(varchar(50),ageint)";在数据库中建立试试。把所有的临时表语句在数据库中调试一遍。(应该是可以的,我昨天也在弄临时表的问题我这创建都没有问题的呀)

时间: 2024-10-23 08:30:49

临时表的相关文章

临时表空间组的使用

一个临时表空间组至少包含一个临时表空间. 临时表空间组无法显式创建,当第一个临时表空间分配给该组时自动创建,当组内所有临时表空间被移除时自动删除. 临时表空间组支持的操作: 可以将临时表空间从一个组移动到另外一个组(如果组不存在,则自动创建). 可以将组中的临时表空间从组中移除. 可以将目前不属于任何组的临时表空间加入一个组. 使用临时表空间组的好处: 防止一个临时表空间出现空间不足的问题. 同一个用户同时连接多个session时可以使用不同的临时表空间. 在并行操作中可以并行使用多个临时表空间

mysql 临时表、内存表和视图

虚拟表,顾名思义,就是实际上并不存在(物理上不存在),但是逻辑上存在的表.这样说很抽象,还是看一些实际的例子吧.在MySQL中,存在三种虚拟表:临时表.内存表和视图. 一.mysql临时表1.什么是临时表临时表是建立在系统临时文件夹中的表,如果使用得当,完全可以像普通表一样进行各种操作. 临时表的数据和表结构都储存在内存之中,退出时,其所占的空间会自动被释放.2.创建临时表(1)定义字段CREATE TEMPORARY TABLE tmp_table (        name VARCHAR(

Oracle临时表空间

当 Oracle 在执行一些 SQL 时,会需要一些临时空间来存储执行时产生的中间数据.这些临时空 间由 Orac le 从指定的临时表空间中分配给进程.主要有三种情况会占用临时空间:临时表/索引操作.排序和 临时 LO B 对象操作. A.临时表/索引: 在会话中,当第一次对临时表进行 INSERT(包括 CTAS)时 ,Orac le 会从临时表空间中为临时 表 及其索引分配临时空间一存储数据. B.排序: 任何会使用到排序的操作,包括 JOIN.创建(重建)INDEX.ORDER  BY.

ORACLE 临时表空间TEMP 满了怎么办?

oracle|临时表         最近遇到这样一个问题:前一段时间网页查询ORACLE表正常,可最近一直页面无法显示.打印出SQL放到PL/SQL Devoloper 执行,报"无法通过8(在表空间XXX中)扩展 temp 段",还有一个页面,可以查询出记录,但无法统计数据!       经过分析产生原因可能是:ORACLE临时段表空间不足,因为ORACLE总是尽量分配连续空间,一但没有足够的可分配空间或者分配不连续就会出现上述的现象.  解决方法:知道由于ORACLE将表空间作为

巧用SQL server临时表

SQL server临时表是经常需要用到的,下面就教您如何使用SQL server临时表解决防止用户重复登录问题,供您参考. 在我们开发商务软件的时候,常常会遇到这样的一个问题:怎样防止用户重复登录我们的系统?特别是对于银行或是财务部门,更是要限制用户以其工号身份多次登入. 可能会有人说在用户信息表中加一字段判断用户工号登录的状态,登录后写1,退出时写0,且登录时判断其标志位是否为1,如是则不让该用户工号登录.但是这样那势必会带来新的问题:如发生象断电之类不可预知的现象,系统是非正常退出,无法将

ASP调用带参数的MSSQL存储过程,并返回临时表记录集

前些天,阿里西西web团队(Alixixi.com)在开发一个系统平台时,需要通过存储过程调用多个表的几个字段,合并到一个临时表中,并进行排序返回给ASP调用. 下面,我把经验分享出来: 1.存储过程部分: 以下是存储过程部分:CREATE PROCEDURE [dbo].[alixixi] @sNum int, @sOrder varchar(20)  AS SET nocount on create table #btable (id int,channelid int,classid in

不要让临时表空间影响Oracle数据库性能

在Oracle数据库中进行排序.分组汇总.索引等到作时,会产生很多的临时数据.如有一张员工信息表,数据库中是安装记录建立的时间来保存的.如果用户查询时,使用Order BY排序语句指定按员工编号来排序,那么排序后产生的所有记录就是临时数据.对于这些临时数据,Oracle数据库是如何处理的呢? 通常情况下,Oracle数据库会先将这些临时数据存放到内存的PGA(程序全局区)内.在这个程序全局区中有一个叫做排序区的地方,专门用来存放这些因为排序操作而产生的临时数据.但是这个分区的容量是有限的.当这个

Mysql中的临时表使用方法讲解

当工作在非常大的表上时,你可能偶尔需要运行很多查询获得一个大量数据的小的子集,不是对整个表运行这些查询,而是让MySQL每次找出所需的少数记录,将记录选择到一个临时表可能更快些,然后多这些表运行查询.创建临时表很容易,给正常的CREATE TABLE语句加上TEMPORARY关键字: CREATE TEMPORARY TABLE tmp_table (name VARCHAR(10) NOT NULL,value INTEGER NOT NULL) 临时表将在你连接MySQL期间存在.当你断开时

在VF里根据现有表结构快速创建同结构的临时表

创建|临时表 假设表jxc_jyz(nYear n(4),nMonth n(2),cXSBM c(20),nQCZC_sl n(12,3),nBQJH_sl n(12,3),nBQXS_sl n(12,3),nQMKC_sl n(12,3),cJZZT n(2))如果我们要创建一个结构同上的临时表Tjxc_jyz,常用方法是:CREATE CURSOR Tjxc_jyz(nYear n(4),nMonth n(2),cXSBM c(20),nQCZC_sl n(12,3),nBQJH_sl n(

mysql中的临时表

mysql|临时表 当工作在非常大的表上时,你可能偶尔需要运行很多查询获得一个大量数据的小的子集,不是对整个表运行这些查询,而是让MySQL每次找出所需的少数记录,将记录选择到一个临时表可能更快些,然后多这些表运行查询. 创建临时表很容易,给正常的CREATE TABLE语句加上TEMPORARY关键字: CREATE TEMPORARY TABLE tmp_table (name VARCHAR(10) NOT NULL,value INTEGER NOT NULL) 临时表将在你连接MySQ