Шпаргалка по LabVIEW Database Connectivity Toolkit

Работа с файлами и базами данных
Аватара пользователя
Chupakabra

Tutorials
professional
professional
Сообщения: 360
Зарегистрирован: 21 янв 2009, 10:50
Награды: 1
Версия LabVIEW: 2015
Откуда: Москва
Поблагодарили: 4 раза
Контактная информация:

Шпаргалка по LabVIEW Database Connectivity Toolkit

Сообщение Chupakabra »

Возможно уже писали про это. Случайно наткнулся на интересную шпаргалку по блокам LabVIEW Database Connectivity Toolkit от Андрея Дмитриева.
http://vi-lib.com/CheatSheets/LV_DB_Con ... et_093.pdf

Заодно вопрос по теме: могут ли имена полей и названия таблиц (в базе access (*.mdb)) в содержать пробелы и русскоязычные символы и можно ли до них добраться из Database Connectivity Toolkit в этом случае?
toto

Activity Gold Black
professional
professional
Сообщения: 390
Зарегистрирован: 07 мар 2008, 09:26
Награды: 3
Версия LabVIEW: 6i-16
Откуда: Санкт-Петербург
Контактная информация:

Re: Шпаргалка по LabVIEW Database Connectivity Toolkit

Сообщение toto »

Не пользовался полями с пробелами никогда, но есть небольшая аналогия наверное: в SQL сервере есть зарезервированные слова типа Default, и я столкнулся с аналогичным именем поля в таблице, в этом случае запрос выдавал ошибку и надо было имя поля писать так: [Default], полагаю есть способ аналогичный и для работы с пробелами в названиях полей.
Lexan_83

Bronze
adviser
adviser
Сообщения: 221
Зарегистрирован: 18 май 2009, 10:50
Награды: 1
Версия LabVIEW: 8.6
Откуда: Москва

Re: Шпаргалка по LabVIEW Database Connectivity Toolkit

Сообщение Lexan_83 »

Заодно вопрос по теме: могут ли имена полей и названия таблиц (в базе access (*.mdb)) в содержать пробелы и русскоязычные символы и можно ли до них добраться из Database Connectivity Toolkit в этом случае?[/quote]
Имена полей и названия таблиц кириллицу поддерживают, а вот с пробелом ругается, мне приходилось заменять пробел на "_".
Аватара пользователя
Chupakabra

Tutorials
professional
professional
Сообщения: 360
Зарегистрирован: 21 янв 2009, 10:50
Награды: 1
Версия LabVIEW: 2015
Откуда: Москва
Поблагодарили: 4 раза
Контактная информация:

Re: Шпаргалка по LabVIEW Database Connectivity Toolkit

Сообщение Chupakabra »

Мне удалось использовать русскоязычные имена полей с пробелами, нужно просто их окружить скобками [ ], как предположил toto.
Но в интернете пишут, что не рекомендуется использовать имена с киррилицей и тем более с пробелами.

Еще при работе с ACCESS можно(нужно) задать имя поля латиницей, а "Подпись" сделать какую угодно, тогда в режиме просмотре таблицы столбец будет именоваться подписью.
toto

Activity Gold Black
professional
professional
Сообщения: 390
Зарегистрирован: 07 мар 2008, 09:26
Награды: 3
Версия LabVIEW: 6i-16
Откуда: Санкт-Петербург
Контактная информация:

Re: Шпаргалка по LabVIEW Database Connectivity Toolkit

Сообщение toto »

В инете много чего не рекомендуют, например переменные называть русским языком, но вот скажите, вы действительно на всех видимых контролах делаете Label- англоязычным а Caption русским? Думаю большинство все-таки не мучается и сразу пишет русскоязычный Label. Так что, можно использовать русские поля если это удобно.
AndreyDmitriev

Activity Professionalism Tutorials Gold Black
VIP
VIP
Сообщения: 1327
Зарегистрирован: 03 фев 2010, 00:42
Награды: 6
Версия LabVIEW: 6.1 - 2024
Откуда: Германия
Благодарил (а): 1 раз
Поблагодарили: 38 раз
Контактная информация:

Re: Шпаргалка по LabVIEW Database Connectivity Toolkit

