@dba_ru

Страница 94 из 718
Max
13.02.2017
19:44:16
мысль здравая
это ты как гуру говоришь?) я просто совсем теоретик в бд, а тестировать времени нет

бд классика, mysql

lost
13.02.2017
19:44:36
как медиум, блин)

атрибут суммарных выплат, и любую статистику другую по юзеру, которую ты захочешь собирать лучше вынести отдельно

Google
lost
13.02.2017
19:46:52
ты можешь не делать пересчет этих атрибутов при каждой операции юзера кстати

Павел
13.02.2017
19:47:42
Max
13.02.2017
19:47:46
а как тогда? и как представить связь юзера к рефералам, если сам юзер у меня по сути - это id записи и его номер карты (условно)

Павел
13.02.2017
19:47:47


lost
13.02.2017
19:49:40
ну условно так: юзер - таблица связей юзер реферал - юзеры рефералы

Fike
13.02.2017
19:50:55
так я тебе не доверяю, человек из интернета, но если ты скажешь, что ты гуру, чему у меня совсем нет подтверждений, то я с радостью тебе поверю

lost
13.02.2017
19:51:37
:)

как бы ты сущность юзера не представлял - она должна быть уникальная

lost
13.02.2017
19:57:02
ну так, смотри в светлое будущее так сказать

интересно другое, дерево рефералов же может быть неограниченной вложенности

Google
Max
13.02.2017
19:59:02
как бы ты сущность юзера не представлял - она должна быть уникальная
ок, тогда получается так - таблица юзеров - | id | юзер | ; и таблица связей юзер-реферал - | id | id юзер | id реферала (тобишь id из той же таблицы юзеров); . Я твою мысль правильно понял?

lost
13.02.2017
19:59:14
да

Павел
13.02.2017
19:59:40
интересно другое, дерево рефералов же может быть неограниченной вложенности
если только есть необходимость получать цепочку кто кого пригласил

lost
13.02.2017
19:59:50
так а представь цепную реакцию

Sergey
13.02.2017
19:59:53
потому что одному богу известно что потом понадобится делать с этими данными
Все правильно. Аудит выплат не помешает. Это лучше, чем голое сальдо показывать

Max
13.02.2017
19:59:56
связь между кортежами одной таблицы - получается это ок подход?

lost
13.02.2017
20:00:24
зависит от того что ты собираешься делать

тебе нужно получать дерево рефералов в обозримом будущем?

Max
13.02.2017
20:01:06
нет, в данном проекте нет

Dmitry
13.02.2017
20:01:51
Надо быть готовым

lost
13.02.2017
20:02:05
бузинесс да

хранение деревьев в реляционной бд - то ещё извращение

Max
13.02.2017
20:02:35
я подозреваю, что попросят. только если сам как идею подам

я понимаю что дерево в бд - извращение, и мне в универе уже показывали какой-то нестандартный подход. Но я лучше возьму под это дело другую бд, чтобы не мучиться

Dmitry
13.02.2017
20:03:19
хранение деревьев в реляционной бд - то ещё извращение
Ничего страшного, все зависит от кейсов

lost
13.02.2017
20:03:25
естественно

Dmitry
13.02.2017
20:03:29
Но там может быть кустисто

lost
13.02.2017
20:03:42
зависит от того какие манипуляции с деревом производить надо

Google
Max
13.02.2017
20:04:26
полный обход как минимум понадобится же

lost
13.02.2017
20:04:30
могу книжку посоветовать по проектированию бд

Dmitry
13.02.2017
20:04:37
Например

Max
13.02.2017
20:06:18
могу книжку посоветовать по проектированию бд
какую? Дейт на полке и так уже стоит

lost
13.02.2017
20:07:59
http://www.ozon.ru/context/detail/id/7598812/

Max
13.02.2017
20:10:03
благодарю, и спасибо за советы

lost
13.02.2017
20:12:23
Полистал Дейта, как-то это всё сложно, особенно если вспомнить реляционную алгебру и всякие нормальные формы, которые давали в универе

Amber 8
13.02.2017
20:19:09
хранение деревьев в реляционной бд - то ещё извращение
Да ладно тебе, нормальное дело. Есть даже какой-то оператор SQL как раз под это дело. Отличные древовидные селекты строит

