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

GlebV

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

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

Skorp

Member
Joined
Dec 13, 2003
Messages
44
Reaction score
6
Location
online
это нужно сделать средствами самого MySQL и command shell или можно, к примеру, написать несколько строк на Visual Basic или С++ ?
 

GlebV

Member
Joined
May 5, 2006
Messages
50
Reaction score
9
Location
moscow
Хоть на чем, гловное чтоб работало...
 

lockly

Member
Joined
Feb 5, 2004
Messages
55
Reaction score
7
Age
53
Location
Moscow
а обыкновенным батником или скриптом это нельзя сделать?
 

GlebV

Member
Joined
May 5, 2006
Messages
50
Reaction score
9
Location
moscow
Не знаю насчет батника - не представляю как он должен выглядеть, насчет скрипта - кто его будет запускать?? я написал скрипт но для активации надо зайти на страницу с скриптом, чтоб он запустился, а мне надо автоматом
 

lockly

Member
Joined
Feb 5, 2004
Messages
55
Reaction score
7
Age
53
Location
Moscow
Вот держи прога по запуску любого приложения с любым интервалом
_h**p://www.xstarter.com/rus/index.html
 

Skorp

Member
Joined
Dec 13, 2003
Messages
44
Reaction score
6
Location
online
Где нибудь в модуле:
Code:
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

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

Code:
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 и т.д. и т.п.
 

GlebV

Member
Joined
May 5, 2006
Messages
50
Reaction score
9
Location
moscow
Skorp said:
Где нибудь в модуле:
Code:
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

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

Code:
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

Member
Joined
Dec 13, 2003
Messages
44
Reaction score
6
Location
online
sSQL это непосредственно запрос на обновленение:
т.е. примерно дословно то, что у вас в 3м вопросе :)

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

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