Базы данных на пальцах (для новичков)

seregakot

Client
Регистрация
19.03.2016
Сообщения
132
Благодарностей
63
Баллы
28
спасибо всем, кто поддержал статью лайком. с 8 июня на ютуб канале будет выпущено несколько видео по БД, логически продолжающие данную статью.

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

P.S. "Соррян" за рекламу
Подписался , жду продолжения
 

sydoow

Client
Регистрация
22.06.2011
Сообщения
242
Благодарностей
132
Баллы
43
спасибо всем, кто поддержал статью лайком. с 8 июня на ютуб канале будет выпущено несколько видео по БД, логически продолжающие данную статью.

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

P.S. "Соррян" за рекламу
Я не новичок в ЗП и пишу на C#, но с БД не работал и данная статья для меня очень была полезна
Да и канал тоже мне нрав, некоторые короткие ролики для меня полезны, например про словари и решения задачек с форума, так что веди, не бросай)
 

Flame1974

Client
Регистрация
11.10.2019
Сообщения
34
Благодарностей
3
Баллы
8
Не понятно по айпи. С базой данных я буду работать онлайн. С двух компов одновременно. При этом айпишники будут постоянно меняться. Там и VPN и мобильные прокси и т.д. Хостинг что не будет пускать мои запросы если они не попадают в указанный диапазон?
 

volody00

Client
Регистрация
06.09.2016
Сообщения
648
Благодарностей
670
Баллы
93
Не понятно по айпи. С базой данных я буду работать онлайн. С двух компов одновременно. При этом айпишники будут постоянно меняться. Там и VPN и мобильные прокси и т.д. Хостинг что не будет пускать мои запросы если они не попадают в указанный диапазон?
Jino не будет.
 

Flame1974

Client
Регистрация
11.10.2019
Сообщения
34
Благодарностей
3
Баллы
8
Написал им в техподдержку, хотел вернуть уплаченные деньги. Они ответили "Да, Вам пустит только с тех IP, что добавлены в разделе https://cp-hosting.jino.ru/management/mysql/ipaccess/ Удаленный доступ к базе с любого IP можно получить на спектре или VPS. "
Подскажите что выбрать. Спектр или VPS. Я далёк от этого. Базы переносил в таблицах с компа на комп через облако ручками. Но вот хочу перейти на БД. Пятый десяток уже, тяжело осваивать не известное, но надо)))
 

Sanekk

Client
Регистрация
24.06.2016
Сообщения
987
Благодарностей
388
Баллы
63
Написал им в техподдержку, хотел вернуть уплаченные деньги. Они ответили "Да, Вам пустит только с тех IP, что добавлены в разделе https://cp-hosting.jino.ru/management/mysql/ipaccess/ Удаленный доступ к базе с любого IP можно получить на спектре или VPS. "
Подскажите что выбрать. Спектр или VPS. Я далёк от этого. Базы переносил в таблицах с компа на комп через облако ручками. Но вот хочу перейти на БД. Пятый десяток уже, тяжело осваивать не известное, но надо)))
Ну vps вам наверно не надо... Во первых впс по дороже может быть, во вторых если вы не знакомы с линукс системами и работой с ними по ssh , то тут даже на стоимость тарифа разницы нет.
Возмите спектр самый дешëвый тариф, там под вордпресс есть и ставтьте туда базу, всë управления будет через их (джино) админку, там методом тыка и с помощью гугла справитесь)))
 
  • Спасибо
Реакции: Flame1974

Koqpe

Client
Регистрация
23.12.2014
Сообщения
1 100
Благодарностей
646
Баллы
113
Подскажите что выбрать. Спектр или VPS
У меня в подписи хостинг, уже лет 5-6 кроме сайтов держу на нем все свои базы, разрешает доступ с любых внешних айпи по паролю, более 50 баз там держу.
 
  • Спасибо
Реакции: Flame1974

bigloafer

