BEST BONUSES VIDEO POKER ONLINE
online video bestCA SUPER LOTTO PLUS LOTTERY RESULTS ca super lotto plus lottery results

BOSTON TO FOXWOODS CASINO BUS

busPAST MICHIGAN LOTTERY NUMBERS past lottery

NO DEPOSIT CASH BONUS ONLINE GAMBLING

bonus cash deposit no

TINA PA LOTTERY WINNERS

tina pa lottery winners

MIGHTY SLOTS FREE FOR FUN

mighty slots free for fun

FREE BRIDAL BINGO CARDS

free bridal bingo cards

GAMBLING CASINO FREE COMPUTER BACKGROUND

gambling casino free computer backgroundVINTAGE BETSEY JOHNSON CLOTHING johnson betsey clothing

PRACTICE PLAYING BLACKJACK ONLINE

practice playing blackjack online
PLAY ONLINE RUSSIAN ROULETTE GAME
roulettePOKER RULES TEXAS texas rules

WINNING HANDS POKER CHART

chart winning poker

MEGA MILLIONS LOTTERY CALIFORNIA NUMBERS

mega millions lottery california numbers
BACHELOR PARTY POKER IDEAS
bachelor party poker ideas

POKER VIDEO ONLINE GAME

poker video online game

SUN PALACE CASINO REVIEWS

palaceBEST POKER FREEROLL WEBSITES best poker freeroll websites

BC LOTTO 649 JACKPOT

bc lotto 649 jackpot

RESULTS LOTTERY IN NJ JACKPOT

results lottery in nj jackpot

LOTTO 649 RESULTS CANOE

results canoe

GOOGLE FREE SOLITAIRE CARD GAMES

solitaire free google games

THE IMPERIAL PALACE LAS VEGAS NV

palace imperial

PROFESSIONAL SPORTS BETTING TIPS

tips professional betting

FREE ROULETTE ONLINE GAME

free roulette online game

CANADA LOTTO 649 RESULTS

lotto canada results

FREE PLAYING SLOTS ONLINE

free playing slots onlineONLINE GAMBLING ADDICTION FORUM forum addiction
LOTTO NYS LOTTERY
lotto nys lottery
FREE LUCKY LOTTO NUMBERS PICK 3
free lucky lotto numbers pick 3HORSE RACING GAMES TO PLAY ONLINE FREE free to racing play online

DOWNLOAD POKER STARS 2

download poker stars 2

MEGABALL LOTTERY RESULTS GEORGIA

megaball lottery results georgia
CA LOTTERY RAFFLE TICKET
ca lottery raffle ticket

CIRCUS EMPLOYMENT LAS VEGAS NEVADA

circus employment las vegas nevada

WORLD SERIES OF POKER 2005 UPDATES STANDINGS

world series of poker 2005 updates standings

LAS VEGAS CLUB HOTEL AND CASINO NEVADA

las vegas club hotel and casino nevada
MEGA MILLIONS LOTTO WINNING NUMBERS CALIFORNIA
california lotto mega numbers

VIDEO POKER FREE GAME

video poker free game

AMANDA GRIFFIN UNO MAGAZINE AND

amanda griffin uno magazine and
VICTORIA BOAT CASINO FREE SLOTS GAMES
free victoria games

BRIDAL SHOWER BINGO CARDS FREE PRINTABLES

bridal shower bingo cards free printables

FINANCIAL FIXED ODDS BETTING SYSTEM

betting fixed
NO DOWNLOAD SLOTS FREE
free slots download

SOLITAIRE CARD GAME FREE DOWNLOAD

free downloadLAS VEGAS HOTELS MAPS las vegas hotels maps
GET FREE PARTY POKER CHIPS
poker free party chips
300 PIECE POKER CHIPS PLAY SET
poker 300

ONTARIO LOTTO 649 PRIZE

ontario lotto 649 prize
GEORGIA LOTTERY STATE RESULTS
georgia lottery state resultsFREE BONUS CASINO SLOTS PARTY free bonus casino slots party

PLAY FREE ONLINE POKER

