
Vladislav
28.05.2018
10:01:23
на сайте оракла был какой-то онлайн инструмент, но что там можно делать, я хз

Andrey
28.05.2018
10:03:16
да вот я пробовал как раз, но ошибки неведомые человеку выдает эта тулза

Sergey
28.05.2018
10:07:07
Ежели администрирование всякое, то проще скачать image под virtualbox

Google

Ilia
28.05.2018
13:13:10
законно ли хранить в базе колонку с циферками?
Aл, построить индекс-то можно, только искать по нему можно будет только ВЕСЬ НАБОР БИТОВ ЦЕЛИКОМ. А нужно-то наверняка искать объекты с только определёнными установленными битами...
1НФ -- она совсем неспроста в РСУБД...
Что не устраивает?
Не устраивают все остальные битики этого числа. Они могут быть произвольными.


Al
28.05.2018
13:37:34

Ilia
28.05.2018
13:38:59

Al
28.05.2018
13:39:42
Только в большую сторону

lost
28.05.2018
13:43:49

Google

Al
28.05.2018
13:50:44
Попробуй с 3 битиками. Если тебе нужен первый единичка то тебя устроят все от 4 до 7.

lost
28.05.2018
13:51:28
значит с ростом кол-ва бит селективность будет деградировать

Al
28.05.2018
14:04:03
Да. Все зависит от количества бит. Но все исключения можно просчитать динамически

Sheldhur
28.05.2018
14:04:48
ебать, вас до сих пор не отпускает?

Виктор
28.05.2018
14:05:38

Dmitrii
28.05.2018
15:29:31
Давйте еще завтра обсудим этот вопрос
А то я не уверен, что все всё поняли и пришли к единому выводу )

Ilia
28.05.2018
15:34:46
А у меня просто Телега не работала... Вот я сегодня и поотвечал

Marlik
28.05.2018
15:44:29
Люди, подскажите, чот гдет косячу, но не понимаю где:
CREATE TABLE if NOT EXISTS users (
id serial PRIMARY KEY,
chatid integer UNIQUE
);
CREATE TABLE if NOT EXISTS pools (
id serial PRIMARY KEY,
pool text UNIQUE,
users_id integer not null references users(id) on delete cascade on update cascade
);
CREATE TABLE if NOT EXISTS address (
id serial PRIMARY KEY,
addr text UNIQUE,
pools_id integer not null references pools(id) on delete cascade on update cascade
);
Пытаюсь сделать апдейт, ошибка, вот один из вариантов...
sqlStatement := `WITH q1 AS (UPDATE pools SET pool = $1), q2 AS (UPDATE address SET addr = $2) FROM users WHERE chatid = $3;`
_, err := p.dbConn.Exec(sqlStatement, pool, addr, chatID)
Чот и доку не могу найти как такие запросы правильно делать...


Dmitrii
28.05.2018
15:49:27
Люди, подскажите, чот гдет косячу, но не понимаю где:
CREATE TABLE if NOT EXISTS users (
id serial PRIMARY KEY,
chatid integer UNIQUE
);
CREATE TABLE if NOT EXISTS pools (
id serial PRIMARY KEY,
pool text UNIQUE,
users_id integer not null references users(id) on delete cascade on update cascade
);
CREATE TABLE if NOT EXISTS address (
id serial PRIMARY KEY,
addr text UNIQUE,
pools_id integer not null references pools(id) on delete cascade on update cascade
);
Пытаюсь сделать апдейт, ошибка, вот один из вариантов...
sqlStatement := `WITH q1 AS (UPDATE pools SET pool = $1), q2 AS (UPDATE address SET addr = $2) FROM users WHERE chatid = $3;`
_, err := p.dbConn.Exec(sqlStatement, pool, addr, chatID)
Задача то какая?

Marlik
28.05.2018
15:50:15
Сделать апдейт двух таблиц pools и address, которые связаны.
Чот в терминалке ручками тоже не идёт.

Dmitrii
28.05.2018
15:50:50
Покажи запрос

Ilia
28.05.2018
15:50:58
Люди, подскажите, чот гдет косячу, но не понимаю где:
CREATE TABLE if NOT EXISTS users (
id serial PRIMARY KEY,
chatid integer UNIQUE
);
CREATE TABLE if NOT EXISTS pools (
id serial PRIMARY KEY,
pool text UNIQUE,
users_id integer not null references users(id) on delete cascade on update cascade
);
CREATE TABLE if NOT EXISTS address (
id serial PRIMARY KEY,
addr text UNIQUE,
pools_id integer not null references pools(id) on delete cascade on update cascade
);
Пытаюсь сделать апдейт, ошибка, вот один из вариантов...
sqlStatement := `WITH q1 AS (UPDATE pools SET pool = $1), q2 AS (UPDATE address SET addr = $2) FROM users WHERE chatid = $3;`
_, err := p.dbConn.Exec(sqlStatement, pool, addr, chatID)
CTE не может быть update -ом

