Database
Solving problems and issues related to various DBMS
Explore Questions
There are no popular questions to show right now
-
0 votes2 answers
-
0 votes0 answers
-
0 votes1 answer
-
0 votes1 answer
-
0 votes1 answer
319 questions in this forum
-
Как удалить данные из нескольких таблиц
Добрый день Подскажите как удалить данные из двух тоблиц . причем если удаление из первой таблицы было сделано а удаление из второй прошло не успешно то восстановить данные в первой таблице . Я делаю форум , и при удалении темы я хочу удалить и все сообщения данной темы . Пока знаю как сделать удаление посследованноое сначала запустить mysql_query(delete from tb_mes where th_id_m = id) а потом mysql_query(delete from tb_еруьу where th_id = id) но тут проблема в том что удалив первые данные мне надо писать проверку если было успешно потом в зависимости от проверки запускать второй случай и если он не прошел то все сообщений нет а тема осталось
0 votes2 answers -
Просветите по DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
Прошу людей многоопытных и не голословных высказаться относительно фичи MySQL `datetime` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, Думаю сейчас над структурой одной БД. Данная фича, как я вижу, позволяет автоматом сохранять момент, когда запись была создана/обновлена. Имхо, удобно, дёшево и сердито. Есть желание прилепить такое поле чуть ли не в каждую таблицу. Внимание вопрос: Кто может аргументировать, стоит ли её использовать массово на таблицах, не скажется ли это на скорости записи чтения, обновления? Ничего толково почитать в поисковике не попалось. Честно признаюсь, лень писать огромные синтетические тесты. Бахнул цикл на 1000…
0 votes2 answers -
Не создаёт БД на openserver
зашёл в PhpMyAdmin с данными root и root, потом открыл консоль и почему не создаёт БД? http://i91.fastpic.ru/big/2017/0111/09/df14ece0b17a1fdf337cce8f262c8c09.jpg А как войти в MySQL менеджер, что нужно вводить? http://i91.fastpic.ru/big/2017/0111/d3/75daf04ccd31afaa93fe6e0d840a1ad3.jpg
0 votes2 answers -
SELECT и REGEXP
Доброго времени суток, возникла маленькая проблемка, может кто нибудь поможет. Есть записи с полем в котором хаотично расположены числа через запятую например '1,52,2,8,10' короче говоря количество может быть какое угодно и порядок хаотичный и вот по этому полю идет выборка. Нужно вывести те записи в которых есть данное число например 2. Записей может быть много в таблице. Спасибо.
0 votes3 answers -
Оптимизация бд в joomla
Прошу помочь асов =) Как можно в джумле отследить какие запросы и сколько времени выполняются при загрузке сайта, что бы добавить индекс куда нужно для убыстрения? Я пробовал отладочный режим но он не показывает время, поискал в инете наткнулся на статью где пишется какие сделать изменения нужно чтоб писал, я всё сделал, а всё равно не пишит, может какой плагин есть удобный или ещё способы?
0 votes3 answers -
Помогите с запросом
Пишу в этот форум, потому что почему-то у меня нет прав создавать топике в разделе СУБД Есть таблица users user_id | rating 1 | 80 2 | 50 3 | 30 4 | 10 И таблица update_rating user_id | dop_rating 1 | 15 2 | -30 3 | -10 4 | 60 Вопрос: как в одном запросе приплюсовать данные поля update_rating.dop_rating к полю users.rating у всех пользователей? Пока не нашел другого способа как создавать для каждого юхера свой sql-запрос, но ИМХО если пользователей будет много, то это будет жестоко..
0 votes5 answers -
Ошибка в таблице?
Что означает, когда в таблице к колонке после ввода данных появляется вопросик в черном ромбе? Тип колонки у меня TEXT, там есть как русские, так и английские буквы, плюс теги. Заметил, что в некоторых рядах проблема не возникает, однако закономерность не удается проследить. Что означает данное предупреждение?
0 votes2 answers -
Помогите составить выборку из трех таблиц
Здравствуйте. Имеем три таблицы: фрукты, страны (в которых они растут), и таблица их соотношения (так как один фрукт может принадлежать более чем одной стране). Пример: Задача: вывести список фруктов, и рядом с каждым фруктом список его стран. Думал как сделать, ничего не придумал кроме выборки сначала фруктов и вывода их в цикле, потом второй запрос для выбора стран внутри каждого цикла по id фрукта. Но это не есть гуд, как вы понимаете. Как новичок прошу совета (прикидывал и с временными таблицами, и с вложенными select, и с join'ами, но ничего не получилось). Спасибо.
0 votes7 answers -
Непонятный косяк в запросе
Доброго времени суток. Есть база данных, в ней 3 таблички, из которых запрос одновременно тянет информацию. Запрос вот такой: SELECT `#__showcase_items`.`id`, `#__showcase_items`.`name`, `#__showcase_items`.`group`, `#__showcase_groups`.`group_name`, `#__showcase_images`.`image_name` FROM `#__showcase_items`, `#__showcase_groups`, `#__showcase_images` WHERE `#__showcase_groups`.`id`=`#__showcase_items`.`group` AND `#__showcase_images`.`item_id`=`#__showcase_items`.`id` AND `#__showcase_images`.`main`=1 ORDER BY rand() LIMIT 1 Пока база была маленькая, все было прекрасно. А вот сейчас какие-то…
0 votes3 answers -
Непонятна работа LIMIT в SQL
Здравствуйте. Некорректно работает запрос с LIMIT public function pages($categ = FALSE, $start = 1) { $start = $start*20-20; if($categ) { $where = array('cat_id' => $categ); $order_by = 'uy4ib_pages.id DESC'; } else { $where = array(); $order_by = 'uy4ib_pages.cat_id ASC'; } $this->db->select('uy4ib_pages.id, name, date, categories.title') ->from('uy4ib_pages') ->join('uy4ib_categories', 'uy4ib_categories.id = uy4ib_pages.cat_id', 'left') ->where($where) ->order_by($order_by) ->limit(20, $start); // …
0 votes6 answers -
Запрос между связанными таблицами
Имеются 3и основные таблицы 1. Модели принтеров 2. Модели картриджей 3. Названия принтеров И две связанные таблицы по ID 1. Модели-картриджи 2. Модели-названия принтеров Получить по модели принтера его картриджи или список принтеров не проблема, а вот как получить по имени принтера модели картриджа для него ? Нужно делать два запроса (получаем id модели и из него получаем модель картриджей) или можно как-то через один запрос?
0 votes1 answer -
Схема базы данных социальных сетей
Привет всем! На дипломный проект я пишу социальную сеть. Сейчас проектирую схему базы данных. Появился вопрос - есть ли какие-нибудь шаблоны подобных схем?
0 votes0 answers -
load data
Читаю здесь http://phpclub.ru/mysql/doc/load-data.html про LOAD DATA. Пишу так: load data infile '1.txt' into table cat; Выдает такую ошибку на фото: Что может быть? Содержимое файла 1.txt Андрей Пупкин 85 Таблица такая: | cat | CREATE TABLE `cat` ( `number` int(11) NOT NULL AUTO_INCREMENT, `name1` varchar(20) DEFAULT NULL, `surname` char(12) DEFAULT NULL, `age` int(11) DEFAULT NULL, PRIMARY KEY (`number`), UNIQUE KEY `name1` (`name1`,`surname`,`age`) ) ENGINE=MyISAM AUTO_INCREMENT=35 DEFAULT CHARSET=utf8 |
0 votes8 answers -
Как составить запрос
Предположим, есть таблицы `t1` и `t2` с одинаковым полем `field`. При помощи запроса SELECT `t1`.`id`, `t2`.`field` FROM `t1` LEFT JOIN `t2` ON `t1`.`field`=`t2`.`field` WHERE `t2`.`field` IS NULL мы получим айдишники записей таблицы `t1` для которых значение поля `field` не совпадает ни с одним значением поля `field` в таблице `t2`. Надеюсь, я понятно объяснил. Так вот вопрос в следующем - как написать запрос, который бы удалил эти записи из таблицы `t1`?
0 votes3 answers -
Соединение
При попытке соединения с базой выводится следуюющее: Код: $connect = mysql_connect($this -> db_hostname, $this -> db_username, $this -> db_password) or die("Could not connect: " . mysql_error()); print ("Connected successfully"); mysql_close($link); Что это значит и как это исправить.
0 votes3 answers -
Не создается таблица в БД
Самое интересное что данный код вводу как SQL запрос прямо в БД, все норм. А что не так в php? $mysqli = new mysqli ('localhost', 'root', '');$mysqli->select_db('mygame')$mysqli->query("CREATE TABLE ky59(id CHAR,name CHAR )"); Но пробовал и так : mysql_connect('localhost', 'root', '');mysql_select_db('mygame');mysql_query("CREATE TABLE ky599i (id CHAR,name CHAR)");
0 votes7 answers -
Row size too large
Привет всем. Объясните, пожалуйста, как исправить такую ошибку в mysql Row size too large. The maximum row size for the used table type, not counting BLOBs, is 8126. You have to change some columns to TEXT or BLOBs Таблица просто не создается. В ней: 90 столбцов VARCHAR(255), 5 INT(11), 16 TINYINT(1-3), 2 TEXT и 3 DATETIME. Прочитал, что таблица InnoDB попросту не вмещает в себя такое количество столбцов (в основном из-за формата VARCHAR(255)) в кодировке UTF-8. Но это только начало, хотелось бы иметь возможность вмещать до 500 столбцов, а лучше немного с запасом. Как вариант большинство варчаров перевести в другой, менее объемный тип, но это, как я понимаю, не сильно ра…
0 votes2 answers -
SQLite как СУБД для сайта
Возникло желание попытаться использовать в качестве базы для сайта/блога SQLite. Вроде бы на первый взгляд почти по всем параметрам подходит: данные хранить умеет, небольшую нагрузку, по отзывам, держит (явно даже сотню тысяч хитов держать не придется), все лежит в файле (бекапить должно быть удобно), чтение неблокирующее. А вот с записью вопрос. Запись блокирующая. То есть если обслуживается сайт, не предполагающий интерактива от пользователей (визитка, промо, прайс и т. п.) — все ОК, контент меняет администратор (1 шт.), одновременные попытки записи практически исключены. А вот если есть комментарии, или речь вообще о блоге или онлайн-игре (пусть и ненагруженной), то ве…
0 votes2 answers -
0 votes3 answers
-
Переезд Firebird >> MySQL
Доброго времени ВСЕМ. выгрузил данные из FireBird в скрипт, получил: SET BLOBFILE 'C:\temp\111\BLOB_DATA.lob'; INSERT INTO BLOB_DATA (ID_BLOB, ID_DOC, DT_BLOB_UPD, ID_USER, SIZE_BLOB, TYPE_BLOB, DATA_BLOB, ID_BLOB_OUT) VALUES (75, 1000052, '2009-07-03 15:53:46', 1030, NULL, 4, :h00000000_00002F37, NULL); INSERT INTO BLOB_DATA (ID_BLOB, ID_DOC, DT_BLOB_UPD, ID_USER, SIZE_BLOB, TYPE_BLOB, DATA_BLOB, ID_BLOB_OUT) VALUES (77, 1000009, '2009-05-22 17:05:59', 1030, NULL, 4, :h00002F37_00001E13, NULL); INSERT INTO BLO ................ Открыл в EMSsql Menedger этот текст , вижу: Unknown system variable 'BLOBFILE' Скаж плиз, как это делается в MySQL ? Пробовал читать, дочитался до…
0 votes1 answer -
Выбор значений при множественном фильтре
product_id filter_id 1 1 1 2 2 3 3 1 3 2 3 3 3 4 4 1 4 3 4 4 Здравствуйте,вопрос следующий. Не знаю,как правильно составить запрос. Есть множественное значение фильтра,например: filter_id=1,3,4. Это должно дать значения product_id=3,4. Соответственно,filter_id=1,2 дает product_id=1,3. То есть выбираются продукты,по которым есть все значения фильтра. Но это не все. Ф…
0 votes2 answers -
не импортируется б/д
Ребятки,очень нужно поднять сайт локально,но при импорте мне выдает такую ошибку: #1118 - Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline. Что это может быть,и как с ней бороться?
0 votes11 answers -
Долбаная кодировка
Уже никаких мозгов не хватает. Спрошу тут, может кто подскаже чего. Так уж исторически сложилось, что всё на cp1251 должно быть. Но всё как-то не то и не так. Простейший скрипт: mysql_query("INSERT INTO `table` (`field`) VALUE ('Тест')"); echo("INSERT INTO `table` (`field`) VALUE ('Тест')<br>"); $q=mysql_query("SELECT * FROM `table`"); $r=mysql_fetch_array($q); echo $r['field']; Выдаёт Кодировка скрипта 1251 (даже специально хэдер вывел для пущей уверенности), таблица cp1251_general_ci, в /etc/mysql/my.cnf указано init_connect='SET NAMES cp1251' collation_server=cp1251_general_ci character_set_server=cp1251, но mysql_client_encoding() всё равно упорно возвращает l…
0 votes2 answers -
Поле UNIQUE но null может повторяться
Можно ли сделать такое поля, что бы UNIQUE но null повторяться могло? ну например вот это прокатит: а это нет:
0 votes2 answers -
Какой тип данных выбрать
Всем привет!!! В MySQL базе данных создается таблица , котора будет содержать данные о размещенных на сайте опросах. Одно из полей данной таблици будет показывать отображать опрос или нет. Т.е. ее в ней будет содержаться: hide или visible 0 или 1 Какой тип данных лудше определить для данного, при условии что по данному полю довольно часто будут делаться выборки??? (Например smalint или varchar(1) или char ) Зарание СПС!!1
0 votes2 answers