# One Method for Batch DHI Data Import into SQL-Server

Liang Shi, Wenxing Bao

► To cite this version:

Liang Shi, Wenxing Bao. One Method for Batch DHI Data Import into SQL-Server. 4th Conference on Computer and Computing Technologies in Agriculture (CCTA), Oct 2010, Nanchang, China. pp.124-130, 10.1007/978-3-642-18336-2_15. hal-01562755

HAL Id: hal-01562755

https://inria.hal.science/hal-01562755

Submitted on 17 Jul 2017

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_1.png" /></figure>

Distributed under a Creative Commons Attribution 4.0 International License
# One method for batch DHI data import into SQL-Server

## A batch data import technique for DateSet based on .NET

Liang Shi* and Wenxing Bao

School of Computer Science and Engineering, Beifang University for Ethnics, Yinchuan
Ningxia, P. R. China 750021
[Shiliang211@tom.com](mailto:Shiliang211@tom.com)

**Abstract.** In the cow breeding process, the users also pay attention to the cow's DHI information, especially in the keen market competition, if they want to improve the milk production, to improve the value of the milk price, to test analysis the information of DHI is of the utmost importance. However, the traditional DHI information often determines and returns the result to users by the Excel by a professional DHI department. Users only can open the tables one by one to inquire and analysis the data, but also when users need to compare with the recently month data, the have to open a large quantity of Excel tables so that it's not only waste times but also waste energy. This treatise design a method which is based on the .NET environment's DataSet method to implement the batch import for the DHI in the Excel into the database, it's also achieve the breeding information management system and the data of DHI integrated management. The application results show that this method is easy to operate and credibility of operation, it can also achieve the history information inquire and it is worth practically generalizing.

**Keywords:** batch import, database, cow breeding, DHI.

## 1. Question

There is a common issue for every farm on how to improve the economic benefits by making use of the information software for cultivation during their daily cattle breeding work. Nevertheless, by just putting into place the cultivation software, although the staff expense could be reduced relatively, the productivity improved as well as a convenient and handy practical operation achieve, current software for cultivation management are basically covering every step of daily work, which means there is quite a few concerns the information of DHI. That is because DHI must be granted by the authorized institutes and after that the result could then be returned. However, the result that goes back to the farms is in the format of Excel. The culturist has to open them one by one to check and analyze the data. In order to have a

<footnote>* Corresponding author.</footnote>
comparison with the data months ago, sometimes the culturist has to open several excel files and therefore it will be inconvenient for information searching. The problem is that this kind of operation stands against the target of cultivation management, which takes time and costs because the culturist has to spend a lot of time on DHI information analyzing. Therefore, the question is that if there is a method for the user to facilitating data reading and managing as easy as the way he uses the cultivation management software, hence a considerable boom on his productivity.

From a global view, among all those domestic management software for cattle cultivation, the one developed by NanJing FarmStock Technology Co., Ltd. has the function mentioned above. From the aspect of the completion of different functions, it works well. But from the view of handling convenience, it is not good enough, which makes the amateur uses feel inconvenient.

Another implementation method is to use the import and export programs provided by Microsoft SQL-Server or other three-party software. However that requires the culturist having some professional knowledge. [1]

Therefore if it is possible to implement the function by just clicking a button for the amateur users?

In this paper we provide a method which realizes a batch import for DHI data by clicking the button in the interface of the management system for the users. After that many operations could be carried on including automatic search, data analysis etc. The users will be attracted by the friendly interface feeling easy and convenient.

## 2. Noun Introduction in Paper

### A. DHI

DHI is the abbreviation of “Dairy Herd Improvement” and also known as “Test for Production Performance”. There have been similar institutes among the developed countries in dairy industry like Canada, USA, Holland, Sweden and Japan. DHI reports are capable of providing decision-making supports for the management on dairy farm as well as complete and accurate resource for breeding task. In China the DHI testing system was founded in 1994, which has the milk supervision centers located in Xi'an, Shanghai and Hangzhou co-built by domestic relative organization and a Sino-Canadian integrated breeding programs. [2]

The aim of DHI popularization is to accomplish a specific and effective management on farms trough plenty of data analysis, which will have a global view along with clear individual performance to replace the extensive and empirical model of cattle breeding based on data and scientific management by testing the productivity of each cow. [3]
## B. Microsoft Excel

The Microsoft Excel is one of the Microsoft Office modules, which is kind of tabling software that is designed and runs on the OS of Windows and Apple Macintosh. Its handy operation model gives amateur users the capability of data storage and data analysis that are applied into their daily work.

## C. Introduction to Language SQL and the Database of SQL-Server

SQL is the acronym for Structured Query Language. SQL is the general language for all database systems. Users could be able to run same operations trough SQL sentences on different database systems.

