Data Load Performance

Running SQL 2008 SP1

I am comparing a data load into a Heap Table and a Clustered Table. The
schema from each follows:

CREATE TABLE dbo.HeapTable(
  HeapTable_UID int NOT NULL,
  Col1 char(25) NOT NULL,
  Col2 char(100),
  Col3 char(100),
  Col4 char(100),
  Col5 char(100))


CREATE TABLE dbo.ClusteredTable(
  ClusteredTable_UID int NOT NULL,
  Col1 char(25) NOT NULL,
  Col2 char(100),
  Col3 char(100),
  Col4 char(100),
  Col5 char(100),
  CONSTRAINT IX_ClusteredTable_ClusteredTable_UID_Col1 
  PRIMARY KEY CLUSTERED (ClusteredTable_UID, Col1) )
  
  CREATE NONCLUSTERED INDEX IX_ClusteredTable_Col2
  ON dbo.ClusteredTable(Col2)
  
  CREATE NONCLUSTERED INDEX IX_ClusteredTable_Col3
  ON dbo.ClusteredTable(Col3)

My scenario is the following:
I bulk load 1,000,000 rows of data into each table using a script similar to
the following:
TRUNCATE TABLE dbo.HeapTable
BULK INSERT dbo.HeapTable
  FROM 'C:\Temp\OutPut.txt'

TRUNCATE TABLE dbo.ClusteredTable
BULK INSERT dbo.ClusteredTable
  FROM 'C:\Temp\OutPut.txt'

As expected the load into the Heap is much faster. 
Heap = 83 seconds
Clustered = 278 seconds

However, if I then create a Clustered Index key and two NonClustered Indexes
on the Heap Table, so that HeapTable and ClusteredTable are now identical,
the time it takes to create the Clustered Index and the two NonClustered
indexes subsequently on HeapTable, are still noticeably less than what it
took to load ClusteredTable.

This is my script to add the Clustered Index and two NonClustered Indexes to
HeapTable:
ALTER TABLE dbo.HeapTable ADD CONSTRAINT PK_HeapTable_HeapTable_UID_Col1
PRIMARY KEY CLUSTERED (HeapTable_UID, Col1)

  CREATE NONCLUSTERED INDEX IX_HeapTable_Col2
  ON dbo.HeapTable(Col2)

  CREATE NONCLUSTERED INDEX IX_HeapTable_Col3
  ON dbo.HeapTable(Col3)

In other words, loading HeapTable (without indexes) took 83 seconds.
Adding a Clustered Index and two NonClustered indexes to HeapTable took 155
seconds.
Total HeapTable operation = 238 seconds

As noted above, to load ClusteredTable, it took 278 seconds.

Difference in load times (278 seconds minus 238 seconds) is 40 seconds, in
favor of the HeapTable with subsequent index creation.

My question, why does it take less time to load a HeapTable (and subsequently
add a Clustered Index, with two NonClustered Indexes) than it takes to load a
ClusteredTable with a Clustered Index and two NonClustered Indexes? Obviously
I do not understand all that is taking place, in the table or index
structures, since it seems like the operations would be close to the same. I
am running on a dedicated box, with no other activity than my tests.

-- 
Message posted via SQLMonster.com
http://www.sqlmonster.com/Uwe/Forums.aspx/sql-server/200911/1

0
cbrichards
11/23/2009 8:50:34 PM
sqlserver.server 1327 articles. 0 followers. Follow

5 Replies
1316 Views

Similar Articles

[PageSpeed] 56

cbrichards via SQLMonster.com (u3288@uwe) writes:
> My question, why does it take less time to load a HeapTable (and
> subsequently add a Clustered Index, with two NonClustered Indexes) than
> it takes to load a ClusteredTable with a Clustered Index and two
> NonClustered Indexes? Obviously I do not understand all that is taking
> place, in the table or index structures, since it seems like the
> operations would be close to the same. I am running on a dedicated box,
> with no other activity than my tests. 

