1.你创建的是局部临时表,不管你是否使用了drop table #Flight
在存储过程结束后,都会被自动删除2.你创建的是局部临时表,所以只能在创建它的过程 dbo.GetFlights 中有效,其他过程是访问不了的3.你可以这样改存储过程(用全局的临时表):
CREATE PROCEDURE dbo.GetFlights AS
create table ##Flight (Type nvarchar(8),Flight nvarchar(18))bulk insert ##Flight from 'c:\flight.txt'
with(FIELDTERMINATOR=',')
select * from ##Flight
GO
在存储过程结束后,都会被自动删除2.你创建的是局部临时表,所以只能在创建它的过程 dbo.GetFlights 中有效,其他过程是访问不了的3.你可以这样改存储过程(用全局的临时表):
CREATE PROCEDURE dbo.GetFlights AS
create table ##Flight (Type nvarchar(8),Flight nvarchar(18))bulk insert ##Flight from 'c:\flight.txt'
with(FIELDTERMINATOR=',')
select * from ##Flight
GO
解决方案 »
- 请教这个查询如何写
- 这样的分组语句怎么写啊?
- 急!急!急!SQL Server 2005 安装遇到的诡异问题。
- 如何在SQL 2000中建立虚拟表,可以将所需数据预先分类
- 这条SQL如何写
- mssql2008列值合并
- 敬待大侠!2005关于变更日志文件位置导致的数据库置疑
- SQL server2000中的每个字段可以设置“描述”,如何自写程序把这个东西读出来?
- 在SQL server2000 SQL Query Analyzer 下运行 select * from tbl for xml auto
- 救急
- 求一sql更新语句(text字段的替换更新)
- 全文索引中的加权值和不加权值查询有何区别?加权值大小有什么区别?
create table ##Flight (Type nvarchar(8),Flight nvarchar(18))bulk insert ##Flight from 'c:\flight.txt'
with(FIELDTERMINATOR=',')
select * from #Flight
select distinct type from ##flight
drop table ##Flight
GO
然后,
这样一来,从临时表从取数据还是一个问题.
begin
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].##Flight') and OBJECTPROPERTY(id, N'IsTable') = 1)
drop table [dbo].##Flightcreate table ##Flight (Type nvarchar(8),Flight nvarchar(18))bulk insert ##Flight from 'c:\flight.txt'
with(FIELDTERMINATOR=',')
select * from ##Flight
end
GO
drop table [dbo].##Flight
没有被执行.哪位高手说说是什么原因,应该怎样写这个存储过程?
if exists (select * from tempdb.dbo.sysobjects where name='##Flight' and xtype='u')
drop table [dbo].##Flight