Usuário com melhor resposta
Criar tabelas temporárias mysql via C#

Pergunta
-
Pessoal,
Estou tentando criar uma tabela temporária no mysql, porém na "unha" funciona e via sistema não cria.
estou fazendo esse comando no mysql:
CREATE TEMPORARY TABLE bd_administrativo.Temp_mail1 as (SELECT email FROM bd_administrativo.tb_mailing WHERE (matinal='1') AND (solicitante Like '%PESQUISA%') AND (status='1') ORDER BY email)
No visual Studio 2010 fiz assim.
if (objConexao.State == ConnectionState.Open)
{
string strSQL = "CREATE TEMPORARY TABLE bd_administrativo.Temp_mail1 as (SELECT email FROM bd_administrativo.tb_mailing WHERE (matinal='1') AND (solicitante Like '%PESQUISA%') AND (status='1') ORDER BY email)";
cmd = new MySqlCommand(strSQL, cConexao.objConexao);
cmd.ExecuteScalar();
}Att,
Filipe Magalhães
Respostas
-
Colega fiz uns testes aqui e aparentemente o que acontece é o seguinte, quando criamos pelo banco a tabela é criada e tão logo fechamos o aplicativo ela é eliminada, quando se cria pelo c# e tabela é apagada tão logo a conexão é fechada, faça um teste, de uma pausa logo após a criação pelo c# antes de fechar a conexão e verifique no banco vai verificar que a tabela esta lá, quando fechar a conexão ela é apagada.
Se a resposta contribuiu com seu aprendizado por favor marque como Útil
Se solucionou seu problema por favor marque como Resposta
Atenção, se seu problema foi resolvido não deixe o post aberto
Visite : www.codigoexpresso.com.br- Sugerido como Resposta Código Expresso quarta-feira, 17 de agosto de 2016 11:57
- Marcado como Resposta Robson William SilvaModerator quarta-feira, 17 de agosto de 2016 12:11
Todas as Respostas
-
Como fez sua string de conexão ?
Se a resposta contribuiu com seu aprendizado por favor marque como Útil
Se solucionou seu problema por favor marque como Resposta
Atenção, se seu problema foi resolvido não deixe o post aberto
Visite : www.codigoexpresso.com.br -
Amigo,
String HOST = "Servidor";
String USUARIO = "root";
String SENHA = "";
String BANCO = "bd_administrativo";
String stringConexao = "Database=" + BANCO + ";Data Source=" + HOST + ";User Id=" + USUARIO + ";Password=" + SENHA + "; pooling=false";
//Criando objeto MySqlConnection
objConexao = new MySqlConnection(stringConexao);
objConexao.Open(); -
tente assim, troque os dados por seus dados de conexão
connectionString="server=localhost ;user id=root;pwd='123456';database=Escola;Connect Timeout=28800;Command Timeout=2880"
se quiser dar uma olhada tenho uma classe pronta para fazer a conexão
Classe para conexão MySql com C#
Se a resposta contribuiu com seu aprendizado por favor marque como Útil
Se solucionou seu problema por favor marque como Resposta
Atenção, se seu problema foi resolvido não deixe o post aberto
Visite : www.codigoexpresso.com.br
- Editado Código Expresso terça-feira, 16 de agosto de 2016 16:17
-
Amigo,
Não criou a tabela. Não apresenta erro nenhum mas quando vou confirmar no mysql ele não gera.
vou te explicar o que preciso as vezes mudando a maneira de gerar pode funcionar.
Tenho um disparo de e-mails para 18 mil e-mails e ele não funciona por ter muitos e-mails, porém iria quebrar em lotes para envio, por isso estou criando tabela temporária. Tem outra ideia?
Vlw
Filipe Magalhães
-
-
Sim, efetuei o teste e só não executa no sistema feito em c#
Fiz outro teste tirei a criação da tabela temporária e coloquei um insert e funcionou tb.
estou pensando em criar um classe para dar um insert numa tabela fixa, mas o ideal seria a temporária que mataria no final da aplicação.
-
-
Colega fiz uns testes aqui e aparentemente o que acontece é o seguinte, quando criamos pelo banco a tabela é criada e tão logo fechamos o aplicativo ela é eliminada, quando se cria pelo c# e tabela é apagada tão logo a conexão é fechada, faça um teste, de uma pausa logo após a criação pelo c# antes de fechar a conexão e verifique no banco vai verificar que a tabela esta lá, quando fechar a conexão ela é apagada.
Se a resposta contribuiu com seu aprendizado por favor marque como Útil
Se solucionou seu problema por favor marque como Resposta
Atenção, se seu problema foi resolvido não deixe o post aberto
Visite : www.codigoexpresso.com.br- Sugerido como Resposta Código Expresso quarta-feira, 17 de agosto de 2016 11:57
- Marcado como Resposta Robson William SilvaModerator quarta-feira, 17 de agosto de 2016 12:11
-