What recovery mode is the database in? If the database is in simple or
bulk_logged recovery mode, this is to be expected, because all operations
are minmally logged with the heap table, but fully logged with 
ClusteredTable.

But I guess that even in full recovery mode, the heap table can be faster,
particularly if the data file is not sorted along the clustered index.



-- 
Erland Sommarskog, SQL Server MVP, esquel@sommarskog.se

Links for SQL Server Books Online:
SQL 2008: http://msdn.microsoft.com/en-us/sqlserver/cc514207.aspx
SQL 2005: http://msdn.microsoft.com/en-us/sqlserver/bb895970.aspx
SQL 2000: http://www.microsoft.com/sql/prodinfo/previousversions/books.mspx

0
Erland
11/23/2009 10:55:26 PM
Thanks Erland. I am running in Full Recovery Mode, so the "minimally logged"
vs. the "full logged" makes sense.

Your after thought wherein you stated "I guess that even in full recovery
mode, the heap table can be faster, particularly if the data file is not
sorted along the clustered index" has me curious. Would not the data file be
sorted along the clustered index after the clustered index was created on the
Heap?

Erland Sommarskog wrote:
>> My question, why does it take less time to load a HeapTable (and
>> subsequently add a Clustered Index, with two NonClustered Indexes) than
>[quoted text clipped - 3 lines]
>> operations would be close to the same. I am running on a dedicated box,
>> with no other activity than my tests. 
>
>What recovery mode is the database in? If the database is in simple or
>bulk_logged recovery mode, this is to be expected, because all operations
>are minmally logged with the heap table, but fully logged with 
>ClusteredTable.
>
>But I guess that even in full recovery mode, the heap table can be faster,
>particularly if the data file is not sorted along the clustered index.
>

-- 
Message posted via SQLMonster.com
http://www.sqlmonster.com/Uwe/Forums.aspx/sql-server/200911/1

0
cbrichards
11/23/2009 11:19:08 PM
I think what you should examine is the fragmentation of both table's and 
their indexes when all is said and done.

-- 
Kevin G. Boles
Indicium Resources, Inc.
SQL Server MVP
kgboles a earthlink dt net


