Solved

import data from CSV file into the sql server database

Posted on 2008-10-09
3
1,077 Views
Last Modified: 2012-05-05
Hello Experts,
 I have a CSV file which holds questions and multiple choice information in the CSV file. I am trying to
create a page where I can read the data from this file and insert all the questions into the QUESTIONS table and 4 multiple choice options into the OPTIONS table.
 Please can someone help me in this.
 Your help is much appreciated.
 Regards
 Kay
Test1.xls
0
Comment
Question by:learningnet
  • 2
3 Comments
 
LVL 9

Expert Comment

by:Sander Stad
ID: 22677947
There is standard functionality in SQL Server 2005 that lets you do this. it is called SSIS (SQL Server Integrated Services).
Look at this article from www.basejournal.nl to see how you can import data from your XLS or CVS file. Remember that you'd probably have to import the data for every table. So in your case you'd have to do this oncehe QUESTIONS and once for the OPTIONS table.
URL: http://www.databasejournal.com/features/mssql/article.php/3580216 
0
 

Author Comment

by:learningnet
ID: 22678064
thanks sstad for the links

apparently i cannot use that way because this has to go in the admin section of the were a user can upload the questions into the DB

please see the tables format attached

thanks
Questions
---------
QuestionID	TestID	QuestionContent					QuestionNumber	
1		1	A passive background to a story provides	1
2		1	Which one of the following a location		2
 
Options
--------
OptionId	Option							OptionNumber	Correct QuestionId 
1		An incidental background and setting for the story	0	1	1	1
2		A background to the story that has significant		1	0	1	1
3		A small location set in a rural community 		2	0	1	1
4		A big location that impacts the story			3	0	1	1
5		The cell was a tiny room. It just containednd basin. 	0	0	2	1
6		Tom travelled his entire world in ten steps 		1	1	2	1
7		The cell was ten foot. Tom had been in prison for 	2	0	2	1
8		Tom had been in prison for two years			3	0	2	1

Open in new window

0
 
LVL 9

Accepted Solution

by:
Sander Stad earned 500 total points
ID: 22678206
I probably found something you can use. What you have to do is create an upload tool for your webpage. So if someone uploads the file(s) they are placed in a temp dir on your webserver.
You'd have to create a BULK INSERT to do this in SQL Server that will take care of the inserts into the tables.
Look at this article: http://blog.sqlauthority.com/2008/02/06/sql-server-import-csv-file-into-sql-server-using-bulk-insert-load-comma-delimited-file-into-sql-server/
So to be clear this is what you have to do:
  1. Create an upload tool in your webpage that uploads the csv file
  2. Create a stored procedure that has a parameter with the just uploaded file. In an server-side language you can return the value of the just submitted csv file back to you so you can give it to the stored procedure.
  3. Do this seperately for every table, so twice in your example. One for your questions table and one for your options table.

0

Featured Post

Announcing the Most Valuable Experts of 2016

MVEs are more concerned with the satisfaction of those they help than with the considerable points they can earn. They are the types of people you feel privileged to call colleagues. Join us in honoring this amazing group of Experts.

Question has a verified solution.

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

Suggested Solutions

Just a quick little trick I learned recently.  Now that I'm using jQuery with abandon in my asp.net applications, I have grown tired of the following syntax:      (CODE) I suppose it just offends my sense of decency to put inline VBScript on a…
User art_snob (http://www.experts-exchange.com/M_6114203.html) encountered strange behavior of Android Web browser on his Mobile Web site. It took a while to find the true cause. It happens so, that the Android Web browser (at least up to OS ver. 2.…
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…
The Email Laundry PDF encryption service allows companies to send confidential encrypted  emails to anybody. The PDF document can also contain attachments that are embedded in the encrypted PDF. The password is randomly generated by The Email Laundr…

825 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