SQL-Server is a relative database managing system. It is embedded with sets of BI tools that provide data management at enterprise level. Its database engine provides a more reliable storage function for relative and structured databases, which gives the user the capability of constructing and managing data applications of high proficiency for his business.

## D. DataSet in .NET

DataSet is the core concept of ADO.NET. DataSet can be recognized as a database in the memory, it is a set of isolated data and doesn't rely on the database. DataSet is also the main module in ADO.NET, which acts as a cache in the memory for the data collected from the data source. [4]

DataSet runs on memory. It improves the data R-W speed and protects the disk well. Therefore we have profoundly facilitated applications with high running speed and stability.

1. Isolation. DataSet is isolated from many sorts of data sources.

2. Offline (disconnected) and connected.

3. The object of DataSet is data view that can be illustrated in the format of XML. It is a view to show the relations between data.[5]

# 3. The program Design and Efficiency Analysis

## 3.1 The Flow Chart for System Design
<figure><img src="image_2.png" /><figcaption>Fig. 1. The flow chart for system design</figcaption></figure>

## 3.2 Specific Procedures to Achieve and the Main Pseudo-code to Interpret

ExecleDs(string filenameurl, string table)

/*customized function, import the Excel data into
DataSet*/

{OleDbConnection conn = newialeDBConnection(strConn);
/*Connect to Excel data engine*/
OleDbAdapter odda = newOLEDbAdapter( "select * from [Sheet1$]", conn);

/*current selected data sheet*/

odda Fill(ds, table); /*add data into the data set*/

return ds; /*return the data set*/
}

clicked()

{ /*execute the inserting trough click event*/

try
{
 DataSet ds = ExecleDs( savePath, filename); /*call
  the customized function*/

 DomatRow[] dr = ds Tables[0]. Select(); /*define a
 DomatRow array*/

  for (int i = 0; i < dr.Length; i++)

  { /*read and evaluate the excel field insert the
       evaluated data into the database, use insert into to
       make it implemented*/

    string insertstr = "insert into cyjlb" /*batch import
                                          of the information into the sheet*/

    SQLCommand cmd = newSQLCommand( insertstr, cn);
    /*connect to database*/

    cmd .ExecuteNonQuery(); /*execute*/

  }

  catch (Exception ex) { } /* catch the system
                             exception, if there is any exception, then display the
                             information*/

}

}
## 3.3 Program Running Result

<figure><img src="image_3.png" /><figcaption>Fig. 2. The result</figcaption></figure>

The users only need to select the import date, click the import button and then the data in Excel file will be imported into the database. The summary and imported information will be shown in the list. Click each cell to show the details. We can also search data by import month as well as other conditions. It is convenient for users to compare data of months and the system can generate charts based on imported basic information, which is a similar function that Excel has.

## 3.4 The Program Efficiency Analysis

Although we can program for a data import into SQL-server database, the coding work is very complicated. Besides when handling a large quantity of data, the writing speed could be reduced. However, if we use DataSet as an intermediate buffer component, we will save a lot of import time. It is also need one for loop, and the time complexity is O(n). Thus the efficiency will be improved. It is proved that, after
testing and using the system, through this method we can save plenty of time for data batch import.

## 4. Application Analysis

The DHI information is most needed by the culturists during their work. It also reflects the milk output and the economic benefits that a farm has. It gives users an easy way to do many sorts of searching if we have DHI information batch imported into the database. Meanwhile, the methodology of batch data insert into the database is a good reference for programmers. In this way the users will no more need to know any professional tools and they just click a button, hence the data stored in Excel files is batch inserted. And at the same time, this methodology provides a data import way that makes the agricultural information compact, the users free from learning professional knowledge and importing data only based on basic data, which therefore makes time saved and the productivity improved.

## 5. Conclusion

The technique of data batch import is very important in practical information construction and development. It is a key to make operations easy for the amateur users. This paper provides a method for data batch import with the support of the DHI import function applied in cattle cultivation systems, which is so practical that makes the amateur users that are not majored in computer satisfied to do the operation of heavy data import. Meanwhile, this technique shows a method and acts well as a reference for programmers to implement data batch import into databases.

## Acknowledgement

This work is supported by the National Key Technology R&D Program of China under Grant NO. 2007BAD33B03.

## References

1. Mingrisoft.: Visual C# Development Technique Comprehensive Work, Posts & Telecom Press, Beijing, 533-534 (2007)

2. shuzhen T., yuezhou Z. :The organization, implementation and application of DHI. J. China Dairy Cattle. No.2, 35-37 (1999)

3. DHI-effective tool for dairy management, http://www.dahlj.com/gl_nnpdsc.asp?lb=86

4. (USA) Andrew Troelsen.: Pro C# with .NET 3.0, Special Edition, Apress, New York, 649-650 (2007)

5. DataSet, http://baike.baidu.com/view/624618.htm?fr=ala0_1