"cbrichards via SQLMonster.com" <u3288@uwe> wrote in message 
news:9f8f8cfbd1f4b@uwe...
> Running SQL 2008 SP1
>
> I am comparing a data load into a Heap Table and a Clustered Table. The
> schema from each follows:
>
> CREATE TABLE dbo.HeapTable(
>  HeapTable_UID int NOT NULL,
>  Col1 char(25) NOT NULL,
>  Col2 char(100),
>  Col3 char(100),
>  Col4 char(100),
>  Col5 char(100))
>
>
> CREATE TABLE dbo.ClusteredTable(
>  ClusteredTable_UID int NOT NULL,
>  Col1 char(25) NOT NULL,
>  Col2 char(100),
>  Col3 char(100),
>  Col4 char(100),
>  Col5 char(100),
>  CONSTRAINT IX_ClusteredTable_ClusteredTable_UID_Col1
>  PRIMARY KEY CLUSTERED (ClusteredTable_UID, Col1) )
>
>  CREATE NONCLUSTERED INDEX IX_ClusteredTable_Col2
>  ON dbo.ClusteredTable(Col2)
>
>  CREATE NONCLUSTERED INDEX IX_ClusteredTable_Col3
>  ON dbo.ClusteredTable(Col3)
>
> My scenario is the following:
> I bulk load 1,000,000 rows of data into each table using a script similar 
> to
> the following:
> TRUNCATE TABLE dbo.HeapTable
> BULK INSERT dbo.HeapTable
>  FROM 'C:\Temp\OutPut.txt'
>
> TRUNCATE TABLE dbo.ClusteredTable
> BULK INSERT dbo.ClusteredTable
>  FROM 'C:\Temp\OutPut.txt'
>
> As expected the load into the Heap is much faster.
> Heap = 83 seconds
> Clustered = 278 seconds
>
> However, if I then create a Clustered Index key and two NonClustered 
> Indexes
> on the Heap Table, so that HeapTable and ClusteredTable are now identical,
> the time it takes to create the Clustered Index and the two NonClustered
> indexes subsequently on HeapTable, are still noticeably less than what it
> took to load ClusteredTable.
>
> This is my script to add the Clustered Index and two NonClustered Indexes 
> to
> HeapTable:
> ALTER TABLE dbo.HeapTable ADD CONSTRAINT PK_HeapTable_HeapTable_UID_Col1
> PRIMARY KEY CLUSTERED (HeapTable_UID, Col1)
>
>  CREATE NONCLUSTERED INDEX IX_HeapTable_Col2
>  ON dbo.HeapTable(Col2)
>
>  CREATE NONCLUSTERED INDEX IX_HeapTable_Col3
>  ON dbo.HeapTable(Col3)
>
> In other words, loading HeapTable (without indexes) took 83 seconds.
> Adding a Clustered Index and two NonClustered indexes to HeapTable took 
> 155
> seconds.
> Total HeapTable operation = 238 seconds
>
> As noted above, to load ClusteredTable, it took 278 seconds.
>
> Difference in load times (278 seconds minus 238 seconds) is 40 seconds, in
> favor of the HeapTable with subsequent index creation.
>
> My question, why does it take less time to load a HeapTable (and 
> subsequently
> add a Clustered Index, with two NonClustered Indexes) than it takes to 
> load a
> ClusteredTable with a Clustered Index and two NonClustered Indexes? 
> Obviously
> I do not understand all that is taking place, in the table or index
> structures, since it seems like the operations would be close to the same. 
> I
> am running on a dedicated box, with no other activity than my tests.
>
> -- 
> Message posted via SQLMonster.com
> http://www.sqlmonster.com/Uwe/Forums.aspx/sql-server/200911/1
> 


0
TheSQLGuru
11/24/2009 4:47:12 AM
cbrichards via SQLMonster.com (u3288@uwe) writes:
> Your after thought wherein you stated "I guess that even in full
> recovery mode, the heap table can be faster, particularly if the data
> file is not sorted along the clustered index" has me curious. Would not
> the data file be sorted along the clustered index after the clustered
> index was created on the Heap? 

If the data file looks like this:

   HARALD
   ANTON
   PUTTE
   BEATA
   KAMILLA
   XERXES
   ULLA

And there is a clustered index on this data, rows will be inserted here 
and there, and there will be page split and all that.

If you instead have a heap, rows are just blown in, and when you create the
clustered index, SQL Server can take all data at once. The data file is of
course unaffected if you go and create indexes in SQL Server.   

-- 
Erland Sommarskog, SQL Server MVP, esquel@sommarskog.se

Books Online for SQL Server 2005 at
http://www.microsoft.com/technet/prodtechnol/sql/2005/downloads/books.mspx
Books Online for SQL Server 2000 at
http://www.microsoft.com/sql/prodinfo/previousversions/books.mspx
0
Erland
11/24/2009 7:58:42 AM
http://blogs.msdn.com/sqlserverstorageengine/archive/2008/03/23/minimal-logging-changes-in-sql-server-2008-part-2.aspx   
 ---Minimal Logging changes in SQL Server 2008