Сообщение AndreyDmitriev »

toto писал(а):В инете много чего не рекомендуют, например переменные называть русским языком, но вот скажите, вы действительно на всех видимых контролах делаете Label- англоязычным а Caption русским? Думаю большинство все-таки не мучается и сразу пишет русскоязычный Label. Так что, можно использовать русские поля если это удобно.
Я, кстати, именно так и делаю (и, разумеется, не вручную). Везде в пользовательском интерфейсе у меня Labels выключены, а Captions включены. По ходу дела это единственно правильный метод для изготовления мультиязычного интерфейса. Кстати, все примеры на этом форуме с переменными на русском языке открываются у меня кракозябрами. Впрочем, если проблема локализации очень уж остро не стоит, то можно всё и на русском делать, но это может оказаться бомбой замедленного действия (ну, например, NI когда-нибудь разродится человеческой поддержкой юникода, и тогда поля на русском языке могут стать проблемой).
Аватара пользователя
FireFly

Activity Black
expert
expert
Сообщения: 1321
Зарегистрирован: 25 апр 2009, 08:58
Награды: 2
Версия LabVIEW: 2014
Откуда: Санкт-Петербург
Поблагодарили: 1 раз

Re: Шпаргалка по LabVIEW Database Connectivity Toolkit

Сообщение FireFly »

AndreyDmitriev писал(а):
toto писал(а):В инете много чего не рекомендуют, например переменные называть русским языком, но вот скажите, вы действительно на всех видимых контролах делаете Label- англоязычным а Caption русским? Думаю большинство все-таки не мучается и сразу пишет русскоязычный Label. Так что, можно использовать русские поля если это удобно.
Я, кстати, именно так и делаю (и, разумеется, не вручную). Везде в пользовательском интерфейсе у меня Labels выключены, а Captions включены.
+1. Делаю так же. Правда вручную. Как можно это делать не вручную?
Иногда лучше молчать и слыть идиотом, чем заговорить и развеять все сомнения.
AndreyDmitriev

Activity Professionalism Tutorials Gold Black
VIP
VIP
Сообщения: 1327
Зарегистрирован: 03 фев 2010, 00:42
Награды: 6
Версия LabVIEW: 6.1 - 2024
Откуда: Германия
Благодарил (а): 1 раз
Поблагодарили: 38 раз
Контактная информация:

Re: Шпаргалка по LabVIEW Database Connectivity Toolkit

Сообщение AndreyDmitriev »

FireFly писал(а): +1. Делаю так же. Правда вручную. Как можно это делать не вручную?
Примерно вот так:
Вложения
Snippet.png
Аватара пользователя
FireFly

Activity Black
expert
expert
Сообщения: 1321
Зарегистрирован: 25 апр 2009, 08:58
Награды: 2
Версия LabVIEW: 2014
Откуда: Санкт-Петербург
Поблагодарили: 1 раз

Re: Шпаргалка по LabVIEW Database Connectivity Toolkit

Сообщение FireFly »

Да удобно, когда много индикаторов. Возьму на заметку. Правда не у всех контролов я оставляю Label/Caption, так что добавлю проверку (если Label уже скрыт, то не делать Caption видимым). А массив всех ссылок на контролы получаю так.
Иногда лучше молчать и слыть идиотом, чем заговорить и развеять все сомнения.
Аватара пользователя
Chupakabra

Tutorials
professional
professional
Сообщения: 360
Зарегистрирован: 21 янв 2009, 10:50
Награды: 1
Версия LabVIEW: 2015
Откуда: Москва
Поблагодарили: 4 раза
Контактная информация:

Re: Шпаргалка по LabVIEW Database Connectivity Toolkit

Сообщение Chupakabra »

Добрый день.
Что-то никак не могу врубиться для чего служит блок DB Tools Get Parameter Value VI
Какие-такие данные он возвращает?
http://zone.ni.com/reference/en-XX/help ... param_val/
AndreyDmitriev

Activity Professionalism Tutorials Gold Black
VIP
VIP
Сообщения: 1327
Зарегистрирован: 03 фев 2010, 00:42
Награды: 6
Версия LabVIEW: 6.1 - 2024
Откуда: Германия
Благодарил (а): 1 раз
Поблагодарили: 38 раз
Контактная информация:

