Администраторы базы данных

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

1
Ошибка размера строки с MySQL
Я использую сервер MySQL на своем Macbook (для тестирования). Версия 5.6.20 от Homebrew. Я начал сталкиваться с ошибками «слишком большой размер строки», и мне удалось свести их к этому тесту. Таблица: mysql> describe test; +-------+----------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-------+----------+------+-----+---------+----------------+ | …
11 mysql  innodb 

5
Не могу создать таблицу, но таблица не существует
Я использую эти шаги для создания таблицы my_user, которая уже существует, но каким-то образом исчезла из моей базы данных my_db: mysql> USE my_db; mysql> DROP TABLE my_user; mysql> ERROR 1051 (42S02): Unknown table 'my_user' mysql> CREATE TABLE my_user (id INT AUTO_INCREMENT NOT NULL, username VARCHAR(255), group_id VARCHAR(255) DEFAULT NULL, PRIMARY …
11 mysql  innodb 

3
Какой самый быстрый способ получить последний ряд из таблицы?
У меня есть таблица PostgreSQL Prices, со столбцами: price (Десятичный) product_id (Int) Есть также created_atи updated_atстолбцы. Цены регулярно обновляются, и я держу старые цены в таблице. Для данного продукта последняя цена в таблице является текущей ценой. Какой самый эффективный способ получить последнюю цену за конкретный товар: Индекс product_idи запрос для …

3
Установить случайное значение из набора
Мне нужно поместить несколько случайных значений в базу данных, но я не хочу, чтобы в конечном итоге был полностью рандомизированный текст (например, 7hfg43d3). Вместо этого я хотел бы случайно выбрать одно из значений, предоставленных мной.

3
Улучшает ли использование LIMIT производительность и заметно ли это?
Я хочу понять следующее. Предположим, что у меня сложный запрос с, скажем, объединением 5 таблиц в группу по сумме и по порядку. Оставляя в стороне какие-либо оптимизации самого запроса, например, индексы и т. Д. Есть ли какое-либо существенное преимущество в производительности LIMIT? Я предполагаю, что весь запрос (и результаты) должен …

5
Оператор DELETE конфликтует с ограничением REFERENCE
Я пытаюсь удалить всех пользователей, но получаю сообщение об ошибке: Msg 547, Level 16, State 0, Line 1 The DELETE statement conflicted with the REFERENCE constraint "FK_M02ArticlePersons_M06Persons". The conflict occurred in database "workdemo.no", table "dbo.M02ArticlePersons", column 'M06PersonId'. The statement has been terminated. Запрос: DELETE FROM [workdemo.no].[dbo].[M06Persons] WHERE ID > '13' …
11 sql-server  t-sql 

3
UNION работает медленно, но оба запроса выполняются быстро в разных
Не знаю, что еще делать с этим. У меня есть одна таблица, в которой есть столбцы start и stop, и я хочу вернуть ее результаты, объединенные как start, так и stop, и я хочу провести четкое различие между ними. Теперь оба запроса выполняются быстро раздельно: SELECT UNIX_TIMESTAMP(CONVERT_TZ(start_dev, '+00:00', GetCarrierTimezone(a0.carrier_id))) AS …
11 mysql 

3
Лучшие практики для истории / временных таблиц?
Предположим, у меня есть объект, с определенными полями, которые я хочу отслеживать историю, и определенными полями, которые я не хочу отслеживать историю. С точки зрения нормализации, следующая схема в порядке: CREATE TABLE MyObject AS ( MyObjectId INT IDENTITY NOT NULL PRIMARY KEY, MyObjectField1 VARCHAR(100) NOT NULL, MyObjectField2 VARCHAR(100) NOT NULL, …

1
В чем разница между last_worker_time и last_elapsed_time в DMV sys.dm_exec_query_stats?
что означает значения last_worker_time и last_elapsed_time в DMV sys.dm_exec_query_stats и в чем разница между ними? когда я запускаю ниже запроса SELECT TOP 20 qs.last_worker_time, qs.last_worker_time/1000000 last_worker_time_in_S, qs.last_elapsed_time, qs.last_elapsed_time/1000000 last_elapsed_time_in_S FROM sys.dm_exec_query_stats qs order by qs.last_worker_time desc Я получаю результат, как показано ниже. Я заметил, что либо они равны, либо прошедшее …

1
Вход в файл в службе Windows PostgreSQL
Мне нужна альтернатива для запуска следующей команды: C:\xxx\pgsql\bin\pg_ctl" -D "C:\xxx\pgsql\data" -l "C:\yyy\log\pgsql.log" start, Таким образом, сервер запускается и входит в систему C:\yyy\log\pgsql.log. Когда я пытаюсь зарегистрировать сервер в качестве службы, опции логирования недоступны, и сервер регистрирует в Event Viewer. Из документации pg_ctl: pg_ctl register [-N имя_службы] [-U имя пользователя] [-P …

6
Попытка получить логическую страницу (5: 65424) в базе данных 2 не удалась
Я получаю следующее SqlExceptionпри вызове хранимой процедуры: Попытка получить логическую страницу (5: 65424) в базе данных 2 не удалась. Он принадлежит единице распределения 7349876362857938944, а не 4899918190390149120. System.Data.SqlClient.SqlException произошла ошибка Message = "Попытка извлечь логическую страницу (5: 65424) в базе данных 2. Она принадлежит блоку выделения 7349876362857938944, а не 4899918190390149120. …


1
Ограничить ввод для нескольких разных строк
Привет я не могу получить ограничение работает так, как я ожидаю в PostgreSQL. Изнутри pgadmin я выполняю следующий SQL-запрос. -- Check: "TypeCheck" -- ALTER TABLE "ComLog" DROP CONSTRAINT "TypeCheck"; ALTER TABLE "ComLog" ADD CONSTRAINT "TypeCheck" CHECK ("Type" SIMILAR TO 'email|post|IRL|minutes'); COMMENT ON CONSTRAINT "TypeCheck" ON "ComLog" IS 'One of email|post|IRL|minutes'; …

2
Как записать подробный вывод из mysqldump?
Обычно вы сохраняете подробный вывод команды Linux следующим образом: # command > output.txt Но когда вы используете команду вроде mysqldump, >опция выводит дамп таблиц базы данных в нужный файл: # mysqldump --username=whatever --password=whatever -h localhost database > dump.sql Если вы добавите параметр -v(verbose) mysqldump, он выведет справочную информацию о том, …

5
Права доступа пользователя перепутаны после резервного копирования -> Операция восстановления
Мне пришлось перенести несколько баз данных SQL Server 2008 на наш новый сервер баз данных, поэтому я скопировал их все (в файлы .bak), скопировал эти файлы в новый ящик и восстановил их (все сделано с помощью SQL Management Studio). Все прошло нормально, но теперь я не могу войти ни в …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.