"cbrichards via SQLMonster.com" <u3288@uwe> wrote in message 
news:9f8f8cfbd1f4b@uwe...
> Running SQL 2008 SP1
>
> I am comparing a data load into a Heap Table and a Clustered Table. The
> schema from each follows:
>
> CREATE TABLE dbo.HeapTable(
>  HeapTable_UID int NOT NULL,
>  Col1 char(25) NOT NULL,
>  Col2 char(100),
>  Col3 char(100),
>  Col4 char(100),
>  Col5 char(100))
>
>
> CREATE TABLE dbo.ClusteredTable(
>  ClusteredTable_UID int NOT NULL,
>  Col1 char(25) NOT NULL,
>  Col2 char(100),
>  Col3 char(100),
>  Col4 char(100),
>  Col5 char(100),
>  CONSTRAINT IX_ClusteredTable_ClusteredTable_UID_Col1
>  PRIMARY KEY CLUSTERED (ClusteredTable_UID, Col1) )
>
>  CREATE NONCLUSTERED INDEX IX_ClusteredTable_Col2
>  ON dbo.ClusteredTable(Col2)
>
>  CREATE NONCLUSTERED INDEX IX_ClusteredTable_Col3
>  ON dbo.ClusteredTable(Col3)
>
> My scenario is the following:
> I bulk load 1,000,000 rows of data into each table using a script similar 
> to
> the following:
> TRUNCATE TABLE dbo.HeapTable
> BULK INSERT dbo.HeapTable
>  FROM 'C:\Temp\OutPut.txt'
>
> TRUNCATE TABLE dbo.ClusteredTable
> BULK INSERT dbo.ClusteredTable
>  FROM 'C:\Temp\OutPut.txt'
>
> As expected the load into the Heap is much faster.
> Heap = 83 seconds
> Clustered = 278 seconds
>
> However, if I then create a Clustered Index key and two NonClustered 
> Indexes
> on the Heap Table, so that HeapTable and ClusteredTable are now identical,
> the time it takes to create the Clustered Index and the two NonClustered
> indexes subsequently on HeapTable, are still noticeably less than what it
> took to load ClusteredTable.
>
> This is my script to add the Clustered Index and two NonClustered Indexes 
> to
> HeapTable:
> ALTER TABLE dbo.HeapTable ADD CONSTRAINT PK_HeapTable_HeapTable_UID_Col1
> PRIMARY KEY CLUSTERED (HeapTable_UID, Col1)
>
>  CREATE NONCLUSTERED INDEX IX_HeapTable_Col2
>  ON dbo.HeapTable(Col2)
>
>  CREATE NONCLUSTERED INDEX IX_HeapTable_Col3
>  ON dbo.HeapTable(Col3)
>
> In other words, loading HeapTable (without indexes) took 83 seconds.
> Adding a Clustered Index and two NonClustered indexes to HeapTable took 
> 155
> seconds.
> Total HeapTable operation = 238 seconds
>
> As noted above, to load ClusteredTable, it took 278 seconds.
>
> Difference in load times (278 seconds minus 238 seconds) is 40 seconds, in
> favor of the HeapTable with subsequent index creation.
>
> My question, why does it take less time to load a HeapTable (and 
> subsequently
> add a Clustered Index, with two NonClustered Indexes) than it takes to 
> load a
> ClusteredTable with a Clustered Index and two NonClustered Indexes? 
> Obviously
> I do not understand all that is taking place, in the table or index
> structures, since it seems like the operations would be close to the same. 
> I
> am running on a dedicated box, with no other activity than my tests.
>
> -- 
> Message posted via SQLMonster.com
> http://www.sqlmonster.com/Uwe/Forums.aspx/sql-server/200911/1
> 


0
Uri
11/24/2009 11:27:48 AM
Reply:

Similar Artilces:

horizontal data to vertical data
I have a set of data list in the horizontal manner. Is there a macro that can send this data vertically instead of manually doing it? Thanks in advance. Aloysicus One way .. Assume source data is in Sheet1, A1:E1 In Sheet2 Put in A1: =OFFSET(Sheet1!$A$1,COLUMNS($A$1:A1)-1,ROWS($A$1:A1)-1) Copy A1 down by as many rows as there are columns in Sheet1, i.e. down to A5 A1:A5 will return whats in A1:E1 in Sheet1 -- Rgds Max xl 97 --- GMT+8, 1� 22' N 103� 45' E xdemechanik <at>yahoo<dot>com ---- "Aloysicus" <aloy33@singnet.com.sg> wrote in message ne...

