Automated Conversion from
Spreadsheets to Database
by
AnkurBajoria
AProjectReportSubmitted
in
PartialFulfillmentofthe
RequirementsfortheDegreeof
MasterofScience
in
ComputerScience
Supervisedby
Dr.XuminLiu
DepartmentofComputerScience
B.ThomasGolisanoCollegeofComputingandInformationSciences
RochesterInstituteofTechnology
Rochester,NewYork
May 2014
Convert pdf to searchable text - search text inside PDF file in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Learn how to search text in PDF document and obtain text content and location information
pdf searchable text converter; pdf find and replace text
Convert pdf to searchable text - VB.NET PDF Text Search Library: search text inside PDF file in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
Learn How to Search Text in PDF Document and Obtain Text Content and Location Information in VB.NET application
how to make a pdf document text searchable; how to search a pdf document for text
ii
Theproject“AutomatedConversionfromSpreadsheetstoDatabase”byAnkurBajoria
hasbeenexaminedandapprovedbythefollowingExaminationCommittee:
Dr.XuminLiu
Professor
ProjectCommitteeChair
Dr.RajendraRaj
Professor
Dr.TrudyHowles
Professor
C# PDF Convert to Text SDK: Convert PDF to txt files in C#.net
PDF document conversion SDK provides reliable and effective .NET solution for Visual C# developers to convert PDF document to editable & searchable text file.
how to select all text in pdf file; how to search pdf files for text
VB.NET PDF Convert to Text SDK: Convert PDF to txt files in vb.net
& searchable text formats. Support .NET WinForms, ASP.NET MVC in IIS, ASP.NET Ajax, Azure cloud service, DNN (DotNetNuke), SharePoint. Convert PDF document page
convert a scanned pdf to searchable text; how to select text in pdf and copy
iii
Abstract
AutomatedConversionfromSpreadsheetstoDatabase
AnkurBajoria
SupervisingProfessor:Dr.XuminLiu
Spreadsheetshavebeenaroundforyearsandareconsideredthestandarddocumentation
formatwhendealingwithdatainatabularformat. Aspreadsheetisdesignedtowork
muchlikeadatabase,ithasacelllikestructurewithacellbeingamemberofaparticular
rowandcorrespondingcolumn. Whencomparedtoadatabaseaspreadsheetlacksmany
featuresthatmakesitlessappealingforuseindatastorageandprocessing.Aspreadsheet
suffersfromdataredundancy,wheremultiplecopiesofasimilardatainstancemayexist
inthesamespreadsheetdocument. Aspreadsheetdoesnothavethecapacitytoprovide
multiuseraccesslikeadatabaseanditalsohaslimitedstoragecapabilities.Byconverting
aspreadsheetdocumentintoadatabasetableausercanleveragealltheadvantagesofa
databaseontheirexistingdata. Thisprojectincludesadiscussiononthedifferencesand
similaritiesbetweenspreadsheetsanddatabases,aframeworktoconvertfromaspreadsheet
toadatabasetableandback. Theprojectthenimplementstheframework,thusdefininga
structureforexcelspreadsheetsandgivingitallthemissingfeaturesthatadatabasehas.
Theprojectalsotakesalookatapopularalgorithmtofindfunctionaldependenciesbetween
thecolumnsofthecreateddatabasetableandutilizesanimplementationofthealgorithm
tofindfunctionalandtransitivedependenciesonthecolumnsinthedatabase.
Online Convert PDF to Text file. Best free online PDF txt
PDF document conversion SDK provides reliable and effective .NET solution for Visual C# developers to convert PDF document to editable & searchable text file.
pdf text searchable; searching pdf files for text
VB.NET Image: Robust OCR Recognition SDK for VB.NET, .NET Image
more companies are trying to convert printed business on artificial intelligence to extract text from documents will be outputted as searchable PDF, PDF/A,TXT
find text in pdf files; pdf text search
iv
Contents
Abstract: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
iii
1 Introduction: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
1
1.1 Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2 RelatedWork . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.3 ProblemandHypothesis . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.3.1 ProblemStatement . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.3.2 Hypothesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.4 Solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.4.1 HypothesisValidation . . . . . . . . . . . . . . . . . . . . . . . . 9
1.5 Roadmap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2 Design : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 11
2.1 PrimaryKeyandDataTypePrediction . . . . . . . . . . . . . . . . . . . . 11
2.1.1 ImportinganExcelSheet. . . . . . . . . . . . . . . . . . . . . . . 11
2.1.2 ExportingaDatabaseTable . . . . . . . . . . . . . . . . . . . . . 14
2.2 FunctionalandTransitiveDependencies . . . . . . . . . . . . . . . . . . . 14
2.2.1 TANEAlgorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.3 ApplicationFlow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.4 UserInput. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3 Implementation: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 19
3.1 LanguagesandTools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.2 ClassOverview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.2.1 ExcelComponentOverview . . . . . . . . . . . . . . . . . . . . . 19
3.2.2 TANEComponentOverview. . . . . . . . . . . . . . . . . . . . . 21
3.3 UserInput. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
C# Create PDF Library SDK to convert PDF from other file formats
The PDF document file created by RasterEdge C# PDF document creator library is searchable and can be fully populated with editable text and graphics
find text in pdf image; can't select text in pdf file
VB.NET PDF Convert to HTML SDK: Convert PDF to html files in vb.
Why do we need to convert PDF document to HTML webpage One is that compared with HTML file, PDF file (a not be easily edited), is less searchable for search
pdf text search tool; search text in pdf image
v
4 Analysis : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 26
4.1 TestingEnvironment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
4.2 Datasets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
4.3 Import . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
4.4 Export . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
4.5 HypothesisEvaluation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
5 Conclusions : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 34
5.1 CurrentStatus s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
5.2 FutureWork. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
5.2.1 SupportForNewerVersionsofExcel . . . . . . . . . . . . . . . . 34
5.2.2 FasterDataPredictionAlgorithm . . . . . . . . . . . . . . . . . . 35
5.2.3 SupportForMoreDatabasesandDataTypes . . . . . . . . . . . . 35
5.2.4 AdditionalUserExperienceChanges . . . . . . . . . . . . . . . . 35
5.3 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Bibliography : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 37
A UMLDiagrams : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 38
B CodeListing : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 41
C UserManual : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 42
C.1 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
C.2 UserInteraction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
C.3 ErrorHandling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
C# PDF Convert to HTML SDK: Convert PDF to html files in C#.net
library also makes PDF document visible and searchable on the Internet by converting PDF document file to Use C#.NET Demo Code to Convert PDF Document to
search pdf files for text; how to select text in pdf
C# PDF: C# Code to Draw Text and Graphics on PDF Document
Draw and write searchable text on PDF file by C# code in both Web and Windows applications. C#.NET PDF Document Drawing Application.
how to select text in pdf reader; pdf find highlighted text
vi
List of Tables
2.1 Exampledatabasetable . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
VB.NET PDF Convert to Word SDK: Convert PDF to Word library in vb.
Convert PDF to Word in both .NET WinForms and ASP.NET webpage. Create high quality Word documents from both scanned PDF and searchable PDF files without losing
pdf select text; how to select all text in pdf
C# HTML5 Viewer: Load, View, Convert, Annotate and Edit Word
C# users can convert Convert Microsoft Office Word to searchable PDF online, create multi to add annotations to Word, such as add text annotations to
how to make pdf text searchable; search pdf for text
vii
List of Figures
2.1 ProcessFlowforGUIapplication. . . . . . . . . . . . . . . . . . . . . . . 18
3.1 HighlevelclassdiagramfortheExcelComponent. . . . . . . . . . . . . . 20
3.2 HighlevelclassdiagramfortheTANEComponent. . . . . . . . . . . . . . 21
3.3 GUIapplicationonfirststart. . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.4 GUIapplicationwhenimportingaspreadsheettothedatabase. . . . . . . . 24
3.5 GUIapplicationdisplayingoutputforFunctionalandTransitivedependen-
cies. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.6 GUIapplicationwhenexportingadatabasetabletoanexcelspreadsheet. . 25
4.1 TimeMeasurementsfortheImportoperation. . . . . . . . . . . . . . . . . 30
4.2 TimeMeasurementsfortheExportoperation. . . . . . . . . . . . . . . . . 30
4.3 DatabaseTableontheH2DatabaseConsole. . . . . . . . . . . . . . . . . 33
4.4 FunctionalandTransitiveDependenciesfortheDatabaseTable. . . . . . . 33
A.1 ExcelComponentClassDiagram. . . . . . . . . . . . . . . . . . . . . . . 39
A.2 TANEComponentClassDiagram. . . . . . . . . . . . . . . . . . . . . . . 40
C.1 GUIapplicationonfirststart. . . . . . . . . . . . . . . . . . . . . . . . . . 43
C.2 GUIapplicationwhenimportingaspreadsheettothedatabase. . . . . . . . 44
C.3 GUIapplicationdisplayingoutputforFunctionalandTransitivedependen-
cies. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
C.4 GUIapplicationwhenexportingadatabasetabletoanexcelspreadsheet. . 45
C.5 ImportError. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
C.6 ExportError. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
C.7 MultiplePrimaryKeysChosenError. . . . . . . . . . . . . . . . . . . . . 47
C.8 InvalidPrimaryKeyError. . . . . . . . . . . . . . . . . . . . . . . . . . . 47
1
Chapter 1
Introduction
Aspreadsheetdocumentismeanttohandlesmallscaledataincomparisontoadatabase.
Spreadsheetsenableanenduserwithnoapplicationprogrammingexperiencetostoreand
manageadatasetoflimitedsize. Spreadsheetsaremostwidelyusedinthefinancialdo-
mainforaccountingpurposesowingtotheireaseofuseandsupportforreportingtoolsin
theformofgraphsandcharts. Thedataisnormallyrepresentedinthestandardnumeric
ortextdatatypeforeachcolumn.Aspreadsheetprovidesadditionalsupportforauserto
definethedatainacellusingaformula.Aformulaisarelationshipbetweentwoormore
columnswithanaggregationoperationseparatingeachcolumn.
Adatabasehasthesamestructureasaspreadsheetintermsofrowsandcolumnsbutis
designedtoprovidestorageforlargescaledata. Italsoprovidesbetterdataintegrityand
consistency. Databasesreducetheamountofdataredundancyusingnormalization. This
protectsdatafromvariousfactorslikeinsert,updateanddeleteanomalies. Theyallow
varioususerstoaccessthedatainthetableswhilekeepingthedatacharacteristicsintact.
Adatabaseisdesignedtoprocesshighlevelqueriesonthestoredtabulardata. Thisis
doneusinghighlevelquerylanguageslikeSQL.Auserneedstohavecertainamountof
programmingbackgroundbeforeusingSQLtoqueryadatabase.
Spreadsheetdocumentslackadefinitestructure.Forexampleconsideraspreadsheetfor
storingemployeeinformation,thespreadsheethascolumnsthatspecifytheemployeeID,
nameandsalary.TheIDandsalaryarenumericfieldsasyouwouldexpectwhilethename
2
storesdataintheformofcharacters.Aspreadsheetdocumenthoweverdoesnotexplicitly
forcetheserules,thenamefieldcouldbepopulatedwithanumericvalueandtheIDor
salaryfieldscouldholdcharacters. Whentryingtoconvertaspreadsheetintoadatabase
thisruleisofcriticalimportancesinceadatabasestrictlyenforcesdatatyperulesforits
columns. Databasesalsosupporttheuseofprimarykeys. Aprimarykeyisacolumnin
thedatabasethatstoresuniquevaluesforeachrowandcanbeusedtodistinguishbetween
rows. Spreadsheetsontheotherhanddonothaveaconceptofprimarykeys. Inthecase
oftheaboveexampletheIDfieldwouldideallybeusedastheprimarykey. Howevera
spreadsheetallowsredundantdatatobepresentinmorethanonerow,thiswouldmean
thatmorethanoneemployeewouldhavethesameIDwhichisnotpossibleinthereal
world. Thisproposalfocusesonextractingdatafromaspreadsheetandconvertingitinto
adatabasetablebydeterminingthedatatypesofthecolumnsandintheprocessdefininga
structuretothespreadsheetdata.
1.1 Background
Therearevariousapplicationsthatprovidecreationandmanipulationofspreadsheetdoc-
umentsnamelyMicrosoftOfficeExcel,OpenOfficeCalc,LibreOfficeCalcofwhichMi-
crosoftExcelisthemostwidelyused.MicrosoftExcelwasdesignedasearlyas1985. It
wasdesignedtofacilitaterecordkeepingandupdationforthefinancialindustry.Microsoft
Excelfollowsthesamestandardstructureintermsofhowdataisstoredinexcelfiles.The
dataisdefinedinagridstructure.Whereeachcellofthegridisdefinedbyitscorrespond-
inguniquerowandcolumnnumber. EachgridrepresentswhatiscalledaWorksheetin
Excel. TherecanbemanysuchworksheetsincludedinasingleWorkbook. Aworkbook
representafolderlikewrappertoholdthedifferentworksheetsthatmightberelatedto
eachother.Eachcolumninthespreadsheetcanholddataofadifferentdatatype.Themost
commondatatypesdefinedinMicrosoftExcelarenumber,text,date,currency. Number
isusedtostorenumericalvalueswhiletextstoresstringvalueslikenames,addressesetc.
ThedatedatatypeisusedtostorethedatewhichbydefaultisM/d/yyyy. Thecurrency
3
datatypestoresdataintheformofnumberswiththeoptionalcurrencysymbolpreceding
thevalue.Thesymbolhoweverhastobemanuallyspecified.
DatabaseshavebeenbroadlyclassifiedintotwomajortypesnamelySQLandNoSQL
(NotonlySQL).Themajordifferencesbetweenthetwotypesofdatabasesisthefactthat
anSQLdatabasefollowsaproperschemaorstructureforthetablesdefined,whereasfol-
lowingtheNoSQLapproachwouldmeanthattherewouldnotbeanydefinedstructure
forthedatabasetables. Anotherdistinguishingfactorbetweenthetwotypesofdatabase
systemsisthecharacteristicsthattheyfollow. SQLdatabasesfollowtheACIDproperties
whicharedescribedasfollows. ACIDstandsforAtomicity, Consistency,Isolationand
Durability.
 Automicitystatesthateitheratransactioninthedatabasemustcommitproperlyor
incaseoffailurenochangesmadebythetransactionshouldpersist.
 Consistencystatesthatchangesmadebyeverytransactioninthedatabasemustkeep
thedatabaseinavalidstate.
 Isolationmeansthatwhenmultipletransactionsareexecutedinthedatabasetheend
resultshouldbesimilarifthetransactionswereexecutedinserialorder.
 Durabilitysimplystatesthattheresultsofcommittedtransactionsmustpersistinthe
databaseintheeventoffailures.
ANoSQLdatabasehoweverdoesnotfollowthesamepropertiesasanSQLdatabase.A
NoSQLdatabasetypicallyfollowstheBASEproperties.TheBASEpropertiesaredefined
asBasicallyAvailable,SoftStateandeventualConsistency.
 Basically Availablerefers to theavailabilityofdataon the eventoffailure. For
Documents you may be interested
Documents you may be interested