I had the same problem, and the way I worked around it is probably not the best but it is working now.
It involves creating a linked server and using dynamic sql — not the best, but if anyone can suggest something better, please comment/answer.
declare @sql nvarchar(max)
DECLARE @DB_SPACE TABLE (
[DatabaseName] NVARCHAR(128) NOT NULL,
[FILEID] [smallint] NOT NULL,
[FILE_SIZE_MB] INT NOT NULL DEFAULT (0),
[SPACE_USED_MB] INT NULL DEFAULT (0),
[FREE_SPACE_MB] INT NULL DEFAULT (0),
[LOGICALNAME] SYSNAME NOT NULL,
[DRIVE] NCHAR(1) NOT NULL,
[FILENAME] NVARCHAR(260) NOT NULL,
[FILE_TYPE] NVARCHAR(260) NOT NULL,
[THE_AUTOGROWTH_IN_KB] INT NOT NULL DEFAULT(0)
,filegroup VARCHAR(128)
,maxsize VARCHAR(25)
PRIMARY KEY CLUSTERED ([DatabaseName] ,[FILEID] )
)
SELECT @SQL ='SELECT [DatabaseName],
[FILEID],
[FILE_SIZE_MB],
[SPACE_USED_MB],
[FREE_SPACE_MB],
[LOGICALNAME],
[DRIVE],
[FILENAME],
[FILE_TYPE],
[THE_AUTOGROWTH_IN_KB]
,filegroup
,maxsize FROM OPENQUERY('+ QUOTENAME('THE_MONITOR') + ','''+ ' EXEC MASTER.DBO.monitoring_database_details ' +''')'
exec sp_executesql @sql
INSERT INTO @DB_SPACE(
[DatabaseName],
[FILEID],
[FILE_SIZE_MB],
[SPACE_USED_MB],
[FREE_SPACE_MB],
[LOGICALNAME],
[DRIVE],
[FILENAME],
[FILE_TYPE],
THE_AUTOGROWTH_IN_KB,
[filegroup],
maxsize
)
EXEC SP_EXECUTESQL @SQL
This is working for me now.
I can guarantee the number of columns and type of columns returned by the stored procedure are the same as in this table, simply because I return the same table from the stored procedure.
Перейти к контенту
Дизайнер обнаружил ошибку при загрузке определения таблицы?
У меня проблема с Visual Studio 2012 Ultimate.
Я вставил «Базу данных сервера Sql», и когда я пытаюсь «Добавить новую таблицу» через некоторое время, я получаю эту проблему.
Дизайнер обнаружил ошибку при загрузке определения таблицы
и две ошибки в «Списке ошибок»
-
Не удалось получить схему целевой базы данных. Не удалось повторно подключиться к базе данных.
-
Не удалось получить информацию о схеме из базы данных (LocalDB)v11.0.C:USERSSRDJANDOCUMENTSVISUAL STUDIO 2012WEBSITESWEBSITE3APP_DATADATABASE.MDF.
Закройте все открытые редакторы для этой базы данных, проверьте подключение к этой базе данных и обновите базу данных в обозревателе серверов. C:USERSSRDJANDOCUMENTSVISUAL STUDIO 2012WEBSITESWEBSITE3APP_DATADATABASE.MDF
Что я могу сделать, чтобы это заработало?
У меня была такая же проблема, но она решается, когда я использую «Обозреватель объектов SQL Server» вместо «обозреватель сервера» для добавления новых таблиц.
Создан 26 июн.
Убедитесь, что логин, который вы используете для подключения к базе данных в VS, имеет необходимые разрешения для создания таблиц.
ответ дан 12 мар ’13, в 09:03
Используйте «Обозреватель объектов SQL Server» вместо «обозреватель серверов», но закройте все подключения к базе данных, которые отображаются в обозревателе серверов.
Из проводника объектов SQL-сервера добавьте локальный SQL-сервер, и все работает как шарм.
Создан 02 янв.
Я знаю, что это действительно старая проблема, но на случай, если кому-то еще не повезло с ответами выше: у меня сработало простое отключение от сервера и повторное подключение.
ответ дан 02 апр.
Следуй этим шагам:
- Щелкните правой кнопкой мыши по подключению данных
- Нажмите «Добавить подключение».
- Выберите источник данных
- Перейдите к существующему файлу базы данных в вашей системе (например,
C:UserspcnameDocumentsdatabasefile.mdf
) - Нажмите «Проверить соединение».
- Если подключение прошло успешно, проблема должна быть решена, в противном случае попробуйте после перезапуска Visual Studio.
ответ дан 19 мар ’15, в 15:03
Перезапуск Visual Studio исправил это для меня. У меня он был открыт месяц или больше.
Возможно, некоторым людям стоит сначала попробовать этот простой шаг, прежде чем углубляться.
ответ дан 24 авг.
Для решения этой проблемы выполните следующие шаги:
-
Перейдите в Инструменты VS → Параметры → Инструменты базы данных → Дизайнер запросов и представлений.
-
Установите «Отменить длительный запрос» через 240 секунд.
-
Удалите все подключения в «Проводнике SQL Server» и «Обозревателе объектов SQL Server» (этот шаг очень важен).
-
Снова откройте VS и заново создайте свои соединения.
ответ дан 24 авг.
У меня была такая же проблема с Visual Studio 2013 из-за неправильного имени базы данных.
Чтобы решить эту проблему, перейдите в обозреватель серверов → щелкните правой кнопкой мыши свою базу данных → Изменить соединение… → в разделе «Подключиться к имени базы данных:» выберите правильное имя базы данных.
ответ дан 24 авг.
Если вы не используете встроенную безопасность (проверку подлинности Windows), убедитесь, что у пользователя базы данных есть роль «владелец базы данных».
ответ дан 24 авг.
Не тот ответ, который вы ищете? Просмотрите другие вопросы с метками
c#
visual-studio
visual-studio-2012
or задайте свой вопрос.
I just added SSDT to my Visual Studio 2010 Ultimate running on Windows 7 Pro 64 bits.
I added a SQL Server 2008 database to a SQL Server 2012 Developer Edition 64 bits.
I connected SSDT to my SQL 2012 Instance and opened my database.
When I right click on any table and select «View Designer» it takes a while to show me the TSQL panel and a while later SSDT shows an error message saying
«Problem Loading
The designer encountered an error while loading the table definition».
VS error window has two entries:
Error 1 The target database schema could not be retrieved. Unable to reconnect to database. RFQ 0 0
Error 2 Failed to obtain schema information from database MYRFQ.RFQ.
Please close any open editors for this database, check your connection to this database, and refresh the database in Server Explorer. RFQ 0 0
If I conncect to SQL Server and the database with SQL Server Management Studio (the same Windows User) I am able to work the table definition without any problem.
I was able to edit a table definition once (without changing anything).
If I try to add a new table, I receive the same eror message.
Can you help?
Thanks
I just added SSDT to my Visual Studio 2010 Ultimate running on Windows 7 Pro 64 bits.
I added a SQL Server 2008 database to a SQL Server 2012 Developer Edition 64 bits.
I connected SSDT to my SQL 2012 Instance and opened my database.
When I right click on any table and select «View Designer» it takes a while to show me the TSQL panel and a while later SSDT shows an error message saying
«Problem Loading
The designer encountered an error while loading the table definition».
VS error window has two entries:
Error 1 The target database schema could not be retrieved. Unable to reconnect to database. RFQ 0 0
Error 2 Failed to obtain schema information from database MYRFQ.RFQ.
Please close any open editors for this database, check your connection to this database, and refresh the database in Server Explorer. RFQ 0 0
If I conncect to SQL Server and the database with SQL Server Management Studio (the same Windows User) I am able to work the table definition without any problem.
I was able to edit a table definition once (without changing anything).
If I try to add a new table, I receive the same eror message.
Can you help?
Thanks
- Remove From My Forums
Error creating table in Visual Studio 2015 — SQL Server LocalDB
-
Question
-
Hi,
I am currently trying to create a project in C++ in Visual Studio 2015 community. I have created a localDB instance of SQL server, which I am connected too. However, when I go to create a table, I get the following error message:
«Problem Loading. The designed encountered an error while loading the table definition».
I have tried searching various forums to see if anyone else has has this problem, but the general solutions have just been to restart Visual Studio, which doesn’t work for me.
Could anyone help with this?
Thanks,
Dan
Answers
-
Hi Dan,
This issue is usually related to an access issue. Please make sure that the user account you are using to access the database has necessary permissions to create tables. It requires CREATE TABLE permission in the database and ALTER permission
on the schema in which the table is being created. For more details, please review thisarticle.
In addition, if you have sufficient permission, please disconnect SQL Server LocalDB and use «SQL Server Object Explorer» to reconnect it in Visual Studio, then check if you can create table successfully. For more details, please review this similar
thread.
Thanks,
Lydia Zhang
Lydia Zhang
TechNet Community Support- Proposed as answer by
Monday, August 3, 2015 5:26 AM
- Marked as answer by
Lydia ZhangMicrosoft contingent staff
Tuesday, August 4, 2015 10:00 AM
- Proposed as answer by
- Remove From My Forums
Error creating table in Visual Studio 2015 — SQL Server LocalDB
-
Question
-
Hi,
I am currently trying to create a project in C++ in Visual Studio 2015 community. I have created a localDB instance of SQL server, which I am connected too. However, when I go to create a table, I get the following error message:
«Problem Loading. The designed encountered an error while loading the table definition».
I have tried searching various forums to see if anyone else has has this problem, but the general solutions have just been to restart Visual Studio, which doesn’t work for me.
Could anyone help with this?
Thanks,
Dan
Answers
-
Hi Dan,
This issue is usually related to an access issue. Please make sure that the user account you are using to access the database has necessary permissions to create tables. It requires CREATE TABLE permission in the database and ALTER permission
on the schema in which the table is being created. For more details, please review thisarticle.
In addition, if you have sufficient permission, please disconnect SQL Server LocalDB and use «SQL Server Object Explorer» to reconnect it in Visual Studio, then check if you can create table successfully. For more details, please review this similar
thread.
Thanks,
Lydia Zhang
Lydia Zhang
TechNet Community Support- Proposed as answer by
Monday, August 3, 2015 5:26 AM
- Marked as answer by
Lydia ZhangMicrosoft contingent staff
Tuesday, August 4, 2015 10:00 AM
- Proposed as answer by
2 / 2 / 1 Регистрация: 25.12.2016 Сообщений: 115 |
|
1 |
|
09.01.2017, 08:48. Показов 14832. Ответов 11
При создании таблицы вышла ошибка: Что сделано не правильно. Миниатюры
0 |
Programming Эксперт 94731 / 64177 / 26122 Регистрация: 12.04.2006 Сообщений: 116,782 |
09.01.2017, 08:48 |
11 |
Модератор 4206 / 3046 / 581 Регистрация: 21.01.2011 Сообщений: 13,189 |
|
09.01.2017, 09:48 |
2 |
Что сделано не правильно Как минимум, у тебя столбец объявлен как PRIMARY, т.е. PK и при этом может иметь значение NULL. Что неверно по определению PK.
0 |
2 / 2 / 1 Регистрация: 25.12.2016 Сообщений: 115 |
|
09.01.2017, 11:55 [ТС] |
3 |
Да, тут была ошибка, стоит галочка на null, что, действительно не должно быть. Интересно, а что означает галочка на A_l, нужна ли она там в строке где ставится id?
0 |
Модератор 4206 / 3046 / 581 Регистрация: 21.01.2011 Сообщений: 13,189 |
|
09.01.2017, 12:35 |
4 |
что означает галочка на A_l, нужна ли она там в строке где ставится id Полагаю, что AUTO_INCREMENT. А нужна или нет зависит от того, каким способом ты формируешь значение id.
0 |
2 / 2 / 1 Регистрация: 25.12.2016 Сообщений: 115 |
|
09.01.2017, 12:38 [ТС] |
5 |
Но ведь у меня в индексе уже указано PRIMARY что и означает AUTO_INCREMENT, или PRIMARY означает что-то другое.
0 |
Модератор 4206 / 3046 / 581 Регистрация: 21.01.2011 Сообщений: 13,189 |
|
09.01.2017, 13:19 |
6 |
уже указано PRIMARY что и означает AUTO_INCREMENT Нет.
1 |
410 / 364 / 142 Регистрация: 09.04.2011 Сообщений: 1,041 |
|
09.01.2017, 14:28 |
7 |
FK (Foreign Key),то он ссылается на PK дочерней таблицы. Это не так: SZV, строго говоря, ваш вопрос к MySQL не относится, т.к. он не умеет ругаться на русском
0 |
Модератор 4206 / 3046 / 581 Регистрация: 21.01.2011 Сообщений: 13,189 |
|
09.01.2017, 14:57 |
8 |
1. FK ссылается на родительскую Ну конечно это моя описка.
2. не обязательно PK, достаточно unique Я в курсе, но все таки чаще на PK. Кроме того, я считаю, что в целях обучения для человека с низким уровнем знаний перечислять все возможные варианты нет смысла — все равно не уляжется.
0 |
2 / 2 / 1 Регистрация: 25.12.2016 Сообщений: 115 |
|
09.01.2017, 15:28 [ТС] |
9 |
Ребята вы так много и хорошо сказали, что я не уловил главное. Если мне достаточно поставить галочку на A_l для AUTO_INCREMENT то тогда нет ни какого смысла указывать индекс PRIMARY? или все таки указывать.
0 |
Модератор 4206 / 3046 / 581 Регистрация: 21.01.2011 Сообщений: 13,189 |
|
09.01.2017, 15:41 |
10 |
я не уловил главное Еще раз: PRIMARY KEY и AUTO_INCREMENT — это перпендикулярные вещи. PK может не быть A_I и наоборот, A_I может не быть PK.
0 |
2 / 2 / 1 Регистрация: 25.12.2016 Сообщений: 115 |
|
09.01.2017, 16:19 [ТС] |
11 |
Ладно сделаю вид, что понял. Сам для себя уяснил что суррогатные ключи помогают в работе реальным ключам, т.е указав PRIMARY KEY галочку на A_l лучше все таки поставить (это и будет суррогатный ключ), даже боюсь спрашивать о том, что если я буду использовать только суррогатный ключ: будет ли id отображаться по порядку? Сам изучаю php даже не первый год, а первую неделю, так что… все очень интересно.
0 |
Модератор 4206 / 3046 / 581 Регистрация: 21.01.2011 Сообщений: 13,189 |
|
09.01.2017, 16:36 |
12 |
будет ли id отображаться по порядку Нет. В общем случае отсутствие «дырок» в нумерации никто не гарантировал.
0 |
Как исправить ошибку определения таблицы не найдено?
Кто-нибудь знает, почему я получаю сообщение об ошибке ниже? Я начинаю изучать мир развития Facebook, и я не могу найти простой ответ.
код:
$twitterUrl ="http://query.yahooapis.com/v1/public/yql?q=";
$twitterUrl .= urlencode("select * from twitter.status where id='jzm'");
$twitterUrl .="&format=json";
$twitterFeed = file_get_contents($twitterUrl, true);
$twitterFeed = json_decode($twitterFeed);
print_r($twitterFeed);
Полученная ошибка:
stdClass Object ( [error] => stdClass Object ( [lang] => en-US [description] => No definition found for Table twitter.status ) )
13 дек. 2011, в 07:59
Поделиться
Источник
Попробуйте добавить &env=http://datatables.org/alltables.env
к вашему запросу.
$twitterUrl ="http://query.yahooapis.com/v1/public/yql?q=";
$twitterUrl .= urlencode("SELECT * FROM twitter.status WHERE id='jzm'");
$twitterUrl .="&format=json";
$twitterUrl .="&env=http://datatables.org/alltables.env";
$twitterFeed = file_get_contents($twitterUrl, true);
$twitterFeed = json_decode($twitterFeed);
print_r($twitterFeed);
Lawrence Cherone
13 дек. 2011, в 05:29
Поделиться
Проблема заключается в том, что вы пытаетесь загрузить открытую таблицу, которую Yahoo API не распознает по умолчанию.
Итак, вы можете префикс вашего запроса по следующему запросу:
USE 'http://www.datatables.org/twitter/twitter.status.xml' AS twitter.status;
Загрузите настраиваемую таблицу сообщества, после чего вы сможете ее использовать.
Общий синтаксис:
USE "http://myserver.com/mytables.xml" AS mytable;
SELECT * FROM mytable WHERE...
Подробнее: Вызов определения таблицы открытых данных в YQL
kenorb
22 нояб. 2014, в 21:04
Поделиться
Ещё вопросы
- 0Как я могу получить URL входного файла?
- 0Как передать структуру функции в C ++
- 0C ++ == перегрузка операторов (имплементации)
- 1Узнайте, видна ли линейка в PowerPoint с помощью VSTO
- 0Определить круги с кругами
- 0Ошибка C ++ LNK2019
- 0используйте change () для обнаружения изменений значения атрибута
- 0Я пытаюсь запустить код C ++, который использует библиотеку Boost
- 1Копии файлов, скопированных в APK META-INF / android.arch.lifecycle_runtime.version
- 1Преобразование даты и времени в формат отметки времени java «2019-02-21T14: 10: 18.161 + 0000»
- 0Экспресс и Джейд: цикл и создание динамических идентификаторов
- 1читать файлы и папки без использования вложенного цикла
- 0Cakephp Auth-> user () null
- 0JQuery Colorbox IE7 проблема с встроенным AJAX загруженным контентом
- 0Получить идентификатор отмеченных флажков в списке одним нажатием кнопки
- 0jQuery UI Sortable — Странное поведение — элементы, падающие с вершины окна при движении
- 0Путаница с машинно-зависимыми значениями указателей
- 1Динамический запрос crm rest builder для отношения многих ко многим
- 1Использование универсального типа ‘System.Collections.Generic.IEnumerable <T> требует аргументов 1 типа
- 1ReactiveUI: Как отменить Observable от ReactiveCommand?
- 0наследование бриллиантов — Передача объекта класса листа в качестве параметра вместо корневого класса
- 1В модуле sklearn.preprocessing я получаю ValueError: найденный массив с 0 функциями
- 0SQL Query — Счет и сумма — Спортивная статистика
- 0JPlayer не воспроизводит видео в IE
- 0Рабочие иконки шеврона для jQuery UI Accordion
- 0PHP HTTP Почтовый сервер — не могу получить почтовые запросы
- 0Создана форма регистрации и входа с php и mysql, и ошибка не работает в форме регистрации
- 1Как обеспечить входные данные времени выполнения в тестовых случаях Python
- 0Использование $ scope. $ Destroy () после удаления директивы из dom
- 1Как я могу инициализировать мой RelativeLayoutButton вне метода onCreate?
- 1Как заставить «вращающуюся анимацию» менять скорость наугад. Непоседа спиннер анимация.
- 1Как открыть ссылки в новом окне браузера с помощью ie 11
- 1Уведомление не работает .. вечно жду нить Java
- 0Как правильно выровнять то, что изменяет размеры в определенном месте
- 1Android XML динамически устанавливает высоту полей
- 0Получить текст из строки столбца
- 0Как получить значение и идентификатор из текстовой области, которая использует строку базы данных в качестве идентификатора
- 0Есть ли разница между этими условными присваиваниями, которые обрабатывают значения по умолчанию?
- 0Angularjs Многомерный массив и два относительных поля выбора
- 1ExoPlayer не воспроизводит видео из необработанной папки в Kitkat
- 0Почему файлы, загруженные с помощью createUploadUrl (), заполняют мое хранилище данных и хранилище больших двоичных объектов и как их удалить?
- 1выбрать отдельные строки в мультииндексном панде данных [дубликаты]
- 0Как создать пользовательский тип данных уровня байтов?
- 0MySQL таблицы не отражает новые изменения
- 0Ошибки codeigniter form_validation на flashdata не отображаются
- 0Как связать файл статической библиотеки на машине Linux
- 1Angular 2: проверка чисел с помощью Regex
- 1Как объединить значения из групп в столбце в Python
- 0Класс для подключения к БД, как использовать
- 0Как изменить строки и столбцы таблицы на основе значения параметра выбора идентификатора?
#c# #sql-server
#c# #sql-сервер
Вопрос:
Я попробовал следующее решение, чтобы попытаться выполнить вставку / обновление таблицы данных в sql server, но возникли некоторые проблемы. http://www.aspsnippets.com/Articles/SqlBulkCopy—Bulk-Insert-records-and-Update-existing-rows-if-record-exists-using-C-and-VBNet.aspx
- Я создал таблицу: Люди
CREATE TABLE [dbo].[People](
[ID] [varchar](10) NOT NULL,
[Name] [varchar](50) NULL,
[Email] [varchar](50) NULL,
[Country] [varchar](50) NULL
) ON [PRIMARY]
- Создайте определяемый пользователем тип таблицы: PeopleType
CREATE TYPE [dbo].[PeopleType] AS TABLE(
[ID] [varchar](10) NOT NULL,
[Name][varchar](50) NULL,
[Email][varchar](50) NULL
)
- Я пытаюсь использовать этот тип таблицы для создания процедуры: Update_People
CREATE PROCEDURE [dbo].[Update_People]
@tblpeople PeopleType READONLY
AS
BEGIN
SET NOCOUNT ON;
MERGE INTO People p1
USING @tblpeople p2
ON p1.ID=p2.ID
WHEN MATCHED THEN
UPDATE SET p1.Name = p2.Name
,p1.Email = p2.Email
WHEN NOT MATCHED THEN
INSERT VALUES(p2.ID, p2.Name, p2.Email);
END
но когда я пытаюсь использовать определяемый пользователем тип таблицы для создания процедуры, произошла ошибка SQL server.
«Имя столбца или количество предоставленных значений не соответствует определению таблицы».
Я сделал что-то не так или что-то пропустил?
Комментарии:
1.
INSERT VALUES(p2.ID, p2.Name, p2.Email);
где находится Country?2. Я просто хочу вставить идентификатор, имя, адрес электронной почты в таблицу People, а не во все столбцы. Поэтому я определил только ID, Name, Email как определяемый пользователем тип таблицы.
3. Попробуйте
INSERT VALUES(p2.ID, p2.Name, p2.Email, DEFAULT)
Ответ №1:
Измените свой Insert
оператор на это, если вы не хотите добавлять страны:
INSERT INTO People(Id, Email, Name) VALUES(p2.ID, p2.Name, p2.Email);
Причина, по которой вы получаете ошибку, заключается в том, что вы не указываете, какие столбцы использовать Insert
, оператор ожидает 4, поскольку 4 определены в таблице. Но вы предоставляете только 3.
Другой вариант — добавить свойство Country к определяемому пользователем типу и добавить страну с помощью процедуры:
CREATE TYPE [dbo].[PeopleType] AS TABLE(
[ID] [varchar](10) NOT NULL,
[Name][varchar](50) NULL,
[Email][varchar](50) NULL,
[Country][varchar](50) NULL
)
INSERT VALUES(p2.ID, p2.Name, p2.Email, p2.Country);
РЕДАКТИРОВАТЬ: я не уверен в синтаксисе, поскольку я давно этим не пользовался, но может быть, вам нужно только указать имена столбцов, подобные этому:
INSERT (Id, Email, Name) VALUES(p2.ID, p2.Name, p2.Email);
Комментарии:
1. Нет проблем, рад помочь