PDA

Просмотр полной версии : Связь Excel 2007 и mysql 5.0


Student :)
25.10.2007, 23:25
Доброго вам дня!!!!
Подскажите пожалуйста как создать Связь Excel 2007 и mysql 5.0?
проблема в том. Что в excele ведуться записи и их надо дублировать на сервер в интернете
на котором стоит mysql.
Зарание спасибо за ответы :)

guest3297
25.10.2007, 23:27
Установи сервак и сделай востановление, по через xls, там есть такая опция.

Student :)
25.10.2007, 23:31
а какой сервак установить ?

Helios
25.10.2007, 23:36
Поставь на сервер phpMyAdmin (хотя он, наверное, уже стоит). создай через него БД.

В экселе сохрани нужную таблицу в формате CSV, и мипотрируй ее через phpMyAdmin в новую базу

Student :)
25.10.2007, 23:44
понимаете таблицы в excele большые и мне надо просто вставлять под конец дня
последнии 10 записей

guest3297
25.10.2007, 23:45
Microsoft SQL Server 2003

Helios
25.10.2007, 23:50
2 Student :)

Трудно эти 10 строк скопировать в пустую таблицу и импортировать в мускул?

2 [cash]
Читай внимательнее, что спрашивают

Student :)
25.10.2007, 23:51
конечно :) потомучто етим будут заниматься девчонки

hidden
27.10.2007, 06:04
конечно :) потомучто етим будут заниматься девчонкиЕсли они справятся с выделением того, что нужно отправить и нажатием на кнопку отправить, то можно использовать этот макрос :D
Sub SendByPOST()
query = ""
For RowCount = 1 To Selection.Rows.Count
If RowCount > 1 Then
query = query + Chr(13)
End If
For ColumnCount = 1 To Selection.Columns.Count
If ColumnCount > 1 Then
query = query + Chr(9)
End If
query = query + Selection.Cells(RowCount, ColumnCount).Text
Next ColumnCount
Next RowCount

Set xmlReq = CreateObject("Microsoft.XMLHTTP")
xmlReq.Open "POST", "http://localhost/xls.php", False
xmlReq.setRequestHeader "Content-Type", "text/xml"
xmlReq.setRequestHeader "Connection", "Close"
xmlReq.setRequestHeader "Content-length", Len(query)
xmlReq.send (query)
If (xmlReq.Status >= 200 And xmlReq.Status < 300) Then
MsgBox "Done"
Else
MsgBox "Filed: " + CStr(xmlReq.Status)
End If
End Sub
А получать результат примерно так:
<?
$f=fopen('xls.txt', 'a');
fwrite($f, @file_get_contents('php://input')."\n");
fclose($f);
?>Думаю, как связать PHP и SQL ты и сам разберёшься...

А довать доступ клиентской машине напрямую к SQL думаю лишнее, а-то девочки до пароля добираться и подкорректируют твою базу, а-то и шелл зальют :D

Student :)
27.10.2007, 18:39
hidden - спасибо будем разбираться с меня +

Student :)
27.10.2007, 23:08
а можно чтоб и название колонок отправлялось ?

hidden
28.10.2007, 04:30
Хз как понять, где там имена колонок, можно номер первой выделенной колонки передать, а дальше они должны по порядку идти, ведь у тебя имена колонок постоянные

Замени
query = ""
на
query = "First column:" & Selection.Column & Chr(13)

Student :)
07.11.2007, 23:33
А КАК сжелать чтоб ещё отправлялись имена колонок?
пример (a=1 B=петя и тд

hidden
08.11.2007, 00:11
ВотSub SendByPOST()
query = ""
For RowCount = 1 To Selection.Rows.Count
If RowCount > 1 Then
query = query & Chr(13)
End If
For ColumnCount = 1 To Selection.Columns.Count
If ColumnCount > 1 Then
query = query & Chr(9)
End If
query = query & ActiveSheet.Cells(1, Selection.Column + ColumnCount - 1).Text & ":" & Selection.Cells(RowCount, ColumnCount).Text
Next ColumnCount
Next RowCount

Set xmlReq = CreateObject("Microsoft.XMLHTTP")
xmlReq.Open "POST", "http://localhost/xls.php", False
xmlReq.setRequestHeader "Content-Type", "text/xml"
xmlReq.setRequestHeader "Connection", "Close"
xmlReq.setRequestHeader "Content-length", Len(query)
xmlReq.send (query)
If (xmlReq.Status >= 200 And xmlReq.Status < 300) Then
MsgBox "Done"
Else
MsgBox "Filed: " & xmlReq.Status
End If
End SubПодразумевается что имена колонок народятся в первой строке, иначе "...Cells(1, Sele..." тут нужно указать строку.