online play poker
CHECK CT LOTTO NUMBERS
check ct lotto numbersLEARN TO PLAY FREE TEXAS HOLDEM POKER learn

HOOSIER LOTTO RESULTS POWERBALL

hoosier lotto results powerball
PLAY FREE BINGO TO WIN CASH PRIZES
cash free

PLAY FREE CARD GAME HEARTS

play free card game hearts

VEGAS ODDS NCAA BASKETBALL CHAMPION

basketball vegas

FREE BINGO CARDS DLTK

free bingo cards dltkMEGA MILLIONS LOTTERY JACKPOTS lottery millions

DAILY LOTTERY RESULTS NY

daily lottery results ny
MSN FREE BINGO ONLINE GAME
msn
BETTING EUROVISION 2007
betting 2007
FREE ONLINE KENO GAMES
keno free

PLAY FREE BLACKJACK CARD GAMES

blackjack play card

SAN DIEGO RESORT CASINO PALA

san diego resort casino pala
FREE DRAW POKER PLAY ONLINE NO DOWNLOADS
free draw poker play online no downloads

BINGO FREE INTERNET

bingo free internet

DIGIMON TRADING GAME CARDS

cards game digimon
BINGO DOWNLOAD FREE GAME WARE
download bingo

STREET MAP OF ATLANTIC CITY NJ CASINOS

street
ONLINE CASINO BONUSES AND
online casino bonuses andPLAY FREE THREE CARD POKER ONLINE three card

CASHBACK BONUS AWARD PROGRAM

bonus program

CRYSTAL BACCARAT FRANCE

crystal france
LE REVE WYNN LAS VEGAS DREAMS
le reve wynn las vegas dreams

PREVIOUS UK LOTTO NUMBERS

previous uk lotto numbers
MOST FREEROLLS ONLINE POKER
most freerolls online poker

GALA BINGO ONLINE PLAY

online gala

CALIFORNIA LOTTERY MEGA MILLIONS NUMBERS FOR 9 05

california lottery mega millions numbers for 9 05

FANTASY HORSE RACING GAMES ONLINE

fantasy horse racing games online

PLAY FREE ONLINE SLOTS FOR REAL PRIZES

prizes free online slots for real

CHECK UK LOTTO NUMBERS

lotto
FREE SINGLE DECK BLACKJACK STRATEGY CARD
free single deck blackjack strategy card

BINGO ONLINE PLAY UK

uk online

TEXAS LOTTERY TICKETS WINNING NUMBERS

winning

ALADDIN HOTEL CASINO LV

casino

NO DOWNLOAD FREE CASINO SLOTS

free
YAHOO GAMES ROULETTE FREE
roulette games
SITTING IN THE ROOM PLAYING RUSSIAN ROULETTE
sitting in the room playing russian roulette

PLAYING FREE CASINO SLOTS GAMES

playing free casino slots games

MEGA CALIFORNIA LOTTO RESULTS

results california lotto

CASINO ROYALE TRAILER DOWNLOADS

casino royale trailer downloads

PLAY SLINGO FREE GAME

free play slingoLAS VEGAS HOTELS AIRPORT SHUTTLE vegas

2 PLAYER GAMES CARDS

cards 2FREE ROULETTE TIPS ONLINE free roulette tips online
PCSO LOTTO RESULTS 6 49 DRAW
pcso lotto results 6 49 draw
VIDEO POKER FREE GAME DOWNLOAD
download free video
TEXAS HOLD EM POKER GAMES FREE
texas hold poker gamesPURCHASE PA LOTTERY TICKETS ONLINE purchase tickets onlineFREE AUSSIE SLOTS free aussie slots

GALA BINGO CLUB

bingoPERFECT STRATEGY BLACKJACK blackjack
FREE MONEY BINGO NO DEPOSIT
free money bingo no deposit

BABY BINGO BLANK CARDS

bingo

OHIO LOTTERY RESULTS RAFFLE TO RICHES

ohio results

FREE BRIDAL SHOWER BINGO GAMES

