С Новым годом! Форум программистов, компьютерный форум, киберфорум
Java: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
jmax

Как в jave реализуются редактируемые поля для БД?

31.08.2009, 19:32. Показов 1206. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Кто нибудь подкиньте идею как (вообще) в jave реализуются редактируемые поля для БД?
Подключение-понятно.
Как создать запрос-понятно.
А как вообще лучше делать редактируемые поля (у меня JBuilder) в JTextField или JdbTextField?
Лучше на коротком примере с одним полем или попонятней на словах.
Спасибо!
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
31.08.2009, 19:32
Ответы с готовыми решениями:

Как реализуются неопределенные поля внутри классов?
Подскажите, пожалуйста, как в C# реализуются неопределенные поля внутри классов? Например, есть класс: public class MissionClass { ...

Как создать редактируемые блоки для шаблона страницы вордпресс
Есть шаблон главной страницы в вордпрессе (php файл), на ней есть разные блоки. Но все это html верстка непонятная пользователю. Как можно...

Как выводить все редактируемые формы?
Вопрос элементарный, но не смог победить. 2 таблицы UserProfile (Пользователь) и Estates (Товар пользователя) views.py ...

5
4 / 4 / 4
Регистрация: 28.08.2008
Сообщений: 611
31.08.2009, 20:45
Могу в принципе расказать, как это делается, но вот как именно с JBuilder'овскими примочками -- немогу ) Если интересно просто -- пиши, расскажу.
0
jmax
01.09.2009, 00:26
Вообще я раньше писал на VB и там это делается на основе 'источника записей -таблица/запрос' и 'данные-имя столбца'
Здесь вроде как тоже можно реализовать по такому же принципу , но ...
Я реализовал это так:

Java
1
2
3
4
5
6
7
8
9
10
11
private JdbTextField tfNomCurrGr = new JdbTextField();
private Database mydb = new Database();
private QueryDataSet gruppa = new QueryDataSet();
 
Class my = Class.forName ('sun.jdbc.odbc.JdbcOdbcDriver');
Connection conn = DriverManager.getConnection ('jdbc:odbc:Курсы', 'max', 'pwd');
mydb.setConnection(new com.borland.dx.sql.dataset.ConnectionDescriptor('jdbc:odbc:Курсы', 'max', 'zxc', false, 'sun.jdbc.odbc.JdbcOdbcDriver'));
mydb.setDatabaseName('');//если указываю имя БД Билдер насилует мой процессор на все 100%(40 сек. тормозов и 5 сек.работы--все это в цикле пока не закроешь Билдер//может что то я не так делаю)
gruppa.setQuery(new com.borland.dx.sql.dataset.QueryDescriptor(mydb, 'SELECT * FROM Курсы.dbo.Группа', null, true, Load.ALL));
tfNomCurrGr.setColumnName('Группа');
tfNomCurrGr.setDataSet(gruppa);
Все это компилируестя и загружается ОК и вижу даные первой записи в полях, НО при попытке изменить запись после первого символа вылетает ОШИБКА
Тип данных int в БД и запросе прилодения, имеется счетчик в таблице.

DataSet has no unique row identifiers.
Note: For QueryDataSets you need to disable metaDataUpdate.ROWID in the MetaDataUpdate property, in addition to setting the RowId property on a column.

ИЛИ

Missing or invalid characters in field

+ СТЕК из 50 строк

СКАЖИТЕ ПОЖАЛУЙСТА КАК ПРАВИЛЬНО РЕАЛИЗОВАВЫТЬ РЕДАКТИРУЕМЫЕ ПОЛЯ, ЛУЧШЕ НА ПРИМЕРЕ.
(не обязательно в Билдере просто подскажите какими способами этого можно добится)
Я конечно понимаю что можно кодом присвоить заначения из запроса к полям, но у полей-то порядком 40 штук, да и еще из разных запросов, типа главный запрос и связанный запрос по столбцу.
Но ведь запись также нужно и обновить в таблице.
Кто нашел наиболее удачный способ подскажите, мне интересны все варианты(да наверное и не только мне).
ПРИМНОГО БЛАГОДАРЕН.
jmax
01.09.2009, 00:32
Пробовал через