Re: Шпаргалка по LabVIEW Database Connectivity Toolkit

Сообщение AndreyDmitriev »

Chupakabra писал(а):Добрый день.
Что-то никак не могу врубиться для чего служит блок DB Tools Get Parameter Value VI
Какие-такие данные он возвращает?
http://zone.ni.com/reference/en-XX/help ... param_val/
Он возвращает данные из хранимых процедур. (И, кажется, из запросов с параметрами, но тут я могу ошибаться).

Вот, например:
How Do I Get Return Values of Stored Procedures in the Database Connectivity Toolkit?
Аватара пользователя
Chupakabra

Tutorials
professional
professional
Сообщения: 360
Зарегистрирован: 21 янв 2009, 10:50
Награды: 1
Версия LabVIEW: 2015
Откуда: Москва
Поблагодарили: 4 раза
Контактная информация:

Re: Шпаргалка по LabVIEW Database Connectivity Toolkit

Сообщение Chupakabra »

AndreyDmitriev писал(а):
Chupakabra писал(а):Добрый день.
Что-то никак не могу врубиться для чего служит блок DB Tools Get Parameter Value VI
Какие-такие данные он возвращает?
http://zone.ni.com/reference/en-XX/help ... param_val/
Он возвращает данные из хранимых процедур. (И, кажется, из запросов с параметрами, но тут я могу ошибаться).

Вот, например:
How Do I Get Return Values of Stored Procedures in the Database Connectivity Toolkit?
Угу, похоже именно для хранимых процедур.
http://digital.ni.com/public.nsf/allkb/ ... enDocument
Думал это что-то типа DB Tools Fetch Element Data VI, удивлялся зачем столько блоков с одинаковым функционалом :)
Аватара пользователя
Di3el
beginner
beginner
Сообщения: 45
Зарегистрирован: 18 дек 2012, 17:28
Версия LabVIEW: 11
Откуда: Российская Федерация
Контактная информация:

Re: Шпаргалка по LabVIEW Database Connectivity Toolkit

Сообщение Di3el »

Прошу помощи! работа заключается в следующем: программа опрашивает прибор и пишет в базу Access параметры электроэнергии. Для определенного набора показателей формируется своя таблица. Все работает хорошо до поры до времени, а потом выскакивает следующее
Изображение.
Вид проги Изображение. Может какие то элементы Database необходимо использовать? ограничения для баз Access есть по количество строк данных и объему? Спасибо!
Аватара пользователя
Di3el
beginner
beginner
Сообщения: 45
Зарегистрирован: 18 дек 2012, 17:28
Версия LabVIEW: 11
Откуда: Российская Федерация
Контактная информация:

Re: Шпаргалка по LabVIEW Database Connectivity Toolkit

Сообщение Di3el »

Вот такую базу формирует программа.
Вложения
PM175.rar
(56.53 КБ) 247 скачиваний
Borjomy_1

Activity Professionalism Silver
doctor
doctor
Сообщения: 2210
Зарегистрирован: 28 июн 2012, 09:32
Награды: 3
Версия LabVIEW: 2009..2020
Откуда: город семи холмов
Благодарил (а): 27 раз
Поблагодарили: 26 раз

Re: Шпаргалка по LabVIEW Database Connectivity Toolkit

Сообщение Borjomy_1 »

Может, строка, которую вы передаете второй, имеет слишком большую длину, чем задано в таблице, либо одно из чисел выходит за диапазон типа, указанного для поля. Например, вы пытаетесь запихнуть число 10000 в поле, размером в 1байт. Variant это сглотнет, но на уровне СУБД это будет уже ошибка. Смотрите текст запроса, на котором вылезла ошибка и сравните его со структурой таблицы.

Сделайте что-то с картинками - прогрузите их через портал. Почему пользователи должны, чтобы посмотреть картинку, по каким-то левым ресурсам лазить?
Подсказка: внизу сообщения нажимаете кнопку "Предпросмотр" и там появляется вкладка для подцепления файлов.
Ответить
  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Сохранение данных»