Dmitrii
28.05.2018
15:51:10
И даже с RETURNING'ом

Ilia
28.05.2018
15:51:35

Marlik
28.05.2018
15:51:44
Покажи запрос
WITH q1 AS (UPDATE pools SET pool = $1), q2 AS (UPDATE address SET addr = $2) FROM users WHERE chatid = $3;

Ilia
28.05.2018
15:51:49

Google

Marlik
28.05.2018
15:52:21

Ilia
28.05.2018
15:52:55

Dmitrii
28.05.2018
15:52:57

Marlik
28.05.2018
15:53:57

Ilia
28.05.2018
15:53:57

Marlik
28.05.2018
15:54:13

Dmitrii
28.05.2018
15:54:27
Чтобы WHERE накинуть на UPDATE
Смотри там уже по схеме у себя сам

Marlik
28.05.2018
15:55:46

Dmitrii
28.05.2018
15:56:36
WITH q0 AS (
SELECT * FROM users WHERE chatid = $3;
), q1 AS (
UPDATE pools SET pool = $1 FROM q0 WHERE q0.XX = pools.YY
), q2 AS (
UPDATE address SET addr = $2 FROM q0 WHERE q0.XX = address.YY
)
SELECT 1

Dmitrii
28.05.2018
15:56:43
Не уверен что это работает, наерное понадобятся правки
Да ладно...
Я недавно писал CTE на основе результата вставки из CTE делал JOIN чтобы связать свежевставленные данные с другой таблицей без повторной выборки. Т.е. INSERT у меня магическим образом высрал таблицу через RETURNING которую я вынул наружу через CTE.
Может даже в MySQL ребята подтянулись

Захар
28.05.2018
16:14:25
ребят
я использую mysql workbench
я создал бд
стандартную
с пользователем root
как от него узнать пароль что приконектится из idea?

Ilia
28.05.2018
16:21:14
Ёпрст, ты же задавал его когда сервер ставил!

Захар
28.05.2018
16:21:59
надо сделать все сначала
чтоб я точно все помнил

Google

Ilia
28.05.2018
16:22:27
А так при доступе к серверу под рутом можно сменить его. Там какой-то параметр надо вхренячить в конфиг, перезапусить, и он его поменяет и в лог запишет.
Кажется

Захар
28.05.2018
16:22:44
да мне легче новую бд создать
со своимм данными
логином и паролем

Ilia
28.05.2018
16:22:59
Ну создай

Admin
ERROR: S client not available

Marlik
28.05.2018
16:23:43

Ilia
28.05.2018
16:24:21
вообще вроде если под рутом заходишь и mysql потом, то вроде как оно должно без пароля входить, если я опять с PG не спутал.

Захар
28.05.2018
16:25:22
так мне из idea подключиться
надо полностью снести mysql

Dmitrii
28.05.2018
16:47:22
Двух таблиц

Захар
28.05.2018
16:58:10

Marlik
28.05.2018
17:08:23
На users_id ругается.

Захар
28.05.2018
17:14:44
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
поменял пароль как в иснтрукции
но все равно ошибка

Marlik
28.05.2018
17:15:43

Захар
28.05.2018
17:16:31
mysqld_safe —skip-grant-tables —skip-networking &
я делал через это
все было гуд
https://codebeer.ru/sbros-parolya-mysql/
отсюда

Marlik
28.05.2018
17:19:17
Вот так http://dedicatesupport.com/content/sbros-parolya-polzovatelya-root-v-mysql

Google

Захар
28.05.2018
17:20:09
я когда устанавливал
свой пароль прописывал
а чот он не прописался

Marlik
28.05.2018
17:20:48
Сразу надо было через терминалку запробовать зайти.

Захар
28.05.2018
17:21:27
все опять удалять?
/usr/bin/mysqld_safe —skip-grant-tables —user=root &
равна ли этой?
mysqld_safe —skip-grant-tables —skip-networking &

Marlik
28.05.2018
17:22:43
Зачем, попробуйте ещё раз сбросить и зайти через терминалку потом, я этой инструкцией лет 10 наверное назад пользовался как-то... не помню уже.

Захар
28.05.2018
17:23:54
у меня после твоей команды все подвисло
или так надо

Marlik
28.05.2018
17:24:59
Да, через другой терминал команды выполняйте, а вообще там в комментах есть.
И лучше тупо не копировать команды, можно ошибиться...

Захар
28.05.2018
17:28:24
ох
как все сложно
ппц
везде ошибки
снести легче
ппц
снес
установил
ввел пароль при установке
вроде гуд
но все равно пишет Access denied for user 'root'@'localhost' (using password: NO)
или когда из под себя
Access denied for user 'slenkis'@'localhost' (using password: NO)
я смог