Witam.
Czy ktoś z doświadczonych użytkowników LabView wie jak "sprawdzać status komunikacji z bazą danych MySQL" w sposób jak najmniej obciążający procesor (system, bazę itd.) ?
Z góry dziękuję za wszelkie informacje i odpowiedzi.
Status komunikacji z bazą danych
Re: Status komunikacji z bazą danych
Hej,
możesz skorzystać z darmowej biblioteki LabSQL: http://jeffreytravis.com/lost/labsql.html
albo z toolkitu NI: http://digital.ni.com/public.nsf/allkb/ ... 0A006139D6
albo z tcp/ip: https://decibel.ni.com/content/docs/DOC-10453
Co do tego ostatniego autora cytując:
możesz skorzystać z darmowej biblioteki LabSQL: http://jeffreytravis.com/lost/labsql.html
albo z toolkitu NI: http://digital.ni.com/public.nsf/allkb/ ... 0A006139D6
albo z tcp/ip: https://decibel.ni.com/content/docs/DOC-10453
Co do tego ostatniego autora cytując:
Natomiast szczerze powiedziawszy nie sprawdzałem szybkości działania oraz obciążenia procesora dla dwóch pierwszych. Może ktoś na forum to robił?For queries with no or small sets of returned data, expect 10-20% improvement in processing time over the LabVIEW Database Connectivity Toolkit since this example does not have the additional overhead of sending data through ODBC. However - large returned datasets will take significantly longer (10x+) than the LabVIEW Database Connectivity Toolkit. Memory is not preallocated for returned datasets and dynamically building large string arrays causes significant time with memory allocation. I have not had time to look into this and provide a good method - if anyone has good ideas or a solution your feedback is welcome.
Re: Status komunikacji z bazą danych
Może źle zrozumiałem zawartość linków podesłanych przez kolegę @oczekp lub źle się wyraziłem, ale mój problem polega na tym, że otwieram połączenie z bazą w MySQL, wpisuję do niej, ale nie zamykam połączenia. Dane wpisywane są w dużej ilości i bardzo często, więc uznałem za bezsensowne otwieranie/zamykanie połączenia. Dodatkowo potrzebuję w aplikacji kontrolkę ze stanem połączenia (jest/brak) i szukam rozwiązania szybkiego, skutecznego i mało obciążającego.
edit: w tej chwili wysyłam zapytanie o max(id) i sprawdzam error out, ale to rozwiązanie moim zdaniem jest nieoptymalne
edit: w tej chwili wysyłam zapytanie o max(id) i sprawdzam error out, ale to rozwiązanie moim zdaniem jest nieoptymalne
-
- Posty: 641
- Rejestracja: 31 gru 2010 01:36
- Wersja środowiska: LabVIEW 2017
- Lokalizacja: Katowice
Re: Status komunikacji z bazą danych
Skoro często dokonujesz wpisu, czy generalnie komunikacji z tą bazą, to po co chcesz dodatkowo sprawdzać, czy jest z nią połączenie? Jeśli nie będziesz miał połączenia, to każda próba komunikacji z bazą danych skończy się odpowiednim błędem i to Ci pokaże, że połączenie padło.
Re: Status komunikacji z bazą danych
Domyślam się, że koledze chodzi o to iż dane zapisywane są do bazy danych MySQL często na jakimś serwerze a na innym komputerze jest odczyt potrzebnych danych z bazy już nie tak często i potrzebna jest ciągła informacja o stanie połączenia z zewnętrzną baza danych MySQL - czy tak?
Re: Status komunikacji z bazą danych
Dokładnie tak jak to napisał kolega powyżej. Przepraszam za niepełne informacje.