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

Питання та відповіді для професіоналів баз даних, які бажають покращити свої навички роботи з базами даних та дізнатися від інших у спільноті

3
Наскільки небезпечно надання дозволу ALTER TABLE?
Уявіть такий сценарій CREATE DATABASE test GO USE test; CREATE TABLE dbo.Customer ( CustomerId INT, Email VARCHAR(100), SensitiveData VARCHAR(20) ); INSERT INTO dbo.Customer VALUES (1,'abc@foo.com','12346789'); У якийсь момент записується процес ETL, який виконує деякі дії в testбазі даних. CREATE USER etlUser WITHOUT LOGIN; /*For demo purposes*/ CREATE TABLE dbo.StagingTable ( …

1
Яка функція цитує ідентифікатор в динамическом sql з SQL Server?
Що таке метод SQL Server безпечного котирування ідентифікаторів для генерації динамічного sql. MySQL має quote_identifier PostgreSQL має quote_ident Як я можу переконатися, що для динамічно згенерованого оператора дається ім’я, що динамічно генерується, що сам стовпець не є атакою ін'єкції SQL. Скажімо, у мене є заява SQL, SELECT [$col] FROM table; …

5
Як мати більше 100 записів у заяві case як змінної
Я написав випадок випадку із> 100 варіантами, де я використовую той самий вислів у 4-х місцях у простому запиті. Один і той же запит двічі з об'єднанням між ними, але також робить підрахунок, і тому група також містить заяву справи. Це для відновлення назви деяких компаній, де різні записи для …

2
Однакова функція в пункті SELECT і WHERE
Питання для початківців: Я маю дорогу функцію f(x, y)у двох стовпцях x і y в таблиці моєї бази даних. Я хочу виконати запит, який дає мені результат функції у вигляді стовпця і накладає на нього обмеження, щось подібне SELECT *, f(x, y) AS func FROM table_name WHERE func < 10; …

1
Команда bcp Неправильний синтаксис поблизу ' '. Характер є насправді: “ä”
У мене в Ubuntu (Linux) встановлені mssql-сервер і mssql-інструменти . Коли я намагаюся експортувати дані за допомогою команди bcp, використовуючи такий командний рядок: bcp DBname.dbo.Täble_Name out Täble_Name -c -k -S127.0.0.1 -Usa -PpassWord -r ~ Я отримую цю помилку: SQLState = 37000, NativeError = 102 Помилка = [Microsoft] [Драйвер ODBC 13 …

2
Якщо ви не плануєте видаляти, чи можна видалити папки "Увійти та оновити кеш" у папці Setup Bootstrap?
У мене є кілька версій SQL Server, які використовуються для тестування, встановлені на моєму ноутбуці (2012, 2014, 2016 та 2017). Днями я помітив, що там була папка, що містить попередні версії файлів через оновлення (SP, CU). На всіх версіях на ділі займає зовсім небагато місця: (в C: \ Програмні файли …

2
SQL Server в Linux завис при первинному запуску, без помилок і жодного нового / оновленого файлу ErrorLog
Я використовую SQL Server 2017, випуск Candidate 2 (RC2) на Linux (Ubuntu 16.04). Коли сервер запускається, зазвичай запускається і SQL Server. Але чомусь SQL Server більше не запускається. Принаймні я не можу підключитися до нього за допомогою sqlcmd . Я щоразу отримую помилку очікування ODBC ( "Sqlcmd: Помилка: драйвер Microsoft …

2
Вибір індексу кластера - PK чи FK?
У мене є таблиця SQL Server 2014, яка виглядає наступним чином: OrderId int not null IDENTITY --this is the primary key column OrderDate datetime2 not null CustomerId int not null Description nvarchar(255) null Деякі люди з моєї команди припустили, що кластерний індекс повинен бути включений OrderId, але я думаю, що …

1
Підключення до локального MS SQL Server від клієнтського інтерфейсу
Я дуже новачок у серверах SQL та баз даних. Нещодавно я використовував SQL Server Express і звертався до моєї бази даних за допомогою студії управління SQL Server в Windows. Зараз я намагаюся досягти подібних налаштувань на машині Linux. Я хотів би створити локальний екземпляр SQL Server на машині, а потім …

1
Обмеження розділу не використовується для приєднання таблиць, розділених часовою міткою
Я маю структуру таблиці з розділеними на зразок: CREATE TABLE measurements ( sensor_id bigint, tx timestamp, measurement int ); CREATE TABLE measurements_201201( CHECK (tx >= '2012-01-01 00:00:00'::timestamp without time zone AND tx < ('2012-01-01 00:00:00'::timestamp without time zone + '1 mon'::interval)) )INHERITS (measurements); CREATE INDEX ON measurements_201201(sensor_id); CREATE INDEX ON …

4
Чому змішування зіставлень стовпців в одній базі даних вважається поганим?
Є дві причини, які змушують мене задати це питання: tSQLt Рамка для тестування T-SQL tSQLt вважає це проблемою "високої серйозності", коли існують стовпці з порівнянням за замовчуванням. Автор тесту констатує наступне: Я НЕ припускаю, що кожен стовпець рядка повинен мати зіставлення, яке відповідає зіставленням за замовчуванням для бази даних. Натомість …

1
SQLServer Upgrade Advisor 2014 висить
Я намагаюся запустити консультант з оновлення SQL Server 2014 проти сервера SQL Server 2008. Під час підключення до сервера 2008 все виглядає добре, і я можу вибрати, яку базу даних я хотів би проаналізувати. Але після запуску він працює назавжди, не роблячи нічого (залишаючись на кроці Аналізуючи правила: 0/112 ). …

2
База даних для ефективних сукупних запитів діапазону?
Як спрощений приклад, припустимо, у мене є така таблиця: seq | value ----+------ 102 | 11954 211 | 43292 278 | 19222 499 | 3843 Таблиця може містити сотні мільйонів записів, і мені потрібно часто робити такі запити: SELECT sum(value) WHERE seq > $a and seq < $b Навіть якщо …

3
Основні проблеми з продуктивністю на нашому виробничому SQL сервері, як я можу це усунути?
Це питання в основному є додатковим запитанням до цього питання: Дивна проблема продуктивності на SQL Server 2016 Зараз ми стали продуктивними з цією системою. Хоча ще одна база даних додатків була додана до цього SQL-сервера з мого останнього допису. це системна статистика: 128 ГБ оперативної пам’яті (максимальна пам'ять 110 ГБ …

1
Як вводити записи за допомогою ключів до спочатку порожнього дерева B +?
Покажіть результат введення записів ключами в порядку (1, 2, 3, 4, 5) на початково порожній B + - дерево порядку m = 3. У разі переповнення розділіть вузол і не поширюйте повторно ключі від сусідів. Чи можна вводити записи за допомогою клавіш в іншому порядку, щоб мати дерево меншої висоти? …
11 btree 

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.