Wednesday, March 28, 2012
Rowguid - index in system table
I am dealing with merge replication.
The missing statistics event points out [MSmerge_tombstone].[rowguid] in all
our databases. Noticed that no specific index for rowguid created in
[MSmerge_tombstone] table specific on this column.
We would like to know why there is no index created on this column.Do we
need to manually create this index?
Does this missing statistics is an indication of potential problem. If so
what could be the corrective action(s) ?
Thanks,
Soura
indexes are only used if the table is greater than 100 pages. This means
that if more than 1500 rows exist in your tombstone table it would benefit
for queries which are done on the rowguid column alone.
The most significant column in the queries is the generation column and also
on the tablenick and rowguid columns. There are indexes on these columns.
Which queries/procs are complaining about the missing statistics? Does
autocreate and auto update statistics help with the performance of this
database?
Also note that by default the metadata tables are cleaned up each time the
merge agent runs so they should be small.
Hilary Cotter
Looking for a SQL Server replication book?
http://www.nwsu.com/0974973602.html
Looking for a FAQ on Indexing Services/SQL FTS
http://www.indexserverfaq.com
"SouRa" <SouRa@.discussions.microsoft.com> wrote in message
news:16760881-928B-4137-A542-D430C97ACC78@.microsoft.com...
> Hi,
> I am dealing with merge replication.
> The missing statistics event points out [MSmerge_tombstone].[rowguid] in
> all
> our databases. Noticed that no specific index for rowguid created in
> [MSmerge_tombstone] table specific on this column.
> We would like to know why there is no index created on this column.Do we
> need to manually create this index?
> Does this missing statistics is an indication of potential problem. If so
> what could be the corrective action(s) ?
> Thanks,
> Soura
Wednesday, March 7, 2012
rounding decimal points in an expression
This sounds so simple but yet don't know why it doesn't work.
i've got two decimal numbers in columns
closingUnits = 25093.53640
closingAmt = 59110.33
i use a derived column transformation to generate a string column which is the division of those two above.
mystrfield = closingAmt /closingUnits = 2.355599
what i want is cast it to just 4 decimal points when i run the expression below it cast it to 4 decimal points but it doesn't do any rounding.
the value i get is 2.3555 when i should get 2.3556
(ISNULL(closingAmt ) || closingUnits == 0) ? "0.0000" : ((closingAmt / closingUnits) < 1 && (closingAmt / closingUnits) > -1 ? "0" : "") + (DT_WSTR,15)(DT_DECIMAL,4)(closingAmt / closingUnits)
Found the answer,
silly me, it's ROUND duh!!!
http://msdn2.microsoft.com/en-us/library/ms141721.aspx