Difficulty Aligning Series Data With Proper Dates
I ‘m building a column graph using Excel 2007 and I’m having difficulty aligning a series of data with the proper dates. I have 2 series of data – Series 1: Includes a value for each quarter in 2009 (e.g., Mar-09, Jun-09, etc). Series 2: Includes a value for each quarter in 2010 (e.g., Mar-10, Jun-10, etc). After creating each series, I select the appropriate dates (Series 1 – 2009 dates / Series 2 – 2010 dates). The first issue that I’m having is that when I select the second set of dates (for Series 2), it overrides the first – so the x-axis initially shows 2009 dates, but then ...

Resource Work Load
Hi there Can anyone help? I have a single master plan with a number of different projects in it. The same resources are working on all the projects. In the resource usage view I want see how many days each resource is working on a particular project on a monthly basis. So for example I want to see: HR May June July Joe Bloggs 15d 10d 12d Marketing May June July Joe Bloggs 5d 3d 4d In the Gantt chart view I added a text1 field with the project name and then tried to filter it in the resource usage view but it doesn�t display in the resource usage view Hope this ma...

export public folder data?
Am in the process of performing an Alternate server recovery of an Exchange 2003 Information Store. The reason being that on the current server all the email has dissappeared from the public folder mail folders...its a very strange situation indeed. Hoping that by restoring an earlier backup to a different machine we can see if the emails will return. If they do, is there a way I could export the contents of these folders back into the current info store? I gather that Exmerge will only work on Mailboxes and not Public Folders... Many thanks in advance, Neil On Fri, 19 Aug 2005 08:58...

storing read only data
I work for a powder coating company and want to make a program that will store all of the data on each part. I want to be able to go to the computer type in a part number and retrieve all of the data for that part. It has to be read onlyso that it can only be edited by a supervisor. I was told i could use excel for this and an "at" function was mentioned. thank you If the info fits in 256 columns, you can put the part number in column A and the info in B:IV. Then apply data|filter|autofilter and use that to just show the parts you want. If the data is more than 256 columns, you co...

How to organize data?
I am a frustrated Excel newbie. I grit my teeth every time I have to use Excel. But I need to create a small database of records and chart it's monthly progression, and I think Excel is probably the best program for the job. Only, I don't know who to do this. Please bear with me as I really need help with this. Say that I have a short list of vendors in different cities. For each vendor I have a total # of items in their inventory and another # of the # of items sold from the inventory, and a percentage of that. So I have the vendors listed in Column A. # of items in inventory ...

Selecting specific data #2
Hi everyone I have another little problem. I have got a list of 20 items on sheet1, Cells A1 - A20 (numbered 1 - 20) and Cells B1 - B20 are items relating to that number, ie, number 1 = Concrete, number 2 = walls, and so on. Now on sheet 2 I have a table, again cell range A1:B20. I would like to know a formula so that when I enter a number in to column A, the corresponding item to that number appears in column B. ie, if I enter number 8 in Cell A1 on sheet 2, then I would like Floor to appear in Cell B1. Does this make sense? -- Thanks in advance for your help Lee Hi Lee Data range i...

"external data sources" and "external data ranges"
what is the difference between these? i have run the vb macro code on http://support.microsoft.com/kb/330383 to check if i have any external data sources or data ranges but there are none. the reason i need to know is becuase i'm working with office sharepoint server 2007 and i cannot access a file thru the web access web part because it says: "The workbook that you selected cannot be loaded because it contains the following features that are not supported by Excel Services: External data ranges (also called query tables)" anyone? thanks ...

Last Column With Data
How do I check a certain row to find out the last column in the row that has data? Dim myRow as long dim LastCol as long myrow = 1243 with worksheets("SomeSheetnamehere") lastcol = .cells(myrow,.columns.count).end(xltoleft).column end with msgbox LastCol This will break if you've used the last column in that row -- or if you haven't used any cells in that row. Is that a problem? Bishop wrote: > > How do I check a certain row to find out the last column in the row that has > data? -- Dave Peterson This gives a interger...