Client
Регистрация
23.07.2020
Сообщения
230
Благодарностей
72
Баллы
28
Самый производительный и интересный подход в части Mysql у @WebBot.
Там интересная реализация - можно делать несколько обращений без закрытия соединения с базой данных.
А если ты соединение не закрываешь, ты в цикле можешь делать множественные обработки.
Я распараллеливаю потоки через глобальные переменные или переменную.
Но сам класс DB не доделан - тот который в паблике.
Я бы туда добавил открыть соединение если оно потеряно по каким-то причинам.

В сами функции qwery и подобные добавил бы обработку строки на входе данных в функцию, чтобы метод не применять по тексту в кубиках.

Возможно еще что-то для универсальности.
 

bigloafer

Client
Регистрация
23.07.2020
Сообщения
230
Благодарностей
72
Баллы
28
Не понятно по айпи. С базой данных я буду работать онлайн. С двух компов одновременно. При этом айпишники будут постоянно меняться. Там и VPN и мобильные прокси и т.д. Хостинг что не будет пускать мои запросы если они не попадают в указанный диапазон?
Хостинг не имеет права ограничивать доступ к арендованным ресурсам на произвольной основе.

root-а сделай локальным.
Ты когда пользователя создаешь для БД, ты ему для доступа "%" для всех.
Если логин не знаешь от БД, то пароль подобрать не возможно - слишком емкое мероприятие получается.
 

Flame1974

Client
Регистрация
11.10.2019
Сообщения
34
Благодарностей
3
Баллы
8
Подскажите.
У автора "А также скажем, что он должен заполняться автоматически без нашего участия (правая кнопка мыши по нему" и фраза обрезана? Потому как не появляется то что должно. Происходит то же действие что и в предыдущем шаге. (Это почти конец установки, перед практикой)

Разобрался. Не правую, а левую кнопку мыши и именно на ячейку "По умолчанию"
 
Последнее редактирование:

Koqpe

Client
Регистрация
23.12.2014
Сообщения
1 100
Благодарностей
646
Баллы
113
Правильно заметили, должно быть: кликаем левой кнопкой мыши один или два раза по полю столбца "По умолчанию", в зависимости выделено поле или нет и устанавливаем галочку как на скриншоте, т.е. AUTO_INCREMENT
Поле AUTO INCREMENT Автоинкремент позволяет автоматически генерировать уникальный номер при добавлении новой записи в таблицу. Часто это поле первичного ключа, которое мы хотели бы создавать автоматически каждый раз, когда вставляется новая запись.
 

BorMax

Новичок
Регистрация
02.08.2019
Сообщения
15
Благодарностей
1
Баллы
3
Спасибо!
Будем изучать базы данных.
А как обходить превышение количества подключений при работе в многопотоке?
Здравствуйте, я вас давно ищу))
Вы в одно время удалили все свои аккаунты и я много раз пытался с вами связаться, но, о чудо Вы тут.
Если не сложно, напишите в телеграмм DepDobDel, у меня есть очень интересное и дельное предложение к Вам. Оно связано с большой работой по бирже, сразу скажу, предложение не связано с созданием Zeno бота по трейдингу или написание "софта" по теханализу, скальпингу или холду. Оно больше техническое.
Или дайте любой контакт для связи. я отправлю Вам предложение.
 
Последнее редактирование:

ivl

Client
Регистрация
03.01.2015
Сообщения
7
Благодарностей
0
Баллы
1
Приветствую всех, я немного не понял, зачем располагать базу на хостинге, а если его нет? У новичков появляются всякие дополнительные вопросы по доступу по IP, всякие разногласия с хостером - это же отвлекает от самой темы, которая очень интересна и полезна! Если ZP стоит на локальном компе, почему просто нельзя скачать под винду Mysql сервер, или MariaDB клон его и установить рядом?
 

Phoenix78

Client
Регистрация
06.11.2018
Сообщения
11 218
Благодарностей
5 365
Баллы
113
Приветствую всех, я немного не понял, зачем располагать базу на хостинге, а если его нет? У новичков появляются всякие дополнительные вопросы по доступу по IP, всякие разногласия с хостером - это же отвлекает от самой темы, которая очень интересна и полезна! Если ZP стоит на локальном компе, почему просто нельзя скачать под винду Mysql сервер, или MariaDB клон его и установить рядом?
можно. еще можно просто пользоваться SQLite если не нужна сетевая база, а только локальная и только для приложения. она идеальна в этом случае.
 
  • Спасибо
