Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Zapytanie XML lub CSV czy możliwe?
dudek1989
post 11.03.2016, 08:36:51
Post #1





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 11.03.2016

Ostrzeżenie: (0%)
-----


Witam serdecznie,

Posiadam urządzenie które jest swobodnie programowalne w języku C (dokładnie to TinyC - okrojone C) i posiada funkcje pozwalające obsługiwać formaty takiej jak XML czy CSV.
Jako że z bazami danych nie miałem dotychczas wiele wspólnego, a chciałbym zacząć używać ich w swoich aplikacjach na tym urządzeniu, mam do Państwa pytanie, czy jest możliwość komunikowania się z bazą danych MS SQL Server za pomocą któregoś z wyżej wymienionych formatów ?

Chciałbym za pomocą tego urządzenie bezpośrednio np. pobierać i wpisywać nowe rekordy do tabel w bazie danych na komputerze serwerowym.

Z góry dziękuję za pomoc w temacie

Pozdrawiam.
Go to the top of the page
+Quote Post
zegarek84
post 11.03.2016, 18:43:52
Post #2





Grupa: Zarejestrowani
Postów: 1 332
Pomógł: 294
Dołączył: 12.10.2008
Skąd: Olkusz

Ostrzeżenie: (0%)
-----


choć nie jestem "programistą" z zawodu i miałem pisać co innego, to mimo to musisz doprecyzować pytanie... zanim zapodam link to komunikacja z bazą wymaga połączenia internetowego - jeśli możesz je nawiązać w dowolny sposób (z bazą) to (no jak nie masz bibliotek trochu zachodu by było) nie o to chodziło... a jeśli nie możesz nawiązać połączenia z BD to i poniższy link nic nie da... jednak wrzucam go, gdyż może chodziło Ci właśnie o to (by na google Cię nakierować):
How can I query a value in SQL Server XML column
mysql:
http://dev.mysql.com/doc/refman/5.7/en/xml-functions.html


--------------------
Jeśli twoja ręka rusza do przodu powstrzymaj swój gniew; gdy wyprzedza cię twój gniew - wycofaj rękę.

Go to the top of the page
+Quote Post
dudek1989
post 12.03.2016, 09:08:36
Post #3





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 11.03.2016

Ostrzeżenie: (0%)
-----


Urządzenie posiada złącze ethernetowe a ustawienia karty sieciowej można konfigurować.

Właśnie nigdy nie łączyłem się z bazą danych i zastanawiam się czy za pomocą tego urządzenia i np wygenerowanego pliku XML (załóżmy skopiowanego w odpowiednie miejsce w SQL Server mogę odpytać bazę danych, która zwróci mi odpowiednie wartości w postaci pliku XML.
Czytałem o XQuery ale nie wiem czy dobrym kierunku idę...

Bibliotek z rozszerzeniem *.c oraz *.h nie posiadam... o ile takie istnieją...
Go to the top of the page
+Quote Post
zegarek84
post 12.03.2016, 15:22:39
Post #4





Grupa: Zarejestrowani
Postów: 1 332
Pomógł: 294
Dołączył: 12.10.2008
Skąd: Olkusz

Ostrzeżenie: (0%)
-----


doprecyzowałeś i stwierdzam, że idziesz w złym kierunku...

jak bardzo to C jest okrojone?? gdyż potrzebujesz właśnie jakiegoś klienta do bazy danych, o ile chciałbyś skorzystać z lokalnej bazy danych np. SQLite to nie potrzebowałbyś nawet połączenia internetowego...

do MSSQL bibliotek musisz sobie sam poszukać, ja jedynie mogę próbować Cię nakierować... jeśli na urządzeniu masz baaardzo ograniczone zasoby jak np. na mikro-kontrolerach AVR to całość można obejść np. komunikując się z innym urządzeniem po TCP lub UDP i w dowolnym innym języku odpytać bazę danych (DB) np.:
Arduino i MySQL

co prawda nie MSSQL ale:
MySQL C API programming tutorial
24.8 MySQL C API

w sumie to możesz też zmienić kompilator na inny i w wielu przypadkach kompilować na innym urządzeniu (poczytaj)...
a o ile nie masz baardzo ograniczonych zasobów i system tego urządzenia jest na liście wspieranych przez C++ Qt http://doc.qt.io/QtSupportedPlatforms/index.html to polecałbym skorzystać z ich API w C++, nie musisz korzystać od razu z całego GUI a mają dobrą dokumentację...

[EDIT]
jeśli to C masz baaardzo okrojone i wciąż chcesz pisać w TinyC to poszukaj bibliotek do komunikacji sieciowej i by było łatwiej rozwiązanie oprzyj poprzez komunikacje z innym urządzeniem/serwerem jak w pierwszym linku Arduino i MySQL...

Ten post edytował zegarek84 12.03.2016, 15:26:21


--------------------
Jeśli twoja ręka rusza do przodu powstrzymaj swój gniew; gdy wyprzedza cię twój gniew - wycofaj rękę.

Go to the top of the page
+Quote Post
dudek1989
post 12.03.2016, 18:54:53
Post #5





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 11.03.2016

Ostrzeżenie: (0%)
-----


Okrojone jest na tyle że nie posiada np. struktur, przedrostka extern oraz static, nie posiada oczywiście funkcji windowsowskich itp. i pewnie coś by się jeszcze znalazło...

Zależy mi na bazie MS SQL Server, gdyż jest ona bardzo często spotykana jako serwer bazy danych w różnych zakładach przemysłowych a MySQL to bardziej strony www

Myślę że faktycznie najlepszym rozwiązaniem będzie stworzenie warstwy pośredniej pracującej na komputerze serwerowym kontrolującej przepływ między tymi warstwami, czyli taki układ: URZĄDZENIE <--->PROGRAM NA PC (np. SERWEROWYM) <---> BAZA DANYCH.
Komunikować ze światem zewnętrznym za pomocą TCP czy RS232,RS485 lub innych przemysłowych standardów potrafię, natomiast póki co nie potrafię programować na PC i dlatego chciałem jakby pominąć ten etap, ale myślę że będzie to dobra motywacja do nauki C# i Visual Studio smile.gif

Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 28.03.2024 - 20:50