| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C++ Builder > Проблемма со StringGrid в БД |
| Автор: Vitalishe 29.7.2007, 02:13 | ||||||||
| Привет всем! пишу БД, и в одной из форм возникла незадача. Есть данные в таблице, которую надо отобразить на форме, идиальным вариантом стал бы StringGrid, размером 9*5, однако ньюанс автоматически компоненты ADOTable(Query) в состоянии Insert() или Edit() могут не перейти, используя DBNavigator и компоненты Data Controls, раньше я делал так: \\на OnActivateForm вешал следующий код
При нажатии кнопок на DBNavigator всё воркало. Но в случае со StringGrid - нет. посему надо: 0. при загрузке формы загрузить в StringGrid проверить, есть ли данные в таблице, если да то загрузить в состоянии Bworse() или Edit(), если нет то вызвать метод Insert(); как лучше сделать проверку? Дайте пример 1. Допустим таблица не пуста, тут вопрос такой: данные считать для каждого поля можно только как приведено в коде ниже или есть варианты как с массивом 8*4? Пример:
2. Если есть варианты с массивом, как потом отсортировать всё по полям таблицы? 3. Возникает ошибка при чтении из базы данных *.MDB полей таблице ("Не может привести значение Null к String") если записи нет, но подгружает данные в Grid из таблицы, если они есть.
Попытлся решить поблему так:
Как результат вообще перестал читать данные Если есть пример работы со String Grid дайте поджалуйста, или посоветуйте как исправить эти ошибки |
| Автор: Rodman 29.7.2007, 11:30 |
поясни почему??? чем тебе TDBGrid не угадил?! |
| Автор: Vitalishe 29.7.2007, 14:42 |
| Rodman, Визуальный вариант. Наиболее оптимальный в данном решени, в TDBGrid так не сдалаешь, по-моему. Обрати внимание на расположение данных в столбцах и строках: каждая ячейка - одино поле таблицы 8*4 (смотри приложенную table.jpg картинку) { 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0} |
| Автор: witex 29.7.2007, 15:18 |
| Напиши обработчик на ДБ навигатор тогда свой! или сощай свои кнопки и прописывай события! что тебе надо сделать! по другому ни как! я просто не понимаю ваабше смысла ДБНавигатора в этом случае! |
| Автор: Vitalishe 31.7.2007, 01:35 |
| Rodman, если есть примерчик работы с DBGrid в таком ключе, выложи пожалуйста... |
| Автор: Vitalishe 31.7.2007, 04:00 |
| Разобрался в чем ошибка, дело не в приведении типов данных, а в обращении к несуществующей записи. |
| Автор: Santilka85 31.7.2007, 05:15 |
| Vitalishe, пометь вопрос как решённый |
| Автор: Vitalishe 31.7.2007, 09:42 |
| |