Solved

to create a temporary table with unique name in SQL 7.0

Posted on 2002-07-10
11
271 Views
Last Modified: 2008-03-10
Dear advisor  !

I use SQL 7.0

I want to create a temporary table for inputing data.  Like that

On computer 1 : The user runs the application

Create Table C:\Temp\OrderDetail
Insert, Delete, Update


On computer 2 : The user runs the application

Create Table C:\Temp\OrderDetail
Insert, Delete, Update

The name of table is not changed. But that will be conflicted.
Are  there any "folder" on SQL Server to  avoid this error.

Before i used Foxpro. it is ok. But i dont know how to do like that in SQL Sever

Thanks for all consider

Beginner
0
Comment
Question by:NamCit
  • 6
  • 5
11 Comments
 
LVL 142

Accepted Solution

by:
Guy Hengel [angelIII / a3] earned 20 total points
Comment Utility
in SQL Server you create temporary tables like this:

create table #temp ...

This temporary table (the prefix # is the key) will be available to the connection that created the table, other connections can create a temporary table with the same name without conflicting.

You can try this out by opening 2 query analyser windows and executing the same create table #temptable statement, and then select the tempdb.dbo.objects where name like '#%', you will see that SQL Server uses some internal technique to avoid the conflicts.

Cheers
0
 

Author Comment

by:NamCit
Comment Utility

Yes , it is ok. But i use application (Delpi 5.0) to connect that Table . I could not see that Table ???

0
 
LVL 142

Expert Comment

by:Guy Hengel [angelIII / a3]
Comment Utility
>I could not see that Table ???
You cannot see the table unless you create it, but even then it will only be seen by the connection that creates the table.
If you create the table in the query analyser, you obviously cannot see it by delphi application.

Maybe you expand a little bit more what exactly you need, how the table is used, who should create the table, when the table is created, when the table is dropped, will all applications (from all computers) share the same table etc

CHeers
0
 

Author Comment

by:NamCit
Comment Utility

Yes , it is ok. But i use application (Delpi 5.0) to connect that Table . I could not see that Table ???

0
 

Author Comment

by:NamCit
Comment Utility


Dear angelIII !


I use Delphi5.0 + SQL 7.0

When the user runs my application, The application creates a temporary table on SQL SerVer with a constant name. I use this temporary table for Inser , Update , Delete.

I could not use SQL statement to retrieve Data. Because  If i use SQL to retrieve Data , when i update data , it updates on Server automaticly. I only want to update when i puch the button

I have just used component to connect that table . But it is error. Because the name of table is too long


Hearing your comment




 


0
Enabling OSINT in Activity Based Intelligence

Activity based intelligence (ABI) requires access to all available sources of data. Recorded Future allows analysts to observe structured data on the open, deep, and dark web.

 
LVL 142

Expert Comment

by:Guy Hengel [angelIII / a3]
Comment Utility
In SQL Server, you don't use file names for the table names like "C:\Temp\OrderDetail", but simply "tmpOrderDetails". For true temporary table, use # as prefix.
0
 

Author Comment

by:NamCit
Comment Utility

whether SQL SerVer could create table with constant name for each users who use my appliction.

Before , i used Dbf in FoxPro. When the user runs my application. i create Table on C:\Temp folder.

0
 

Author Comment

by:NamCit
Comment Utility


IF i do like your comment . I am afraid that the user does not have their own table. When the first user use temptable to modify(Inser , Delete , update) the data , the second user will be effected. Because they use the same table.

0
 
LVL 142

Expert Comment

by:Guy Hengel [angelIII / a3]
Comment Utility
So you want that each user has it's own temporary table, available all the time, while the application can create it if necessary?
The problem is that temporary tables will only last the duration of the connection, while other tables will all need to have different names.
So the only solution i can see is that you have different names of the tables.
CHeers
0
 
LVL 142

Expert Comment

by:Guy Hengel [angelIII / a3]
Comment Utility
sorry, ignore that comment (didn't see your last comment)

In case all the users will use the same table, but the table shall be "temporary", create the table in the tempdb:
create table tempdb.dbo.OrderDetails (...)

Now, this table will be removed when SQL Server restarts, but if i understood correctly, your application will check if the table exists and create it as necessary.

CHeers

0
 

Author Comment

by:NamCit
Comment Utility

I could do that ?

If the second user uses the application. It will be conflicted of Table. Maybe, i should create a ranDom name of Table. And query that table with a constant name

SQL can not dont like my above question ?
0

Featured Post

What is SQL Server and how does it work?

The purpose of this paper is to provide you background on SQL Server. It’s your self-study guide for learning fundamentals. It includes both the history of SQL and its technical basics. Concepts and definitions will form the solid foundation of your future DBA expertise.

Join & Write a Comment

I wrote this interesting script that really help me find jobs or procedures when working in a huge environment. I could I have written it as a Procedure but then I would have to have it on each machine or have a link to a server-related search that …
Ever needed a SQL 2008 Database replicated/mirrored/log shipped on another server but you can't take the downtime inflicted by initial snapshot or disconnect while T-logs are restored or mirror applied? You can use SQL Server Initialize from Backup…
Using examples as well as descriptions, and references to Books Online, show the documentation available for date manipulation functions and by using a select few of these functions, show how date based data can be manipulated with these functions.
Via a live example, show how to extract information from SQL Server on Database, Connection and Server properties

762 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

6 Experts available now in Live!

Get 1:1 Help Now