Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

mestre fyoda

importar dados txt para mysql

Recommended Posts

erro :

Query was empty

o meu script :

<?php $host = "localhost"; $user = "root"; $password = "rafael"; $db = "test"; $tabela = "produto"; $conexao = mysql_connect($host, $user, $password) or die(mysql_error()); $banco = mysql_select_db($db) or die(mysql_error()); $arquivo = 'script.sql'; $arq = fopen($arquivo,'r'); while(!feof($arq)) $linha = fgets($arq); // cria um array com o conteudo do arquivo $conteudo = $linha;echo "$conteudo";mysql_query($conteudo) or die(mysql_error());?>

 

script.sql :

CREATE TABLE produto (	codigo_produto varchar(9) NOT NULL ,	produto varchar(50) NOT NULL ,	quantidade int(11) default '0' NOT NULL ,	preco double default '0' NOT NULL ,	descricao varchar(100) NOT NULL ,	promocao char(3) NOT NULL ,	categoria varchar(50) NOT NULL ,	subcategoria varchar(50) NOT NULL ,	imagem_produto varchar(50) NOT NULL ,	imagem_subgrupo varchar(50) NOT NULL ,	PRIMARY KEY (codigo_produto));INSERT INTO produto VALUES('000211-21' , 'Placa Mãe Asus A8V-DELUXE' , '5' , '300.2' , 'Plaaca Mãe nao suporta as placas de videos atuais.' , 'Nao' , 'Placa Mãe' , 'Asus' , 'asus.JPG' , 'asus.JPG');INSERT INTO produto VALUES('000128-88' , 'Placa Mãe GigaByte SD3' , '5' , '500.1' , 'Placa Mãe suporta placas de videos modernas .' , 'Nao' , 'Placa Mãe' , 'GigaByte' , 'gigabyte.GIF' , 'gigabyte.GIF');

Compartilhar este post


Link para o post
Compartilhar em outros sites

erro :

Query was empty

o meu script :

<?php $host = "localhost"; $user = "root"; $password = "rafael"; $db = "test"; $tabela = "produto"; $conexao = mysql_connect($host, $user, $password) or die(mysql_error()); $banco = mysql_select_db($db) or die(mysql_error()); $arquivo = 'script.sql'; $arq = fopen($arquivo,'r'); while(!feof($arq)) $linha = fgets($arq); // cria um array com o conteudo do arquivo $conteudo = $linha;echo "$conteudo";mysql_query($conteudo) or die(mysql_error());?>

 

script.sql :

CREATE TABLE produto (	codigo_produto varchar(9) NOT NULL ,	produto varchar(50) NOT NULL ,	quantidade int(11) default '0' NOT NULL ,	preco double default '0' NOT NULL ,	descricao varchar(100) NOT NULL ,	promocao char(3) NOT NULL ,	categoria varchar(50) NOT NULL ,	subcategoria varchar(50) NOT NULL ,	imagem_produto varchar(50) NOT NULL ,	imagem_subgrupo varchar(50) NOT NULL ,	PRIMARY KEY (codigo_produto));INSERT INTO produto VALUES('000211-21' , 'Placa Mãe Asus A8V-DELUXE' , '5' , '300.2' , 'Plaaca Mãe nao suporta as placas de videos atuais.' , 'Nao' , 'Placa Mãe' , 'Asus' , 'asus.JPG' , 'asus.JPG');INSERT INTO produto VALUES('000128-88' , 'Placa Mãe GigaByte SD3' , '5' , '500.1' , 'Placa Mãe suporta placas de videos modernas .' , 'Nao' , 'Placa Mãe' , 'GigaByte' , 'gigabyte.GIF' , 'gigabyte.GIF');

nesse codigo eu resgato o arquivo scrip.sql(backup do bd mysql) e tento executar o script.sql no mysql , mas nao ta dando certo , pq ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

tenho uma solução muito mais simples, eu acho. o objetivo é importar o script.sql para o db, não é?é fácil, você transforma cada linha do arquivo em um elemento de uma variável de uma array, depois une todos esses elementos separando-os apenas por um espaço, então executa no banco de dados.como ??? mais fácil ainda, :<?php(conexão com o banco de dados)$arquivo = fopen("scripts.sql", "r");$array = file($arquivo);$conteudo = implode(" ", $array);mysql_query($conteudo) or die(mysql_error());?>QUE ISSO HEIN?HAHAHA, testa aí, vamos ver se estou certo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Só lembrando que quando é utilizada a função file() não é necessário criar um manipulador de arquivos fopen(), pode utilizar a partir do file mesmo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.