Реакции: Koqpe и ivl

Sanekk

Client
Регистрация
24.06.2016
Сообщения
987
Благодарностей
388
Баллы
63
Приветствую всех, я немного не понял, зачем располагать базу на хостинге, а если его нет? У новичков появляются всякие дополнительные вопросы по доступу по IP, всякие разногласия с хостером - это же отвлекает от самой темы, которая очень интересна и полезна! Если ZP стоит на локальном компе, почему просто нельзя скачать под винду Mysql сервер, или MariaDB клон его и установить рядом?
На хостинг базу нужно ставить из соображений если к ней идет обращение с нескольких серваков
 

ivl

Client
Регистрация
03.01.2015
Сообщения
7
Благодарностей
0
Баллы
1
На хостинг базу нужно ставить из соображений если к ней идет обращение с нескольких серваков
То есть, имеется несколько выделенных серваков для ZP, а для общей базы идет разговор про базу на шаред-хостинге?
 

Sanekk

Client
Регистрация
24.06.2016
Сообщения
987
Благодарностей
388
Баллы
63
То есть, имеется несколько выделенных серваков для ZP, а для общей базы идет разговор про базу на шаред-хостинге?
Можно на шаред-хостинге... если есть такая необходимость можно свой впс поднять и поставить там БД.
 

Sanekk

Client
Регистрация
24.06.2016
Сообщения
987
Благодарностей
388
Баллы
63
То есть, имеется несколько выделенных серваков для ZP
Зенку не только на выделеный сервак можно воткнуть, но и на впс, правда на мощный шаб. не стоит расчитывать... Да ещё и в многопотоке
 

Koqpe

Client
Регистрация
23.12.2014
Сообщения
1 100
Благодарностей
646
Баллы
113
можно. еще можно
Как вариант, можно еще после звукового алерта вызывать оповещение или окно виндовсформ с данными и записывать их ручкой в тетрадку, лучше в клеточку :D
 

Phoenix78

Client
Регистрация
06.11.2018
Сообщения
11 218
Благодарностей
5 365
Баллы
113
Как вариант, можно еще после звукового алерта вызывать оповещение или окно виндовсформ с данными и записывать их ручкой в тетрадку, лучше в клеточку :D
к чему это ? что не так написал ?
 

Koqpe

Client
Регистрация
23.12.2014
Сообщения
1 100
Благодарностей
646
Баллы
113
к чему это ? что не так написал ?
все так, это я добавил своё дополнение к твоему ответу на вопрос @ivl для новичков, расширил так сказать горизонт :-), сори если ты принял мой ответ на свой счет :bt: .
Приветствую всех, я немного не понял, зачем располагать базу на хостинге, а если его нет? У новичков появляются всякие дополнительные вопросы по доступу по IP, всякие разногласия с хостером - это же отвлекает от самой темы, которая очень интересна и полезна! Если ZP стоит на локальном компе, почему просто нельзя скачать под винду Mysql сервер, или MariaDB клон его и установить рядом?
 

Phoenix78

Client
Регистрация
06.11.2018
Сообщения
11 218
Благодарностей
5 365
Баллы
113
  • Спасибо
Реакции: Koqpe

Atlas

Client
Регистрация
16.02.2014
Сообщения
131
Благодарностей
7
Баллы
18
Спасибо большое за статью!
Не подскажете mysql-аналог экшена операции со списком - взять случайную строку с удалением?
Нашел тут код, но там первая строка берется.
 
Последнее редактирование:

Home_KreKer

Client
Регистрация
05.12.2016
Сообщения
119
Благодарностей
28
Баллы
28
Есть такая же версия, по sqllite ?:-)
 

volody00

