Solved

checksum autogeneration

Posted on 2013-06-05
6
503 Views
Last Modified: 2013-06-11
hi guys
I want to create a table Customer with 4 columns

Customer
Id Name Price Checksum


checksum value needs to be autopopulated when an insert occurs
and on update of that row the checksum should update aswell
does sql server provide any such feature?

I am using md5 checksum in my java front end , so that way i can check if the row already exists in the table.

thanks
0
Comment
Question by:royjayd
  • 3
  • 2
6 Comments
 

Author Comment

by:royjayd
ID: 39223207
experts,
Can anyone please help with this. I want to know if checksum can be calculated and saved for each row

thanks
0
 
LVL 65

Accepted Solution

by:
Jim Horn earned 200 total points
ID: 39223490
Define for us in standard English terms what you mean by 'checksum', keeping in mind that what I know about md5 and Java can be written on the back of a matchbook cover, in large letters, with a grease pencil.
0
 

Author Comment

by:royjayd
ID: 39223533
Thanks for responding..

By 'checksum' i mean a unique code for a row of data
So each row will have its own checksum or unique code.
I looked around and see that sql server has a checksum function so in my case for
above Customer table  it would be
CHECKSUM(Id,Name,Price);

how ever what i want to do is
when a new row is inserted into the Customer table create the CHECKSUM for it and insert it in the Checksum column
i tried something like

CREATE TABLE [ado].[CUSTOMER](
      [ID] [nvarchar](16) NULL,
      [Name] [nvarchar](100) NULL,
      [Price] [nvarchar](100) NULL,      
      [CheckSum] [nvarchar](100) DEFAULT CHECKSUM([ado].[CUSTOMER].ID,[CUSTOMER].Name,[CUSTOMER].Price)

but it doesnt seem to work.

Thanks
0
NAS Cloud Backup Strategies

This article explains backup scenarios when using network storage. We review the so-called “3-2-1 strategy” and summarize the methods you can use to send NAS data to the cloud

 
LVL 48

Assisted Solution

by:PortletPaul
PortletPaul earned 200 total points
ID: 39224366
you are attempting to avoid testing if a record does actually exist in the data persistence layer by using a calculation in the business logic layer

too many things could go wrong with this and I would not recommend it.

but hashbytes() will provide an MD5:
http://msdn.microsoft.com/en-us/library/ms174415.aspx

this can be coupled with "computed column" PERSISTED
http://msdn.microsoft.com/en-us/library/ms191250(v=sql.105).aspx

also ...
>>  [Price] [nvarchar](100) NULL,      
numeric data in nvarchar is generally a bad idea - it causes a great deal of overhead in all queries when adding/summing/filtering etc.
0
 

Author Comment

by:royjayd
ID: 39226871
the point of this excercise is i have two tables

TableA and TableB
with exact same number of columns but different data

TableA
col1 col2 col3  checksum

TableB
col1 col2 col3  checksum


Now TableA gets refreshed every 30 minutes with new data from a remote database table

The new data which arrived in TableA needs to be inserted in TableB.

So what i have in mind is if each row has its own checksum in both the tables,
compare the checksum for each row in TableA v/s TableB

The checksum(s) in TableA missing in TableB are the new rows, so add them to TableB


Do you think my approach is wrong ?

thanks
0
 
LVL 48

Expert Comment

by:PortletPaul
ID: 39227813
What I had in my mind when expressing the opinion before didn't involve table synchronization.

Other experts here will be far more experienced than I am on this table synchronization need
0

Featured Post

Optimizing Cloud Backup for Low Bandwidth

With cloud storage prices going down a growing number of SMBs start to use it for backup storage. Unfortunately, business data volume rarely fits the average Internet speed. This article provides an overview of main Internet speed challenges and reveals backup best practices.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
SSRS  - Dropdown with Null 3 30
export sql results to csv 6 41
ms sql + get number in list out of total 7 36
sql2016-WIn10: standard,for SQL servc-account.. 51 31
I have written a PowerShell script to "walk" the security structure of each SQL instance to find:         Each Login (Windows or SQL)             * Its Server Roles             * Every database to which the login is mapped             * The associated "Database User" for this …
How to leverage one TLS certificate to encrypt Microsoft SQL traffic and Remote Desktop Services, versus creating multiple tickets for the same server.
Nobody understands Phishing better than an anti-spam company. That’s why we are providing Phishing Awareness Training to our customers. According to a report by Verizon, only 3% of targeted users report malicious emails to management. With compan…

820 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