Nano Hash - криптовалюты, майнинг, программирование

SQL2016 Не удалось создать главный ключ столбца

Я только что установил SQL 2016 Standard Edition, потому что хотел использовать функцию «Всегда зашифровано». Однако, когда я попытался создать главный ключ столбца в разделе Безопасность->Всегда зашифрованные ключи->Главный ключ столбца, я получил следующую ошибку: введите здесь описание изображения

productversion: 13.0.160.5, productlevel: RTM, edition: Standard Edition 64bit Есть идеи? Спасибо!


  • Вы используете SSMS 2016 и выполняете запрос к экземпляру, отличному от 2016, или наоборот? 19.10.2016
  • Привет, я использую SQL Management Studio 2016 и SQL Server 2016, стандартную версию. 19.10.2016
  • Запустите SELECT @@version и вставьте его в свой пост только для подтверждения. 19.10.2016
  • Microsoft SQL Server 2016 (окончательная первоначальная версия) — 13.0.1601.5 (X64) 29 апреля 2016 г. 23:23:58 Авторские права (c) Microsoft Corporation Standard Edition (64-разрядная версия) в Windows 10 Pro 6.3 ‹X64› (сборка 10586:) (гипервизор ) 19.10.2016
  • Выполните свои обычные шаги, дойдите до точки, где вы собираетесь нажать «ОК», чтобы сгенерировать ключ, но вместо этого перейдите в верхнюю часть окна подсказки и запишите команду в новое окно. Запустите TSQL и посмотрите, появляется ли ошибка. 19.10.2016
  • Выполнил запрос в новом окне, но получил ту же ошибку 19.10.2016
  • ИСПОЛЬЗУЙТЕ [mydb] СОЗДАЙТЕ ГЛАВНЫЙ КЛЮЧ КОЛОННЫ [MK_PersonDOB] С (KEY_STORE_PROVIDER_NAME = N'MSSQL_CERTIFICATE_STORE', KEY_PATH = N'CurrentUser/My/blahblah') GO 19.10.2016
  • Вместо этого попробуйте сгенерировать ключ с помощью шифрования столбца. Щелкните правой кнопкой мыши таблицу, выберите «Зашифровать столбцы», затем следуйте указаниям мастера, чтобы сгенерировать ключ столбца и главный ключ. 19.10.2016
  • Та же ошибка. На самом деле я сначала попробовал и подумал, что это не удалось, потому что не было мастер-ключа. Не повезло обоим. Я действительно смущен. Может я что-то упустил при установке? 19.10.2016
  • Это был бы мой последний вариант. Если ничего не помогло, попробуйте выключить и снова включить. Сделайте полное удаление и повторите попытку. 19.10.2016
  • Та же проблема здесь. Невозможно даже создать новую базу данных в экземпляре и зашифровать столбцы - @@version = Microsoft SQL Server 2016 (RTM-GDR) (KB3194716) - 13.0.1722.0 (X64) 26 сентября 2016 г. 13:17:23 Авторское право (c) Microsoft Corporation Standard Edition (64-разрядная версия) в Windows 10 Pro 6.3 ‹X64› (сборка 14393: ) 04.01.2017

Ответы:


1

У меня была такая же проблема. Я исправил это, обновив до Sql Server 2016 SP1. из SQL Server 2016.

Ранее @@version был:

  • Microsoft SQL Server 2016 (RTM-GDR) (KB3194716) — 13.0.1722.0 (X64) 26 сентября 2016 г., 13:17:23 Авторское право (c) Microsoft Corporation Standard Edition (64-разрядная версия) в Windows 10 Pro 6.3 (сборка 14393:)

Теперь @@version это:

  • Microsoft SQL Server 2016 (SP1) (KB3182545) — 13.0.4001.0 (X64) 28 октября 2016 г. 18:17:30 Авторское право (c) Microsoft Corporation Standard Edition (64- бит) в Windows 10 Pro 6.3 (сборка 14393: )

Обратите также внимание, что моя SSMS полностью обновлена.

  • Инструменты > Проверить наличие обновлений > Сведения — 13.0.16100.1
  • У коллеги более старая сборка SSMS, и он даже не видит возможности шифрования столбцов.
04.01.2017
  • Должен быть помечен как ответ, проблема в том, что ваша SSMS достаточно нова, чтобы поддерживать постоянное шифрование, а ваша версия SQL-сервера - нет. 04.02.2017

  • 2

    Проблема, вероятно, была вызвана восстановлением базы данных SQL2014. Я сделал резервную копию базы данных 2014 года, а затем восстановил ее в 2016 году. SQL мог видеть ее как схему 2014 года и поэтому жаловался, что главный ключ столбца не поддерживается. Как я это решил: в SSMS 2016 создайте сценарий .sql для импортированной базы данных (в дополнительных настройках выберите сценарий SQL 2016) Установите новый экземпляр SQL 2016 (который может не понадобиться для проверки) и запустите сгенерированный .sql, а не чем вариант восстановления

    20.10.2016
  • Где найти расширенные настройки? 30.01.2018
  • @DovMiller щелкните правой кнопкой мыши базу данных, для которой вы хотите сгенерировать сценарий, — › задача — › сгенерировать скрипты — › установить параметр сценария. есть расширенная кнопка -> выбрать скрипт для версии sql в окне дополнительных параметров 20.01.2019

  • 3

    «Всегда зашифровано доступно в SQL Server 2016 (13.x) и базе данных SQL. (До SQL Server 2016 (13.x) с пакетом обновления 1, Always Encrypted было ограничено Enterprise Edition.)»

    Источник: https://docs.microsoft.com/en-us/sql/relational-databases/security/encryption/always-encrypted-database-engine?view=sql-server-2017

    17.09.2019
    Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

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

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..