Хранить в таблице users ссылку на того, кто привёл этого юзера - нормальная тема, имхо

Fike
13.02.2017
20:20:52
- построй дерево - хозяин, мне тяжко - SUDO ПОСТРОЙ ГРАФ

lost
13.02.2017
20:22:06
в таком случае ты будешь привязан к архитектуре

lost
13.02.2017
20:22:32
а если вынесешь отдельно - можно выбрать любой способ хранения дерева

объясню на примере

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

Amber 8
13.02.2017
20:45:38
в таком случае ты будешь привязан к архитектуре
Если тот селект оракл-специфичный, то да

lost
13.02.2017
20:46:19
этот вопрос хорошо решает рекурсия, которой в mysql, увы, нет(

Amber 8
13.02.2017
20:50:56
Connect by prior, во! Но таки да, это чисто оракл. В стандарте другой синтаксис

Google
Vladislav
13.02.2017
22:09:32
полная таблица щас так | id | юзер | реферал (id строки в текущей же таблице) | выплачено от X | выплачено от рефералов |
Если у тебя один юзер может только одного пригласить по рефералу, в чем я сильно сомневаюсь, то можешь оставить, в противном случае, тебе надо делить, иначе твоя таблица юзеров будет мягко говоря, странной ?

Вообще, помимо нормальных форм, еще в книжках и в универе должны были рассказать про звезду, снежинку и прочий изврат

VlIvYur
14.02.2017
01:57:01
Пользователь,кто его пригласил - это статичная информация,и это одна таблица. Выплаты - другая таблица. Суммы по пользователю (итоги) - третья. Я бы делал так.

Alex
14.02.2017
08:20:30
Приветствую, подскажите пожалуйста, есть база данных (LocalDB)\MSSQLLocalDB в виде mdf файла, как к ней подключиться через udl ?

Vladislav
14.02.2017
08:38:22
поднять сервер MSSQL и подключаться

Alex
14.02.2017
08:52:49
скуля есть

Admin
ERROR: S client not available

Alex
14.02.2017
08:52:55
но мне нужно без нее

Roman
14.02.2017
08:55:51
Привет народец) Помогите линком добрым на статейку по детальной настройке MSSQL сервера)

Sergey
14.02.2017
09:08:51
но мне нужно без нее
Как ты без сервера с базой работать будешь, лол?

Это тебе не sqlite

Alex
14.02.2017
09:13:50
ну как бы она на то и файловая

и сейчас она не подключена к серверу

и вполне успешно в нее пишутся данные

и отображаются

Sergey
14.02.2017
09:30:38
и сейчас она не подключена к серверу
>и вполне успешно в нее пишутся данные Вот прям поделил на ноль.

Alex
14.02.2017
09:31:28
а можно как-то конкретнее? стебаться то все умеют

Google
Sergey
14.02.2017
09:33:23
То, что если файл не приатачен к SQL Server'у - с ним работать напрямую из приложения нельзя.

Alex
14.02.2017
09:34:19
ну что вы так сразу рубите то... можно написать разборщик файла. лет за несколько :

=)

Sergey
14.02.2017
09:36:51
Мсье знает толк :)

Alex
14.02.2017
09:39:34
окей, тогда почему моя самописная приложенька с ним работает?

Amber 8
14.02.2017
09:40:06
окей, тогда почему моя самописная приложенька с ним работает?
приложенька к чему коннектится, что открывает?

Alex
14.02.2017
09:40:41


вот к этой бд

данные пишутся в нее, 100%

бд к скуле не прикреплена

Sergey
14.02.2017
09:41:19
лык да мочало, начинай все сначала

Amber 8
14.02.2017
09:41:21
ты картинкой коннект делаешь?

Sergey
14.02.2017
09:41:33
конекшнстринг из своего приложения покаж

Amber 8
14.02.2017
09:41:48
OpenPNG('screen1.png') и пошел писать?

Alex
14.02.2017
09:42:04


Amber 8
14.02.2017
09:42:18
кстати, я один такой нервный, которого трясёт от слова "скуль"?

Alex
14.02.2017
09:43:30
я не сильно знаю за мсскл. но может там акцессный файл ? :)

Amber 8
14.02.2017
09:43:50
Может приложенька включает в себя какой-нибудь компонент, который на самом деле MS SQL Server Express или типа того?

Страница 94 из 718