free bridal shower bingo gamesNFL ODDS FOOTBALL YAHOO nfl odds football yahoo
CURRENT LAS VEGAS SUPER BOWL ODDS
odds super
KING KONG NY LOTTO RESULTS
king kong ny lotto resultsBLACKJACK PIZZA FORT COLLINS COLORADO blackjack pizza fort collins colorado

LEMOORE CALIFORNIA PALACE CASINO

casino lemoore palace
VEGAS BETTING SPORTS ODDS
betting vegas sports

CASINO CRAPS ONLINE ROULETTE RULE

rule craps online roulette

FLORIDA LOTTERY CARS AND CASH DRAWING

drawing cars lottery cash

POKERROOMSCHOOL.COM

pokerroomschool.com
FREE SPIDER SOLITAIRE CARD GAMES FOR MAC
free spider solitaire card games for mac

FOOTBALL SPORTS BETTING LINE

football sports betting lineCASINO ROYALE 2006 SOUNDTRACK ALBUM album
NCAA BASKETBALL ODDS TO WIN THE CHAMPIONSHIP
to odds basketball ncaa win the
DISCOVER CARD CASHBACK BONUS AWARD PROGRAM
cashback program

POKEMON TRADING CARDS GAME DOWNLOAD

cards
NFL ODDS SUPER BOWL 2008
bowl oddsFREE TEXAS HOLDEM POKER ONLINE ESPN online holdem

NUMERO UNO MARKET CALIFORNIA

numero uno market california
FREE CASINO SLOTS TO PLAY FOR FUN
free casino slots to play for fun

SINGLE DECK ONLINE BLACKJACK CASINOS

casinos single online
MULTI WHEEL ROULETTE
wheel

VIRGINIA MEGA MILLIONS LOTTERY RESULTS CALIFORNIA

results mega virginia millions california

GEISHA ONLINE FREE PLAY SLOTS

play online geisha slots8 DECK BLACKJACK FREE GAME deck blackjack free game

RANK POKER HANDS ACE

ace
FREE CASINO SIMS SLOTS
casino free

COLLEGE SPORTS ODDS FOOTBALL

football sports

LOTTO QUEBEC 649 TICKET

lotto quebec 649 ticket

COMPULSIVE GAMBLING ADDICTION TREATMENT

addiction
CASHBREAK TOURNAMENT PLAY FREE BINGO
bingo play cashbreakRECIPE UNO PIZZA CRUST recipe uno pizza crust

HOW TO PLAY THE LOTTERY OHIO

how to play the lottery ohio

FREE AOL ONLINE CARD GAMES

free aol online card games

THE LAS VEGAS REVIEW JOURNAL CIRCULATION

the las vegas review journal circulation

CALIFORNIA SPEED CARD GAMES

games
ONLINE BINGO HALL
hall bingo

HOW TO WIN THE FLORIDA LOTTO NUMBERS

how to win the florida lotto numbersFREE HORSE RACING GAMES FOR KIDS free horse racing games for kidsBET 2007 AWARDS RED CARPET bet 2007 awards red carpet

DEL MAR HORSE RACING BETTING TIPS

del mar horse racing betting tipsCASINO ROYALE MOVIE CAST royale

FREE CASH BONUS CASINO CODES

codes bonus cash

FREE CRAPS STRATEGY ODDS

strategy

2007 NBA DRAFT LOTTERY ORDER

2007 nba draft
CHEAP DEALS LAS VEGAS HOTELS
las deals hotels

FREE DOWNLOADABLE POKER PC GAMES

poker

SPEED GAMES CARDS

speed games cardsLEARN HOW TO PLAY CRAPS IN VEGAS vegas in play to learn

FREE ONLINE SLOTS FOR FUN

for slots free fun

CRAIGSLIST LAS VEGAS NV CLASSIFIEDS

classifieds craigslist las vegas

CHICAGO PIZZA UNO RECIPE

recipe pizza

Schema Extensibility in Commercial Enterprise Software

Originally posted on the main site.

This document describes how schema extensibility is typically achieved in commercial enterprise software applications; in particular, in customer relationship management (CRM) applications. A future update will discuss newer extensibility mechanisms such as native XML column types in databases.

Flexibility Requirements

