Newbie question Temporary Tables
Hi,
I'm trying to do a comparison between 2 tables but since the realtionship between them is a many --> many I need to summarise the data from each before doing the comparison
I've done this before in SQL server by using temporary tables as in
SELECT Order_Number,count(*)
INTO #temporders
FROM ordeerlines
GROUP BY Order_Number
Is such a facility available within SQL Developer?
Many thanks
Steve
I think you are looking for inline views.
But you should repost this question under the SQL and PL/SQL forum.
PL/SQL
This forum is specific for the SQLDeveloper tool and Not for general SQL/PLSQL questions.
Similar Messages
-
Newbie question: adf Table
I got an ADF table but it is to big. It has many rows. I want the table can show 10 rows each time and it has selections of next and previous items.
Which properties's item should be changed?
Where is the Table data streaming?YE,
You did mot mention which jdev version you are using, which would really help for this question. And don't forget that if you give a use case too, you get better answers or other ways to archive your goal.
Assuming 11g:
A quick search of this forum would reveal the answer: there are no such properties. 11g tables don't use the old next/prev navigation any more. The data is fetched in the background when you scroll through the table.
Does it make sense to show the user a table with millions of rows? Will he really visit them all?
In most cases the answer is no. You should reduce the number of rows returned by your query.
Timo -
Hi, how can I make a column in a table that can accept special characters like . or ! or ' Varchar doesn't work.
Thanks
-IanI'm using an insert command that is run through a CGI script, the text is inserted in a text box on a webpage. When it passes the text into a variable, it uses that variable as what to insert.
-
Loading Flat File and Temporary Table question
I am new to ODI. Is there a method to load a flat file directly in to the target table and not have ODI create a temporary file? I am asking this in trying to find out how efficient ODI is in bulk loading a very large set of data.
You can always modify the KM to skip the loading of the temporary table and load the target table directly. Another option would be to use the SUNOPSIS MEMORY ENGINE as your staging database. But, this option has some drawbacks, as it relies on available memory for the JVM and is not suitable for large datasets (which you mention you have).
http://odiexperts.com/11g-oracle-data-integrator-%E2%80%93-part-711g-%E2%80%93-sunopsis-memory-engine/
Regards,
Michael Rainey
Edited by: Michael R on Oct 15, 2012 2:44 PM -
Question about temporary tables and imports.
Hello everybody.
Interesting one this. We have an application that uses global temporary tables. We refresh live to test using import of the application schema. I noticed when doing this yesterday that the temporary tables were being recreated in test as perminant rather than temporary.
Is there a reason for this? Has anyone come across this before? Is there a way around it (apart from manual checking)?
Many thanks
RupCould you specify how you found out that it is coming in as permanent?
I believe exp/Imp will export and import it is Temporary table. I have just done a simple test to check and it works fine;
Here is my test log:
SQL> connect scott
Enter password:
Connected.
SQL>SQL> CREATE GLOBAL TEMPORARY TABLE test_global
2 (startdate DATE,
3 enddate DATE,
4 class CHAR(20))
5 ON COMMIT DELETE ROWS;
Table created.
SQL> select table_name,temporary from user_tables where table_name='TEST_GLOBAL';
TABLE_NAME T
TEST_GLOBAL Y
SQL> select table_name,temporary from user_tables;
TABLE_NAME T
DEPT N
EMP N
BONUS N
SALGRADE N
TEST_GLOBAL Y
SQL> exit
Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.2.0 - Production
With the Partitioning, Oracle Label Security, OLAP and Data Mining Scoring Engine options
C:\Documents\dbmsdirect\Testing\global>exp
Export: Release 10.2.0.2.0 - Production on Wed Feb 20 12:18:45 2008
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Username: scott
Password:
Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.2.0 - Production
With the Partitioning, Oracle Label Security, OLAP and Data Mining Scoring Engine options
Enter array fetch buffer size: 4096 >
Export file: EXPDAT.DMP > test_global
(2)U(sers), or (3)T(ables): (2)U > t
Export table data (yes/no): yes >
Compress extents (yes/no): yes >
Export done in WE8MSWIN1252 character set and AL16UTF16 NCHAR character set
server uses AL32UTF8 character set (possible charset conversion)
About to export specified tables via Conventional Path ...
Table(T) or Partition(T:P) to be exported: (RETURN to quit) > test_global
. . exporting table TEST_GLOBAL
Table(T) or Partition(T:P) to be exported: (RETURN to quit) >
Export terminated successfully without warnings.
C:\Documents\dbmsdirect\Testing\global>sqlplus /nolog
SQL*Plus: Release 10.2.0.2.0 - Production on Wed Feb 20 12:19:50 2008
Copyright (c) 1982, 2005, Oracle. All Rights Reserved.
SQL> connect scott
Enter password:
Connected.
SQL> drop table test_global purge;
Table dropped.
SQL> exit
Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.2.0 - Production
With the Partitioning, Oracle Label Security, OLAP and Data Mining Scoring Engine options
C:\Documents\dbmsdirect\Testing\global>imp
Import: Release 10.2.0.2.0 - Production on Wed Feb 20 12:20:19 2008
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Username: scott
Password:
Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.2.0 - Production
With the Partitioning, Oracle Label Security, OLAP and Data Mining Scoring Engine options
Import file: EXPDAT.DMP > test_global.DMP
Enter insert buffer size (minimum is 8192) 30720>
Export file created by EXPORT:V10.02.01 via conventional path
import done in WE8MSWIN1252 character set and AL16UTF16 NCHAR character set
import server uses AL32UTF8 character set (possible charset conversion)
List contents of import file only (yes/no): no >
Ignore create error due to object existence (yes/no): no >
Import grants (yes/no): yes >
Import table data (yes/no): yes >
Import entire export file (yes/no): no > yes
. importing SCOTT's objects into SCOTT
. importing SCOTT's objects into SCOTT
Import terminated successfully without warnings.
C:\Documents\dbmsdirect\Testing\global>sqlplus /nolog
SQL*Plus: Release 10.2.0.2.0 - Production on Wed Feb 20 12:22:44 2008
Copyright (c) 1982, 2005, Oracle. All Rights Reserved.
SQL> connect scott
Enter password:
Connected.
SQL>
SQL> select table_name,temporary from user_tables;
TABLE_NAME T
DEPT N
EMP N
BONUS N
SALGRADE N
TEST_GLOBAL Y
SQL> insert into TEST_GLOBAL values (sysdate,sysdate,'test1');
1 row created.
SQL> select * from TEST_GLOBAL;
STARTDATE ENDDATE CLASS
20-FEB-08 20-FEB-08 test1
SQL> commit;
Commit complete.
SQL> select * from TEST_GLOBAL;
no rows selected
SQL> select table_name,temporary from user_tables where table_name='TEST_GLOBAL';
TABLE_NAME T
TEST_GLOBAL Y
SQL> -
Question about temporary table population
Hi ,
I wrote a stored proc to populate a temp table inside a pacakage.
I call that package in visual studio.
As it's a temporary table , the table get deleted as soon as the session over .
The Is there a way to c the table content ?
PROCEDURE edr_class_by_hour_use_per_veh
in_report_parameter_id IN report_tasks.report_task_id%TYPE
IS
BEGIN
DELETE FROM edr_lane_by_class_report_data;
INSERT INTO edr_lane_by_class_report_data
site_id,
site_lane_id,
bin_start_date_time,
v_class,
v_lane,
lane_count
SELECT
site_id,
site_lane_id,
bin_start_date_time,
v_class,
v_lane,
COUNT(1)
FROM (SELECT site_id,
site_lane_id,
( SELECT NVL(MAX(interval_start_date_time), date_time)
FROM edr_rpt_tmp_grouping_table
WHERE interval_start_date_time <= date_time) bin_start_date_time,
NVL(traffic_class.v_class, 0) v_class,
NVL(traffic_record.lane, 0) v_lane
FROM edr_lane_by_class_per_veh_data
LEFT OUTER JOIN traffic_class
ON traffic_class.record_id = edr_lane_by_class_per_veh_data.record_id
LEFT OUTER JOIN traffic_record
ON traffic_record.record_id = edr_lane_by_class_per_veh_data.record_id
)vehicles
GROUP BY site_id,
site_lane_id,
bin_start_date_time,
v_class,
v_lane;
END edr_class_by_hour_use_per_veh;Edited by: Indhu Ram on Nov 25, 2009 12:29 PMHi,
You must have commited the rows for temporary sake with "on commit preserve rows"
Refer to doc
http://download.oracle.com/docs/cd/B10501_01/server.920/a96521/tables.htm#7832
- Pavan Kumar N
Oracle 9i/10g - OCP
http://oracleinternals.blogspot.com/ -
How can I implement the equivilent of a temporary table with "on commit delete rows"?
hi,
I have triggers on several tables. During a transaction, I need to gather information from all of them, and once one of the triggers has all the information, it creates some data. I Can't rely on the order of the triggers.
In Oracle and DB2, I'm using temporary tables with "ON COMMIT DELETE ROWS" to gather the information - They fit perfectly to the situation since I don't want any information to be passed between different transactions.
In SQL Server, there are local temporary tables and global. Local temp tables don't work for me since apparently they get deleted at the end of the trigger. Global tables keep the data between transactions.
I could use global tables and add some field that identifies the transaction, and in each access to these tables join by this field, but didn't find how to get some unique identifier for the transaction. @@SPID is the session, and sys.dm_tran_current_transaction
is not accessible by the user I'm supposed to work with.
Also with global tables, I can't just wipe data when "operation is done" since at the triggers level I cannot identify when the operation was done, transaction was committed and no other triggers are expected to fire.
Any idea which construct I could use to acheive the above - passing information between different triggers in the same transaction, while keeping the data visible to the current transaction?
(I saw similar questions but didn't see an adequate answer, sorry if posting something that was already asked).
Thanks!This is the scenario: If changes (CRUD) happen to both TableA and TableB, then log some info to TableC. Logic looks something like this:
Create Trigger TableA_C After Insert on TableA {
If info in temp tables available from TableB
Write info to TableC
else
Write to temp tables info from TableA
Create Trigger TableB_C After Insert on TableB {
If info in temp tables available from TableA
Write info to TableC
else
Write to temp tables info from TableB
So each trigger needs info from the other table, and once everything is available, info to TableC is written. Info is only from the current transaction.
Order of the triggers is not defined. Also there's no gurantee that both triggers would fire - changes can happen only to TableA / B and in that case I don't want to write anything to TableC.
The part that gets and sets info to temp table is implemented as temp tables with "on commit delete rows" in DB2 / Oracle.
What do you think? As I've mentioned, I could use global temp tables with a field that would identify the transaction, but didn't find something like that in SQL Server. And, the lifespan of local temp tables is too short. -
Hi all,
I am developing a .net application withe back end being oracle 10g. previously i worked with sql server 2005,2008 and i am new to oracle.
i am working on a complex query which requiries, temporary table inside the procedure. In sql server easy to create and drop the temp table inside the proc.
Can I use a Transaction specific GTT to store and process the temporary data inside my procedure??? My web application gets connected to the database through a one username and password. Since being a web applicatioin multiple users will execute the procedure at the same time, logged under the same username and password...
I know its a coomon question, but i need it urgently..
its very complicated to use WITH SELCT or inline views etc...
Thank you,
Kris.I know its a coomon question, but i need it urgently..If you know it is a common question then you should know the common answer. But let's rehearse it one more time.
In Oracle temporary tables are permanent objects. It is only the data in them which is temporary. So for your scenario you shoudl have the DBA create the table once, like any other table.
The trick with temporary tables is that each session sees its own data and nothing else. So your procedure can populate the table with data, process it and return it without a hitch.
Since being a web applicatioin multiple users will execute the procedure at the same time, logged under the same username and password...Doesn't matter: the view of the data is controlled by session. So you haven't got a problem providing the table is populated and the resultset returned within a single call.
its very complicated to use WITH SELCT or inline views etc...Yes it is hard. Fortunately CPUs keep getting more powerful and bandwidth keeps getting cheaper, so our systems continue to cope with the increasing amount of suck-y code being thrown at them. Isn't Moore's Law wonderful :)
Cheers, APC
blog: http://radiofreetooting.blogspot.com -
CREATE TEMPORARY TABLE USING EXECUTE IMMEDIATE
Hi All,
i have a question,
how can i create a temporary table using EXECUTE IMMEDIATE ??
Like:
CREATE GLOBAL TEMPORARY table new_table as (Select * from old_table);
Thanks,
Edited by: xDeviates on Jun 11, 2012 3:13 PMIt looks like you are approaching the problem incorrectly. As I suggested in Dynamic Select, it sounds like you, at most, want a function that returns a SYS_REFCURSOR (it's still not obvious to me why you would even want/ need to resort to dynamic SQL in the first place)
CREATE OR REPLACE FUNCTION get_dynamic_cursor( p_table_name IN VARCHAR2 )
RETURN sys_refcursor
IS
l_rc sys_refcursor;
BEGIN
OPEN l_rc FOR 'SELECT * FROM ' || dbms_assert.sql_object_name( p_table_name );
RETURN l_rc;
END;which you can then call from your application
SQL> variable rc refcursor;
SQL> exec :rc := get_dynamic_cursor( 'EMP' );
PL/SQL procedure successfully completed.
SQL> print rc
EMPNO ENAME JOB MGR HIREDATE SAL COMM
DEPTNO
7369 SMITH CLERK 7902 17-DEC-80 801
20
7499 ALLEN SALESMAN 7698 20-FEB-81 1601 300
30
7521 WARD SALESMAN 7698 22-FEB-81 1251 500
30
EMPNO ENAME JOB MGR HIREDATE SAL COMM
DEPTNO
7566 JONES MANAGER 7839 02-APR-81 2976
20
7654 MARTIN SALESMAN 7698 28-SEP-81 1251 1400
30
7698 BLAKE MANAGER 7839 01-MAY-81 2851
30
EMPNO ENAME JOB MGR HIREDATE SAL COMM
DEPTNO
7782 CLARK MANAGER 7839 09-JUN-81 2451
10
7788 SCOTT ANALYST 7566 19-APR-87 3001
20
7839 KING PRESIDENT 17-NOV-81 5001
10
EMPNO ENAME JOB MGR HIREDATE SAL COMM
DEPTNO
7844 TURNER SALESMAN 7698 08-SEP-81 1501 0
30
7876 ADAMS CLERK 7788 23-MAY-87 1101
20
7900 JAMES CLERK 7698 03-DEC-81 951
30
EMPNO ENAME JOB MGR HIREDATE SAL COMM
DEPTNO
7902 FORD ANALYST 7566 03-DEC-81 3001
20
7934 MILLER CLERK 7782 23-JAN-82 1301
10
14 rows selected.Justin -
Slow Insert APPEND into Temporary Table
Hello,
We did the following test on Oracle11g 11.1.0.7 database:
create global temporary table test_tab
as select * from tab1 where rownum <= 1;
insert into test_tab select * from tab1 where rownum <= 500000;
commit;
Elapsed time: 00:00:04.56
Statistic
80 recursive calls
26360 db block gets
10606 consistent gets
4729 physical reads
2543400 redo size
399 bytes sent via SQL*Net to client
340 bytes received via SQL*Net from client
6 SQL*Net roundtrips to/from client
1 sorts (memory)
0 sorts (disk)
500000 rows processed
truncate table test_tab;
insert /*+ append */ into test_tab select * from tab1 where rownum <= 500000;
commit;
Elapsed time: 00:00:09.35
Statistic
84 recursive calls
4900 db block gets
4738 consistent gets
4698 physical reads
1128 redo size
376 bytes sent via SQL*Net to client
354 bytes received via SQL*Net from client
6 SQL*Net roundtrips to/from client
1 sorts (memory)
0 sorts (disk)
500000 rows processed
Note that insert APPEND generates much less redo size: 1128 vs 2543400 . Now the question: why insert APPEND into the temporary table is two times slower than the ordinary insert? Potentially, it should run faster because of lower redo size... Any ideas?If you run the truncate / insert / truncate / insert append again are the timings the same ?
Wondering if the temp tablespace needed to extend for the first append. -
Temporary Table/Cursor Problem
I am in the process of migrating a bunch of Sybase stored procedures to Oracle. In several of them, I am using Sybase temporary tables to store data and use it in the where clause of later select statements. I thought that possibly Oracle cursor or ref cursors could do the job, but I'm having trouble getting anything to work right. Can anyone point me in the right direction? Here is an example of what I'm working with...
-- This is what was formerly being kept in a
-- Sybase temporary table
OPEN c_temp_best_offers FOR
SELECT
request.request_id,
proposal.originator_request_id,
proposal.target_request_id,
proposal.price,
proposal.date_submitted
FROM
request,
proposal,
request_type
WHERE
request.request_type_id = request_type.request_type_id AND
request.request_id = proposal.originator_request_id AND
request_type.matching_request_type_id = v_my_request_type_id
Now I need to somehow use that data in the from and where clauses of a select statement. Any help will be much appreciated.
AJThat does help very much, thanks a lot!
However, one question remains. What if the data you named 'ss1' needs to be used in another select statement later in the stored procedure. It would appear that I would have to use that parenthesized select statement form again. Is there a more efficient way to handle that? Again, thanks for your help thus far, it is greatly appreciated...
AJ -
Changing Names of Temporary tables Created BY CKm and LKM
Hi,
I am new to ODI.
I want to know if we can change the default name structure that is used by ODi to create temp tables.
I$,C$ and E$ table.
E.G:- If i want to keep I$1 for one schema and I$2 for another schema.
Is there any way by which we can do this?
Thanks,
MaheshHi,
I have one situation where i am having various packages using different source tables but having single target table.
Right now i am not running all packes at a time but as it would go in prod those will be run simultaneously which may result in errors.
So for precautionary cause i am trying to fix it in Advance.
eg:- We have multiple factories from which we are taking data and putting them in same table.
Like i have A,B,C factories and each factory has X,Y,X schema as ax,bx,cx,by,cy.ay ......
i AM TAKING DATA FROM these schema and resp tables in each factories packages and putting it in centralized database.
So when i run thiose packages will it be a case that it will clash in Temporary tables?
Let me know if u are clear with the question :) -
Failure on attempt to Declare Global Temporary Table
I am working with SAP and I am seeing the following error on the REAL TIME STATISTICS DATABASE on any attempt to declare a global temporary table by any process:
On the following attempt
DECLARE GLOBAL TEMPORARY TABLE SESSION.FILL_STAT_TAB_TMP
AS ( SELECT IXNAME, IXCREATOR,
FAROFFPOSF, NEAROFFPOSF, LEAFDIST FROM SYSIBM.SYSINDEXPART )
DEFINITION ONLY CCSID UNICODE ON COMMIT DROP TABLE
I get the following error
DSNT408I SQLCODE = -904, ERROR: UNSUCCESSFUL EXECUTION CAUSED BY AN
UNAVAILABLE RESOURCE. REASON 00C90081, TYPE OF RESOURCE 00000100, AND
RESOURCE NAME DSNRTSDB
DSNRTSDB appears to be started. I have EXPLICITLY started it. I have dropped and recreated the RTS tables, starting the database again. We have a temp database created, and 2 tablespaces created in the temp database, one of page size 4k and the other of pagesize 8k.
I am able to query the RTS tables with no problem.
We have 8 other subsystems that we migrated to v8 that have no problems. This particular subsystem was an install, but what that might have to do with anything I don't know.
What am I missing?
Thanks.Hi,
sorry, i've no answer only another question.
I'm searching with google on 'FILL_STAT_TAB_TMP' and this post is all i get ;-(
My problem is a little bit different.
I'm doing a RUNSTATS with DB20 or DB13 and it works. But in the SM21 appears this:
ST04: [IBM][CLI Driver][DB2] DSNT408I SQLCODE = -204, ERROR: SESSION.FILL_STAT_TAB_TMP IS AN UNDEFINED NAME
But if i put the statement from Steve above into spufi, it works without error.
The dis database(dsnrtsdb) shows this:
NAME TYPE PART STATUS
DSNRTSTS TS RW
INDEXSPA IX RW
TABLESPA IX RW
Kay -
Hi all, we are working with an Oracle Schema as staging area. Basically, what we want is to store all the intermediate transformation in temporary tables (stored in this Oracle staging area). These temporary tables are used as source datastores in other interfaces
Our question is about the delete of this tables. Once we have stored the final data in an Oracle DB, we want these temporary tables to be deleted. Do we have to do it through a sql Delete command embedded in a ODI Procedure?
We thought that as they were temporary they could be automatically deleted once the package is run.
We suppose that if we use Sunopsis Memory Engine and we have the implementation below, the temporary tables will be deleted when the package finishes:
Package Test
Interface 1: do some joins and filters and stores data in TEMP_1
Interface 2: do some joins and filters using TEMP_1 and stores data in TEMP_2
Interface 3: do some joins and filters using TEMP_2 and stores final data in TABLE A
Option A: using Oracle physical schema as Staging area
Option B: using Sunopsis Memory Engine as Staging area
To wrap up, do we have to delete TEMP_1 and TEMP_2 if we use Option A?
Another thing, which are the key factors to decide whether to use Sunopsis Memory Engine or Oracle DB (for instance) as Staging Area?
Thanks ins advanceHi-
Staging area can be decided based on where you are loading the data. In your scenario the final data is to be loaded into Oracle DB, so the staging area should be option A.
Add drop table statement to delete TEMP_1 and TEMP_2 tables in your Interface3 KM step.
Hope this will helpful for you.
Thanks,
Saravanan Rajavel -
How to call variable which name is stored in a temporary table...
Hi there!
Got a simple (?) question. I want to make an allocation like that:
n#.temp_z1 := temp#; with the only Problem that the name of the variable is stored in another variable or a temporary table:
temp#(1) := temp_z1; at the moment I have absolutly no idea how to resolve this Problem =( Need something like that (which don't work):
n#.temp#(1) := temp#; anybody there who could help me? Thanks in advanceI think with dynamic SQL it won't work. Isn't there any solution just to handle this simple problem? =(
ok, some more details to my Program:
I have a table named "NN2_input" which will be filled dynamically. For the filling, a start and a finish number are given, and for every number between this, 3 columns will be created. Looks like that:
min = 3; max = 5;
=> Columns:
Z3_Gas, Z3_Dauer, Z3_Temp, Z4_Gas, Z4_Dauer, Z4_Temp, Z5_Gas, Z5_Dauer, Z5_Temp
after the structure of the table is given, it should be filled. To see which columns are given, I select them in a temporary table:
CREATE OR REPLACE PROCEDURE nn2_input_filling is
type tab is table of VARCHAR2(15);
gas# tab;
dauer# tab;
out# tab;
BEGIN
SELECT column_name BULK COLLECT INTO dauer# FROM sys.user_tab_columns
WHERE table_name = 'NN2_INPUT' AND SubStr(column_name,4,5) = 'DAUER' ORDER BY column_name;
SELECT column_name BULK COLLECT INTO gas# FROM sys.user_tab_columns
WHERE table_name = 'NN2_INPUT' AND SubStr(column_name,4,3) = 'GAS' ORDER BY column_name;
SELECT column_name BULK COLLECT INTO out# FROM sys.user_tab_columns -- gibt auch ein Z7_OUT2 zurück o.O
WHERE table_name = 'NN2_INPUT' AND SubStr(column_name,4,3) = 'OUT' ORDER BY column_name;
END;to fill this table, I must assign each field with this value. And that's where my Problem occurs...
so I know all of the columns except the Numbers...
Maybe you are looking for
-
How to setup DNS behind Airport Extreme and ISP that will not reverse DNS
Hi, I am having issues setting up my Mac Mini with SLS. Right now my server is connected to the internet through my Airport Express. It gets a static address from the router (10.0.1.13). The router also has a static address from my ISP. I own the dom
-
Creative Cloud Question- Do you need it to use a Premium Creative Suite?
I recently purchased the Premium Creative Suite : Web Design Package under my school. I installed it and it wont let me use it unless I renew my cloud membership. Which I dont need , does anyone know what I should do in order to use the product I bo
-
CiscoWorks RME - Telnet Failed
We are trying to create an archive of our device configs. When we try this we get the following error: TELNET: Failed to establish TELNET connection to 10.0.8.2 - Cause: Authentication failed on device 3 times. PRIMARY-RUNNING config Fetch Operation
-
My Iphone 4 is not charging in all types of charges after the iOS5.
Hi!! After the ios5 my Iphone 4 it´s not accepting charges from any type of charge ( pc/car/dock/wall). Now the battery is dead what should I do? I tryed in the computer but the USB it´s not regonizing the Iphone. Please someone help me!!! Now the ba
-
is there a way to connect 2 macs to one display? like a DVI splitter or some sort? if so can anyone tell me where I can pick one up? cause I want to buy a 23" Cinema Display but I have two macs and currently I have a display that allows me to toggle