автоматическое обновление таблицы БД в MySQL

  • Тут может быть ваша реклама

GlebV

Турист
5 Май 2006
50
9
13
moscow
Credits
0
Собственно говоря, такая задача -
нужно сделать автоматическое обновление таблицы базы данных mysql каждые пять минут..
т.е проще говоря, чтоб комп делал следующее:
1) запускал консоль мускула
2) use 'dbname'
3) прописывал Update `dbtable` set `activation_key` = '', `activated` = 'true';

Вот и всё вроде. Заранее thx:)
 

Skorp

Турист
13 Дек 2003
44
4
13
online
Credits
0
это нужно сделать средствами самого MySQL и command shell или можно, к примеру, написать несколько строк на Visual Basic или С++ ?
 
  • Like
Реакции: GlebV

GlebV

Турист
5 Май 2006
50
9
13
moscow
Credits
0
Не знаю насчет батника - не представляю как он должен выглядеть, насчет скрипта - кто его будет запускать?? я написал скрипт но для активации надо зайти на страницу с скриптом, чтоб он запустился, а мне надо автоматом
 

Skorp

Турист
13 Дек 2003
44
4
13
online
Credits
0
Где нибудь в модуле:
Код:
Imports MySql.Data.MySqlClient

Module Module1
    Public myConnection As MySqlConnection

    Public Sub Connection(ByVal conString As String)
        myConnection = New MySqlConnection(conString)
        myConnection.Open()
    End Sub

    Public Sub ExecSQL(ByVal sSQL As String)
        Dim myCommand As New MySqlCommand(sSQL)
        myCommand.Connection = myConnection
        myCommand.ExecuteNonQuery()
    End Sub

End Module

Далее по месту:

Код:
cString = "Database=<>; Data Source=<>; User Id=<>; Password=<>"
Try
  Connection(cString)
Catch ex As Exception
  MsgBox("Ошибка соединения: " & vbCrLf & ex.Message)
  Return
End Try

sSQL = "..." ' 3) Update `dbtable` set `activation_key` = '', `activated` = 'true'; >"
ExecSQL(sSQL)

чтобы подружить VB.NET и MySQL понадобится: MySQL Connector Net
найти его, например, можно так:
_http://www.yandex.ru/yandsearch?text=mysql-connector-net&stype=www

запуск программы можно автоматизировать, например, шедулером винды, с помощью nnCron и т.д. и т.п.
 
  • Like
Реакции: GlebV

GlebV

Турист
5 Май 2006
50
9
13
moscow
Credits
0
Skorp написал(а):
Где нибудь в модуле:
Код:
Imports MySql.Data.MySqlClient

Module Module1
    Public myConnection As MySqlConnection

    Public Sub Connection(ByVal conString As String)
        myConnection = New MySqlConnection(conString)
        myConnection.Open()
    End Sub

    Public Sub ExecSQL(ByVal sSQL As String)
        Dim myCommand As New MySqlCommand(sSQL)
        myCommand.Connection = myConnection
        myCommand.ExecuteNonQuery()
    End Sub

End Module

Далее по месту:

Код:
cString = "Database=<>; Data Source=<>; User Id=<>; Password=<>"
Try
  Connection(cString)
Catch ex As Exception
  MsgBox("Ошибка соединения: " & vbCrLf & ex.Message)
  Return
End Try

sSQL = "..." ' 3) Update `dbtable` set `activation_key` = '', `activated` = 'true'; >"
ExecSQL(sSQL)

чтобы подружить VB.NET и MySQL понадобится: MySQL Connector Net
найти его, например, можно так:
_http://www.yandex.ru/yandsearch?text=mysql-connector-net&stype=www

запуск программы можно автоматизировать, например, шедулером винды, с помощью nnCron и т.д. и т.п.


Такс спасибо огромное...=))только я в ВБ полный 0, и у меня тут возникло несколько вопросов:
1) Что значит "Далее по месту"?=)
2) cString = "Database=<>; Data Source=<>; User Id=<>; Password=<> - всё ясно кроме Data source(это который по дефолту localhost или это имя талицы?)
3) sSQL = "???"

Еще раз сенкс за помощь
 

Skorp

Турист
13 Дек 2003
44
4
13
online
Credits
0
sSQL это непосредственно запрос на обновленение:
т.е. примерно дословно то, что у вас в 3м вопросе :)

Data source - это имя или (что лучше) IP MySQL сервере, Database - имя базы данных

"Далее по месту" - это значит, что воткнуть это код там где нужно непосредственно выполнить действия с БД: в обработчик клика по кнопке, стартовую процедуру, обработчик событий тайера и т.д.
 
  • Like
Реакции: GlebV