In CRM applications, implementing organizations need to extend the customer data model with business-specific information. The data model extensions consist of adding single-valued and/or multiple-valued properties to the customer data record.

  • The data model extensions must be efficient. The customer data tables typically have tens of thousands to hundreds of thousands of records in a business-to-business setting, and millions to tens of millions of records in a business-to-consumer setting.

  • The data model extensions must facilitate efficient query and join processing in the database.

  • The data model extensions must not prevent the vendor from easily upgrading the implementation in the field.

  • The data model extensions must allow the vendor to ship a single binary code image that can be run in all customer implementations.

General Approach

Vendors typically use a metadata-driven approach:

  • Data model extensions are limited to certain tables and are described with schema extension tables.
  • The customer of the application can extend the schema by describing the schema extension in a UI, which saves records in the schema extension tables.
  • Once the customer has finished designing the schema extension, the application extends the schema by adding columns to the extensible tables (for single-valued properties) or by creating new sub-tables (for multi-valued properties).

Example: Single-Valued Schema Extension

The implementing organization wishes to add a ???????favorite color??????? field to their customer records. The extension table has the following schema:

Extension Table Schema:
COLUMN NAME COLUMN TYPE
Table_name Varchar
Prop_name Varchar
Prop_type Varchar
Prop_length Integer
Prop_precision Integer
Prop_singlevalued Boolean

Through a UI, the user creates the following record:

COLUMN NAME COLUMN VALUE
Table_name Customer
Prop_name Favorite_Color
Prop_type Varchar
Prop_length 25
Prop_precision Null
Prop_singlevalued True

When the user is satisfied (ie when the user hits a button), the application executes the schema change by issuing the following SQL statement:

ALTER TABLE Customer
ADD COLUMN Favorite_Color varchar(25);

Notes:
The Column_precision column will only be used for NUMERIC fields.
Extension columns must typically be NULL-able or the user must provide a default value for the new column.

Example: Multi-Valued Schema Extension

The implementing organization wishes to associate a list of purchased products with a customer record. The schema extension record looks like this:

COLUMN NAME COLUMN VALUE
Table_name Customer
Prop_name Purchases
Prop_type Integer
Prop_length 11 (or NULL)
Prop_precision Null
Prop_singlevalued False

The application executes the following schema change in response:

CREATE TABLE Customer_Purchases(
  Customer_id INT NOT NULL,
  Purchases_id INT NOT NULL,
  Purchases_Value INT (11),
  PRIMARY KEY (customer_id, purchases_id),
  FOREIGN KEY (customer_id)
    REFERENCES Customer (customer_id)
);

Thus, the Customer_Purchases table associates a set of Purchases values with the Customer record.

Scalability Issues

Record Length Limits and Views

Databases typically limit the size of a single record. Implementations deal with this by putting all the extension fields in a separate table joined back to the main table. If necessary, a view can be created to maintain the illusion of a single table:

-- this table is not extensible:
CREATE TABLE Customer_Base (
	Customer_id INT NOT NULL PRIMARY KEY,
	[OTHER FIELDS GO HERE]
);
-- this table is extensible
CREATE TABLE Customer_Ext (
	Customer_id INT NOT NULL PRIMARY KEY,
);
-- add view
CREATE VIEW Customer AS
SELECT CB.*, CX.*
FROM Customer_Base CB JOIN Customer_Ext CX
ON CB.customer_id = CX.customer_id

The view is mainly there to hide the details of the customer schema from report writers.

Indexes

It is generally not a good idea to allow users to easily create indexes on the single-valued schema extension columns. Indexes impose overhead and should only be added to extension fields after it is determined that the index will result in a speedup that justifies the index maintenance overhead.

Leave a Reply


two girls one cup 2 girls 1 cup video 2 girls 1 cup two girls one cup 2 girls 1 cup video 2 girls 1 cup two girls and a cup 2girls and a cup two girls one cup original video two girls one cup 2 girls 1 cup two girls and a cup 2girls and a cup two girls one cup original video two girls one cup 2 girls 1 cup two girls and a cup all about 2 gil one cup all about 2 gils onw cup all about 2girls one cup all about two girls one cup two girls one cup all about two girls 1 cup