Модераторы: gambit

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как получить данные из двух таблиц, VS 2005, как потом их отобразить? 
V
    Опции темы
Rapalex
Дата 16.10.2006, 12:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 732
Регистрация: 20.1.2006
Где: Украина -> Ник олаев

Репутация: нет
Всего: 8



Спс, разобрался, единственная разница которая бы ла заметна сразу, ето то что ты каскадное обновление с удалением поставил. smile

И у меня вопрос из теории сразу возник. Ч то такое каскадное удаление я понимаю - удаляем родительскую запись удаляем и все дочерние. А каскадное обновление что собой представляет?



Сделая я запрос (сгенерировалась вункция FillBy...) который заполняет дочернюю таблцу. Выражение в вычисляемом поле обращается к родительской таблице и находит всё чот ему надо.
И второй вопрос. Я так понял что родительская таблица должна быть вся подгружена в оперативу. Что мне не очнь понравилось, но жить с этим можно. Так можно както подгружать не всю родительскую таблицу?


И последнее, когда я пытался добавить строку в таблицу функция добовления берёт входными параметрами все столбцы влючая первичный ключ (а он счётчик и сам выберается) и вычисляемые столбцы (разумеется эти входные данные не на что не влияют) можно ли както от этого избавится?

Сасибо!


--------------------
In vitium ducit culpae fuga.
Желание избежать ошибки вовлекает в другую.
(Horatius)
PM ICQ   Вверх
Akella
Дата 17.10.2006, 08:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: нет
Всего: 329



Код

        private void button1_Click(object sender, EventArgs e)
        {

            fbConnection1.ConnectionString = "User=SYSDBA;Password=masterkey;Database=D:\\Programs\\Kvartal\\Data\\KVARTAL.GDB;DataSource=;Port=3050;Dialect=3;Charset=WIN1251;Role=;Connection lifetime=0;Connection timeout=15;Pooling=True;Packet Size=8192;Server Type=0";
            string mySelectQuery = "select a.id, r.name from apart a left join regions r on (r.id = a.id_region)";
            fbConnection1.Close();
            fbConnection1.Open();
            FbDataAdapter da = new FbDataAdapter(mySelectQuery, fbConnection1);
            FbCommand comm = new FbCommand(mySelectQuery);
            DataSet ds = new DataSet();
            da.Fill(ds);
            DataTable dt = ds.Tables[0];
            dataGridView1.DataSource = dt;
            fbConnection1.Close();
        }


полностью рабочий код

Это сообщение отредактировал(а) Akella - 17.10.2006, 08:22
PM MAIL   Вверх
Rapalex
Дата 17.10.2006, 13:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 732
Регистрация: 20.1.2006
Где: Украина -> Ник олаев

Репутация: нет
Всего: 8



Цитата

полностью рабочий код

не сомневаюсь, а что он делает?


--------------------
In vitium ducit culpae fuga.
Желание избежать ошибки вовлекает в другую.
(Horatius)
PM ICQ   Вверх
Akella
Дата 17.10.2006, 13:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: нет
Всего: 329



Цитата(Rapalex @  9.10.2006,  14:26 Найти цитируемый пост)
К примеру у меня есть 2 таблицы между ними связь один ко многим, 


Цитата(Rapalex @  9.10.2006,  14:26 Найти цитируемый пост)
И так две таблицы : клиенты и улицы на которых они живут.


Цитата(Rapalex @  9.10.2006,  14:26 Найти цитируемый пост)
И нужно юзеру показать список в нормальном виде (ТАБЛИЦЕ) но чтоб вместо ключей улица была  написана кирилицей


Добавлено @ 13:41 
как видно из запроса 2 таблицы: apart и regions. Соеденены между собой.
PM MAIL   Вверх
Rapalex
Дата 17.10.2006, 14:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 732
Регистрация: 20.1.2006
Где: Украина -> Ник олаев

Репутация: нет
Всего: 8



Akella, понял, спасибо, а я реализовал с вычисляемыми полями. И теперь нужно думать каким же мне методом пользоваться smile


--------------------
In vitium ducit culpae fuga.
Желание избежать ошибки вовлекает в другую.
(Horatius)
PM ICQ   Вверх
Akella
Дата 17.10.2006, 14:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: нет
Всего: 329



Join быстрее, мне так кажется, по крайней мере smile 

Это сообщение отредактировал(а) Akella - 17.10.2006, 14:56
PM MAIL   Вверх
Rapalex
Дата 17.10.2006, 14:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 732
Регистрация: 20.1.2006
Где: Украина -> Ник олаев

Репутация: нет
Всего: 8



Согласен, а можно всё это какимлибо образом при помощи мастеров в какойнибудь метод какогонибудь тейбл адаптера запихнуть?


--------------------
In vitium ducit culpae fuga.
Желание избежать ошибки вовлекает в другую.
(Horatius)
PM ICQ   Вверх
Akella
Дата 17.10.2006, 15:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: нет
Всего: 329



можно
кидай на форму datasource и "облепливай" его мастером
http://www.firebirdtutorial.net/sqldatasource-component.html

Добавлено @ 15:19 
что-то у меня в MSVS2005 не очень получается  smile , буду эксперементировать
PM MAIL   Вверх
Akella
Дата 17.10.2006, 16:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: нет
Всего: 329



кинул на форму FbDataAdapter, теперь получилось, т.к. у этой компоненты есть мастер, который поможет создать нежные компоненты, ну а грид, конечно датаАдаптер не создаст
PM MAIL   Вверх
Rapalex
Дата 18.10.2006, 11:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 732
Регистрация: 20.1.2006
Где: Украина -> Ник олаев

Репутация: нет
Всего: 8



А как реализовать отображение дввух таблиц так чтоб при выботе элемента в родительской таблице содержимое дочерней таблицы содержало только дочерние элементы выбраной строки?


--------------------
In vitium ducit culpae fuga.
Желание избежать ошибки вовлекает в другую.
(Horatius)
PM ICQ   Вверх
mr.DUDA
Дата 18.10.2006, 11:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

Репутация: 8
Всего: 232



Rapalex, это делается через DataRelation. WinForms будет автоматически отображать связанные записи подчинённой таблицы при выборе записи в родительской таблице, это называется data binding.


--------------------
user posted image
PM MAIL WWW   Вверх
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
stab
mr.DUDA
Exception

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, stab, mr.DUDA, Exception.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Базы данных под .NET | Следующая тема »


 




[ Время генерации скрипта: 0.0526 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.