Java
1
2
Class my = Class.forName ('sun.jdbc.odbc.JdbcOdbcDriver');
Connection conn = DriverManager.getConnection ('jdbc:odbc:Курсы', 'max', 'pwd');
и через

Java
1
private Database mydb = new Database();
Bash
1
2
mydb.setConnection(new com.borland.dx.sql.dataset.ConnectionDescriptor('jdbc:odbc:Курсы', 'max', 'zxc', false, 'sun.jdbc.odbc.JdbcOdbcDriver'));
mydb.setDatabaseName('');
-- это 2 разных варианта коннекции
так что не обращайте внимания в примере выше они указаны оба
но результат один и тот же - куча ошибок.
0 / 0 / 0
Регистрация: 12.08.2009
Сообщений: 27
03.09.2009, 13:31
Я делаю так: назначаю полю jdbTextField DataSet - QueryDataSet и каждому полю указываю какой столбец из таблицы(запроса) он будет отображать. Добавляю в форму jdbNavToolBar, указываю у него DataSet - QueryDataSet и если маски и типы данных, вводимых Вами в поля соответствуют маскам и типам данных полей таблицы , то все операции (удаление, перемещение по записям, добавление, сохранение и тд ) можно осуществлять без проблем.
0
0 / 0 / 0
Регистрация: 12.08.2009
Сообщений: 27
03.09.2009, 13:52
насчет ошибок...он тебе всю правду говорит.
нужно указать

Java
1
2
3
4
5
6
7
8
9
10
11
12
 myjdbTextField.setColumnName('ColumnName');
 myjdbTextField.setDataSet(queryDataSet);
 
queryDataSet.setMetaDataUpdate(MetaDataUpdate.TABLENAME+MetaDataUpdate.PRECISION+MetaDataUpdate.SCALE+MetaDataUpdate.SEARCHABLE);
queryDataSet.setQuery(new com.borland.dx.sql.dataset.QueryDescriptor(database, 'SELECT .....', null, true, Load.ALL));//если запрос без параметра
 column1.setColumnName('ColumnName');
 column1.setDataType(com.borland.dx.dataset.Variant.INT);
 column1.setRowId(true);
 column1.setTableName('TableName');
 column1.setServerColumnName('ServerColumnName');
 column1.setSqlType(4);
queryDataSet.setColumns(new Column[] {column1, column2, column3, column4, column5, column6, column7, column8 ....и тд....});
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
03.09.2009, 13:52
Помогаю со студенческими работами здесь

Для каждой из групп выписать цикловые структуры, которые реализуются хотя бы для одной подстановки этой группы
Опишите, пожалуйста, алгоритм решения задачи Или для любой группы решение бы увидеть, понять как делается, дальше по аналогии пойти

Текстовый редактор, как сделать редактируемые строки?
Доброго времени суток всем! Вопрос таков: начал делать текстовый редактор и не могу сделать редактируемые строки.:wall: Написанное можно...

Как сделать редактируемые области одностраничника в WordPress?
Работаю над одностраничным сайтом, сделанным с участием Вордпресса (для админки). Как можно сделать отдельные редактируемые области в нем?...

Нужна инфа о том как создавать daemon-ы на Jave (Linux)
Цель написать парсер на Jave, который парсит некоторые данные и пихает в БД. Нужно, чтоб работало в фоновом режиме(т.е. демон) и...

Как в с++ реализуются обновления программ
Есть допустим у пользователя программка, я решил добавить туда кнопочку например, как обновить его программу не заменяя её? Допустим в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и источниками (напряжения, ЭДС и тока). Найти токи и напряжения во всех элементах. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru