Jump to content
Hunter

Como Importar dados para SQL SERVER utilizando C# Windows Forms?!

Recommended Posts

Hunter

Boas gente,

Tenho dúvida, isto é não sei mesmo como fazer nem tão pouco se é possível importar dados para uma base de dados utilizando a linguagem C# Windows Forms.

Agradeço desde já,

Com os melhore comprimentos,

Hunter

Share this post


Link to post
Share on other sites
nelsonr

Boas Hunter,

sim é possível, terás que ler os dados e depois criar registos numa base de dados SQL Server.

Para ler os dados depende do formato origem.

Para guardares os dados, tens de abrir uma ligação ao servidor SQL e usar comandos de inserir dados.

Pretendes apenas saber se é possível ou tens dúvida sobre algum passo mais específico?

Share this post


Link to post
Share on other sites
Hunter

Boas Nelsonr,

A duvida que tenho é em tudo uma vez que nunca trabalhei com isso nem nunca estudei isto, logo o meu conhecimento neste caso é zero.

Share this post


Link to post
Share on other sites
nelsonr

Uii...

bem, qual é o formato dos dados originais?

Já tens a base de dados no servidor SQL criada?

Queres fazer um "importador" ou apenas importar uma só vez? É que o SQL Server Management Studio permite importar dados (se o formato não for muito complicado)

Já agora, nunca programaste em C#? Mas já programaste em outras linguagens?

Share this post


Link to post
Share on other sites
zeDoBico

ò nelsonr não percebes a ponta de um chaveiro, não sabes ajudar logo o rapaz, ele já disse que não percebia nada de c#

Share this post


Link to post
Share on other sites
nelsonr

Que simpatia...

Quando ele menciona "nunca trabalhei com isso nem nunca estudei isto, logo o meu conhecimento neste caso é zero" podia estar a referir-se tanto à linguagem, como apenas à parte de mexer em bases de dados, ou então à parte de fazer importações, dai a minha questão.

Share this post


Link to post
Share on other sites
Hunter

É assim Zedobico, uma pessoa explicasse mas nem sempre se percebe tudo não é, claro que se podiam esforçar para explicar concretamente sem rodeios mas uma pessoa já está a chatear e as pessoas tem mais que fazer e toda a ajuda é bem vinda por isso zedo

bico não incomode as pessoas e faça o que melhor sabe

Share this post


Link to post
Share on other sites
nelsonr

Hunter, normalmente quando fazem uma questão sobre uma parte específica a programar, a ajuda costuma ser específica.

Quando a questão é muito geral, como foi o teu caso, tem de se dividir por passos e tentar ajudar um passo de cada vez.

Share this post


Link to post
Share on other sites
Hunter

Compreendo, aquele individuo, o Bico é que não entende e estava aquia incomodar as pessoas

Share this post


Link to post
Share on other sites
brunobola

E qualquer maneira se quiseres importar de uma folha de excel para SQL Server, tens aqui uma Classe que é só passares o path do ficheiro e validares a conection string para o sql:

public void importdatafromexcel(string excelfilepath)
{
//declare variables - edit these based on your particular situation
string ssqltable = "tdatamigrationtable";
// make sure your sheet name is correct, here sheet name is sheet1, so you can change your sheet name if have
different
string myexceldataquery = "select student,rollno,course from [sheet1$]";
try
{
	//create our connection strings
	string sexcelconnectionstring = @"provider=microsoft.jet.oledb.4.0;data source=" + excelfilepath +
	";extended properties=" + "\"excel 8.0;hdr=yes;\"";
	string ssqlconnectionstring = "server=mydatabaseservername;user
	id=dbuserid;password=dbuserpassword;database=databasename;connection reset=false";
	//execute a query to erase any previous data from our destination table
	string sclearsql = "delete from " + ssqltable;
	sqlconnection sqlconn = new sqlconnection(ssqlconnectionstring);
	sqlcommand sqlcmd = new sqlcommand(sclearsql, sqlconn);
	sqlconn.open();
	sqlcmd.executenonquery();
	sqlconn.close();
	//series of commands to bulk copy data from the excel file into our sql table
	oledbconnection oledbconn = new oledbconnection(sexcelconnectionstring);
	oledbcommand oledbcmd = new oledbcommand(myexceldataquery, oledbconn);
	oledbconn.open();
	oledbdatareader dr = oledbcmd.executereader();
	sqlbulkcopy bulkcopy = new sqlbulkcopy(ssqlconnectionstring);
	bulkcopy.destinationtablename = ssqltable;
	while (dr.read())
	{
		bulkcopy.writetoserver(dr);
	}

	oledbconn.close();
}
catch (exception ex)
{
	//handle exception
}
}

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.