Reputation:
Algorithmically speaking, how could I generate a unique, human readable, reasonably lengthed - order number for SQL Server column. The only requirement is that it references the Customer Number and can be easily repeated over the phone.
Something like:
RT65-XXXXXXXX-XXXXXXXX
How would I generate the XXXXXXXX? (Use random alpha-numeric data and then checking to see if it was in fact a duplicate?)
and
What are the best methods/considerations when generating these types of numbers?
How have you done this in your application?
Upvotes: 4
Views: 15778
Reputation: 2329
in php you can do like the following:
<?php
$stamp = strtotime("now");
$orderid = 'RT65-'.$stamp.'-'.$REMOTE_ADDR;
$orderid = str_replace(".", "", $orderid);
echo($orderid);
?>
Upvotes: 0
Reputation: 2073
This is silly but fairly straight forward, How about yyyymmddhhmmss
and use it with
RT65-XXXXXXXX-XXXXXXXX
Upvotes: 0
Reputation: 1205
Check out these posts, nearly the exact same question. Real good data in both (I've used them before):
A good algorithm for generating an order number
What is the best format for a customer number, order number?
Upvotes: 1
Reputation: 3518
Use an identity column and pad with zeros.
Alter the start and increment values to taste.
Optionally, add a CRC check digit.
Upvotes: 2