What was your data migration experience for MS CRM 3.0?
Has anyone used DMF 3.0 to migrate data into CRM using its wizards or stored proceedures? What happened and how did you do it? Andy It's a bit unwieldy, but if you follow the documentation closely and do thorough tests it is a helpful tool. You should be prepared to do some extensive data cleansing and search the newsgroups when you hit a roadblock. -- Matt Wittemann, CRM MVP http://icu-mscrm.blogspot.com "Andy" wrote: > Has anyone used DMF 3.0 to migrate data into CRM using its wizards or > stored proceedures? > > What happened and how did you do it? >...

Presenting Pivot table data as product of 2 source data columns
I have the following data F1 F2 D1 D2 F01 1 10 1 F02 2 20 3 F01 2 30 6 F01 5 40 4 F02 6 40 5 F1 to be presented in rows F2 to be presented in columns D1* D2 to be presented as data Is that possible without defining an extra column in my source data? regards, Louis Louise - Yes, it's a calculated pivottable field. Once you have the pivottable established except for the data values, select Options tab, Formulas drop down arrow, calculated field. "loconel" wrote: > > I have the following data > > F1 F2 D1 D2 > F01 1 10 1 > F02 2 20 3 > F01 2 30 6 >...

Sum of cells in column if data in cells = specific value
In column K, I have different information. Each cell either says "Returned" or "Disposed." In K35, I would like to have a total of all the cells in the column which show "Returned" and in K36, I would like to have a total of all the cells in the column whith show "Disposed" Thanks Please don't multipost. In article <c7o4m5$jp7$1@titan.btinternet.com>, "That's Confidential" <joebloggs@hotmail.com> wrote: > In column K, I have different information. Each cell either says "Returned" > or "Disposed...

data file: how to start its application
Hello! I have a byte array in memory for a file and also its filename (actually a mail attachment). Now I want to "open" this file. In case of a "*.doc" file I have to find the association (winword), run that program and give it a path to my memory or something like that. I think the simplest way to achieve this is to save the data into a temp file (GetTempPath + actual file name, overwriting any previous one), and then running RunCmd somehow and Windows knows what to do. I know how to write the file, but a RunCmd command doesn't exist or I haven't found some...

merging data
I have a master file and 4 workbooks where individuals enter info daily. I need to update the master file workbook at the end of the day with the info from the 4 individual notebooks. How would I merge this data? I tried the "shared workbooks" process but it wouldn't let me do it. Please Help! Since your question is very "general", here's a "general" suggestion: Explore the use of links. Have all WBs open. Right click in a pertinent data cell of one of the 4 WBs, and choose "Copy". Navigate to the appropriate cell in the "Master&quo...

Vertical Data Extraction
Hi, I need to create a chart that is based on changing values. The Values are all stored vertically in a Worksheet called Percentage. The chart sheet contains a selection box where the user can select a specific search and a date and the selected conditions should be searched for and the chart should display results. Basically, when the user selects X in the first list box and Y in the second one, the code should search the Percentage worksheet for all instances of value=x and y and output. column Row Feature1 Feature2 Feature3 2000 0.5 8.3 10 2000 ...

Pie Chart from data
Hi, I am trying to create a pie chart from the below data just to show the percentages of what work orders are maj, med and min. How do I set this up!! Thanks in Advance!!! how can i create a pie char By following the directions within the Chart Wizard. -- Regards, Tushar Mehta, MS MVP -- Excel www.tushar-mehta.com Excel, PowerPoint, and VBA add-ins, tutorials Custom MS Office productivity solutions In article <9265C290-B0B6-4CAD-B909-5EDFCE7DC415@microsoft.com>, anonymous@discussions.microsoft.com says... > how can i create a pie chart > > ...

changing data
Please can someone tell me how to do an automatic change all the way down a column. For example, i have a list of applications throughout a spreasheet as follows Approach, Eurosys, Oscar, Pivot_Pro Pivot_Pro, Oscar, Approach, i need to change exery occurance of Pivot_Pro to Pivot (Dual) how will i do this please help? Hi Press <Ctrl><H> In the find box, type in the existing name, in the change to box, type the new name, click on Change All, and its done -- j.kasselman@atlantic.net.remove_2nd_at. Randburg, Gauteng, South Africa "danzelindistress" wrote: &...

Varying data ranges
Hi, I am preparing a large number of identical reports on Excel fro imported data of varying sizes (e.g. some imported data is 400 row long, some 600, but all have the same number of columns). I hav recorded macros to take the data from its raw form to its complete form in order to releive the repetitive nature of this process, howeve the macro does not take into account the varying sizes of the raw data even when I use the Ctrl+Shft+End command. I am left with a lot o manual 'tidying up' of the reports after the macros have run. I have around 1,800 reports to complete so if ther...

Baffled by missing data on printout
I have a bunch of subforms that the user will fill out from a main form. I then save all that data into a local table, then read it back from a report. The report loads the same subforms which reload the data. All that is working fine on screen, and on print preview. Then, when sent to a printer, all te text boxes are blank! What could *possibly* cause this? I switched printers, used a pdf output printer (save to disk in PDF), and with same results. Any ideas? Rick wrote: > I have a bunch of subforms that the user will fill out from a main > form. I then save all t...

Data Filter
I am running excel 2003. I am needing to copy my out put to another location. I have the options checked : Copy to another location and my list range. However, in the copy to range it is listed " $j$4:$Q$4." I do know that my range is correct but how would I get the output data to be pasted in another locations. Once I click on OK the wrong information is outputted.. Thanks for your adivse. -- Nathan You should be able to select another range for the output. What happened when you tried to change it? Jessica@aol.com wrote: > I am running excel 2003. I am needing to copy ...

Validation in Data/Form
Is there any validation function for user when they input data throught Data/Form which was created default by excel?? Hi have you tried 'Data - Validation'. If this does not work you have to create your own userform >-----Original Message----- >Is there any validation function for user when they input data throught >Data/Form which was created default by excel?? > > >. > Data Validation only affects entries that are typed into a cell. You could try John Walkenbach's Enhanced Data Form. It's a free add-in that allows combo boxes, so it could display...

Notes Domino data to Exchange?
Notes Domino data to Exchange? I have a brand new Exchange 2003 server with no data, completely fresh. It is up and running fine. The client has an old Notes Domino 5.0.8 server with NSF databases all over it. We did NOT migrate anything, it is just a new Exchange server. Is there some way to get some of these NSF databases moved to this new Exchange server? (Thye are not part of the same Active Directory. I am wondering if there is a way to export these Notes mailboxes and databases to something that could get converted to a PST file or something and then get imported. Any ide...

Compare Data
Hello Everyone, I have the following problem. I have two different database on the same server, each one with a dif name of course, except they have the exact same tables and basically the same data. In some tables there are a few rows of data that are different from each other. For example, in the clients table (db1.table1.cl) the numeration started from 234 to 3734 but in the other database the clients table the numeration started from 0 to 3500. Note that they are the exact same clients and the exact amount of clients in each database clients table. The second database is a n...

Data File Not Closing Properly
This has undoubtedly been brought up before, but I can't find the thread. Why am I consistently getting a message that my data file didn't close properly and has to be rechecked when opening Outlook 2007? ...

How to import ical data to entourage?
How to import ical data to entourage? Using any 3rd party free tool? Built in import/export doesn't work for calx What version of Entourage are you using? If you have Entourage 2004 or Entourage 2008, make sure that you've applied the latest updates by going to Help > Check for Updates. Once you've done that, go to Entourage > Preferences. Under "Sync Services", make sure that the option to option to "Synchronize events�" is checked, and click OK. Then, data in iCal should be imported to Entourage. This is actually a synchronization, so you may be p...