Foro de elhacker.net

Programación => .NET (C#, VB.NET, ASP) => Mensaje iniciado por: striderwar en 7 Abril 2011, 01:28 am



Título: SQL Scritp en VS.NET 2008
Publicado por: striderwar en 7 Abril 2011, 01:28 am
Hola, se puede ejectuar un SQL Script, sin necesidad de entrar a consola, lo que pasa que muchas veces no tienen instalado MySQL y necesito que se actualice la BD mediante el script y cree un Log,
yo tengo este codigo pero usa la consola,

Código
  1.    Private Sub BackgroundWorker1_DoWork(ByVal sender As System.Object, ByVal e As System.ComponentModel.DoWorkEventArgs) Handles BackgroundWorker1.DoWork
  2.        Dim dgRespuesta As DialogResult
  3.        Dim RutaMysqlContra, RutaMysql As String
  4.        dgRespuesta = MsgBox("<¿> ¿Deseas actualizar la base de datos? <?>", MsgBoxStyle.Question + MsgBoxStyle.YesNo)
  5.        If (dgRespuesta = Windows.Forms.DialogResult.Yes) Then
  6.            Dim Servidor, Usuario, Bd, Puerto, Pass As String
  7.            Servidor = Me.txtServidor.Text
  8.            Usuario = Me.txtUsuario.Text
  9.            Bd = Me.txtNombreBd.Text
  10.            Puerto = Me.txtPuerto.Text
  11.            Pass = Me.txtContraseña.Text
  12.            Me.BackgroundWorker1.ReportProgress(50)
  13.            Try
  14.                If Me.txtContraseña.Text <> "" Then
  15.                    RutaMysqlContra = Application.StartupPath & "\update.bat"
  16.                    'Shell("""" & RutaMysqlContra & """", AppWinStyle.Hide, True)
  17.                    Microsoft.VisualBasic.Interaction.Shell("cmd.exe /C mysql -h " & Servidor & " -u " & Usuario & " -p" & Pass & " -P " & Puerto & " -e ""source " & fbdCarpetas.SelectedPath & "\update.sql" & """ -vvv " & Bd & " > ""C:\log.txt"" ", AppWinStyle.Hide, True)
  18.                Else
  19.                    RutaMysql = Application.StartupPath & "\Update2.bat"
  20.                    'Shell("""" & RutaMysql & """", AppWinStyle.Hide, True)
  21.                    Microsoft.VisualBasic.Interaction.Shell("cmd.exe /C mysql -h " & Servidor & " -u " & Usuario & " -P " & Puerto & " -e ""source " & fbdCarpetas.SelectedPath & "\update.sql" & """ -vvv " & Bd & " > ""C:\log.txt"" ", AppWinStyle.Hide, True)
  22.                End If
  23.            Catch ex As Exception
  24.                MessageBox.Show(ex.Message.ToString())
  25.            Finally
  26.            End Try
  27.            Me.BackgroundWorker1.ReportProgress(100)
  28.        Else
  29.            MsgBox("<¡> El Usuario ha cancelado la actualizacion del programa <!>", MsgBoxStyle.Exclamation)
  30.            e.Cancel = True
  31.        End If
  32.    End Sub

Gracias.


Título: Re: SQL Scritp en VS.NET 2008
Publicado por: Novlucker en 7 Abril 2011, 03:08 am
Definitivamente necesitas cambiar eso :xD Deberías de utilizar el conector de .NET para MYSQL en lugar de hacer esas barbaridades :-X
http://dev.mysql.com/doc/refman/5.1/en/connector-net-ref-mysqlclient.html

En la red encuentras más ejemplos de esos :P

Saludos


Título: Re: SQL Scritp en VS.NET 2008
Publicado por: [D4N93R] en 7 Abril 2011, 19:49 pm
Y sí, si se puede hacer, crea una aplicacion Windows y borras todo menos el Program.cs .

Haces todo dentro del Main :)

Un saludo!