Client
Регистрация
06.09.2016
Сообщения
648
Благодарностей
670
Баллы
93
Спасибо большое за статью!
Не подскажете mysql-аналог экшена операции со списком - взять случайную строку с удалением?
Нашел тут код, но там первая строка берется.
для рандомной строки есть ф-я:
C#:
 ORDER BY RAND()
скорее всего так, попробуй (не проверял):
C#:
DELETE FROM treining ORDER BY RAND()
Есть такая же версия, по sqllite ?:-)
sql запросы для всех БД плюс минус одинаковые. если что-то получается в MySQL, но не получается в SQLite, забивай вопрос в гугл
 
  • Спасибо
Реакции: bizzon

Markoonij

Client
Регистрация
13.10.2020
Сообщения
67
Благодарностей
3
Баллы
8
Подскажите, что за ошибка:

86247


Иногда выскакивает такая ошибка. Через пару мин отпускает и норм конектится к БД.
 

Zippy

Client
Регистрация
14.12.2021
Сообщения
59
Благодарностей
4
Баллы
8
Захотелось перейти на БД, но возникли вопросы. Какие типы данных лучше использовать и как их правильно выбирать? Вот например создаю таблицу emails cо столбацами email, pass, control_answer, kolichestvo-reg, date, banned. Ну с kolichestvo-reg ясно - INT, с email тоже - TEXT, date - тип дата. А если число не целое? На сколько я понял, SQlite не поддерживает тип данных FLOAT и как тогда быть, юзать Mysql? Целесообразно ли шифровать пароли, не усложнит ли это жизнь при работе с ЗП?
 

BAZAg

Client
Регистрация
08.11.2015
Сообщения
1 530
Благодарностей
2 101
Баллы
113
Захотелось перейти на БД, но возникли вопросы. Какие типы данных лучше использовать и как их правильно выбирать? Вот например создаю таблицу emails cо столбацами email, pass, control_answer, kolichestvo-reg, date, banned. Ну с kolichestvo-reg ясно - INT, с email тоже - TEXT, date - тип дата. А если число не целое? На сколько я понял, SQlite не поддерживает тип данных FLOAT и как тогда быть, юзать Mysql? Целесообразно ли шифровать пароли, не усложнит ли это жизнь при работе с ЗП?
Вы можете использовать обычный varchar всегда, и не особо заморачиваться о том, как нужно.
А уже когда встретитесь с какими-то ограничениями, вот тогда и будете знать зачем именно тот или другой тип данных нужен в данном конкретном случае.
Например, когда все будет varchar, Вы поймете, что почему-то когда записываете статью, часть статьи куда-то теряется - вот и повод использовать text.
Или например записали числа с плавающей точкой в варчар, а в какой-то день захотели посчитать сумму - и ничего не получилось - вот тогда будете искать уже какой-то decimal.
Если же у Вас никаких ограничений пока не наступило, ни на какие грабли ещё не встали - то нет смысла заучивать таблицу типов, которые возможно могут и не пригодится (они пригодятся, просто запоминание проще когда встаешь на грабли и изучаешь по мере появления проблем).
 
  • Спасибо
Реакции: Zippy и Sanekk

Astraport

Client
Регистрация
01.05.2015
Сообщения
4 741
Благодарностей
4 013
Баллы
113
Например, когда все будет varchar, Вы поймете, что почему-то когда записываете статью, часть статьи куда-то теряется - вот и повод использовать text.
Хороший совет. Напарсить данных в БД, создать сайт на миллион паг, вложить много тыщ в SEO, а потом узнать, что статьи не лезут в ТОП потому что в них обрезан контент, который нет возможности восстановить.
 
  • Спасибо
Реакции: djaga

SERG454

Client
Регистрация
14.10.2021
Сообщения
101
Благодарностей
69
Баллы
28
методом "тыка" нашёл "оптимум для новичка"
нумерация с автозаполнением INT
короткие тексты и числа до 250 знаков - varchar
непонятное по размеру -text
индексация нужных столбцов
На остальные нюансы по переменным , заморачиваюсь по мере накопления опыта и уточнения задач.
 

Кто просматривает тему: (Всего: 2, Пользователи: 1, Гости: 1)