Jump to content
Fórum Script Brasil
  • 0

Importar diversos dados em base dados SQL Server


msource
 Share

Question

Bom dia pessoal, será que alguém me pode tirar uma dúvida, por favor?

Tenho uma instrução para ir busar determinados dados via ODBC com o seguinte código:

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// SECTOR DE ACTIVIDADE
echo "<b>SECTOR DE ACTIVIDADE</b>";
echo "<table>";
	echo "<tr>";
		echo "<th>COD.</th>";
		echo "<th>DESCRICAO</th>";
	echo "</tr>";
	
$querySA = "SELECT 	ttcmcs031512.t_cbrn,
					ttcmcs031512.t_dsca
			FROM 	ttcmcs031512
			WHERE 	ttcmcs031512.t_dsca <> ' ';";

$resSA = odbc_exec($conn, $querySA);
if(!$resSA){
	echo "Erro SQL: <br>".$resSA."";
}else{
	while(odbc_fetch_row($resSA)){
		$t_cbrn = trim(odbc_result($resSA,"t_cbrn")); // CHAVE/CODIGO DE SECTOR ACTIVIDADE
		$t_dsca = trim(odbc_result($resSA,"t_dsca")); // DESCRIÇÃO DO SECTOR DE ACTIVIDADE
	
		echo"<tr>";
			echo "<td>".$t_cbrn."</td>";
			echo "<td>".$t_dsca."</td>";
		echo"</tr>";
 }

Agora preciso de importar estes dados para uma base de dados SQL Server 2014.
Como posso fazer?

Dentro do While estava a pensar colocar o seguinte:

while(odbc_fetch_row($resSA)){
		$t_cbrn = trim(odbc_result($resSA,"t_cbrn")); // CHAVE/CODIGO DE SECTOR ACTIVIDADE
		$t_dsca = trim(odbc_result($resSA,"t_dsca")); // DESCRIÇÃO DO SECTOR DE ACTIVIDADE
	
		echo"<tr>";
			echo "<td>".$t_cbrn."</td>";
			echo "<td>".$t_dsca."</td>";
		echo"</tr>";
		
		///////////////////////////////////////////////////////////////////////////////////
		// INSERT/UPDATE SQL SERVER - TABELA dbo.Sectores*/
		
		$queryS = "SELECT * FROM dbo.Sectores";
		$stmt = sqlsrv_query( $cnSQL, $queryS );
		if( $stmt === false){
			die( print_r( sqlsrv_errors(), true) );
		}else{
			while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC) ) {
				$sec = $row['CodSector'];
				//echo $sec;
				if ($t_dsca!=$sec){
					$querySQL = "INSERT INTO dbo.Sectores (CodSector) VALUES (?)";
					$param = array($t_dsca);		
				}else{
					$querySQL = "UPDATE dbo.Sectores set CodSector=(?) WHERE CodSector='$t_dsca'";
					$param = array($t_dsca);
				}
			}
			//$insertReview = sqlsrv_prepare($cnSQL, $querySQL, $param);
			if( $insertReview === false ){ die( FormatErrors( sqlsrv_errors() ) ); }
			if( sqlsrv_execute($insertReview) === false ){ die( FormatErrors( sqlsrv_errors() ) ); }
		}
	}

Mas assim não está a funcionar, como acham que posso fazer?

Atentamente,
MF

Link to comment
Share on other sites

2 answers to this question

Recommended Posts

  • 0
Em 5/4/2016 at 11:51, msource disse:

Bom dia pessoal, será que alguém me pode tirar uma dúvida, por favor?

Tenho uma instrução para ir busar determinados dados via ODBC com o seguinte código:

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// SECTOR DE ACTIVIDADE
echo "<b>SECTOR DE ACTIVIDADE</b>";
echo "<table>";
	echo "<tr>";
		echo "<th>COD.</th>";
		echo "<th>DESCRICAO</th>";
	echo "</tr>";
	
$querySA = "SELECT 	ttcmcs031512.t_cbrn,
					ttcmcs031512.t_dsca
			FROM 	ttcmcs031512
			WHERE 	ttcmcs031512.t_dsca <> ' ';";

$resSA = odbc_exec($conn, $querySA);
if(!$resSA){
	echo "Erro SQL: <br>".$resSA."";
}else{
	while(odbc_fetch_row($resSA)){
		$t_cbrn = trim(odbc_result($resSA,"t_cbrn")); // CHAVE/CODIGO DE SECTOR ACTIVIDADE
		$t_dsca = trim(odbc_result($resSA,"t_dsca")); // DESCRIÇÃO DO SECTOR DE ACTIVIDADE
	
		echo"<tr>";
			echo "<td>".$t_cbrn."</td>";
			echo "<td>".$t_dsca."</td>";
		echo"</tr>";
 }

Agora preciso de importar estes dados para uma base de dados SQL Server 2014.
Como posso fazer?

Dentro do While estava a pensar colocar o seguinte:

while(odbc_fetch_row($resSA)){
		$t_cbrn = trim(odbc_result($resSA,"t_cbrn")); // CHAVE/CODIGO DE SECTOR ACTIVIDADE
		$t_dsca = trim(odbc_result($resSA,"t_dsca")); // DESCRIÇÃO DO SECTOR DE ACTIVIDADE
	
		echo"<tr>";
			echo "<td>".$t_cbrn."</td>";
			echo "<td>".$t_dsca."</td>";
		echo"</tr>";
		
		///////////////////////////////////////////////////////////////////////////////////
		// INSERT/UPDATE SQL SERVER - TABELA dbo.Sectores*/
		
		$queryS = "SELECT * FROM dbo.Sectores";
		$stmt = sqlsrv_query( $cnSQL, $queryS );
		if( $stmt === false){
			die( print_r( sqlsrv_errors(), true) );
		}else{
			while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC) ) {
				$sec = $row['CodSector'];
				//echo $sec;
				if ($t_dsca!=$sec){
					$querySQL = "INSERT INTO dbo.Sectores (CodSector) VALUES (?)";
					$param = array($t_dsca);		
				}else{
					$querySQL = "UPDATE dbo.Sectores set CodSector=(?) WHERE CodSector='$t_dsca'";
					$param = array($t_dsca);
				}
			}
			//$insertReview = sqlsrv_prepare($cnSQL, $querySQL, $param);
			if( $insertReview === false ){ die( FormatErrors( sqlsrv_errors() ) ); }
			if( sqlsrv_execute($insertReview) === false ){ die( FormatErrors( sqlsrv_errors() ) ); }
		}
	}

Mas assim não está a funcionar, como acham que posso fazer?

Atentamente,
MF

Alguém consegue ajudar, por favor?

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Forum Statistics

    • Total Topics
      149.6k
    • Total Posts
      646.2k
×
×
  • Create New...