2015-12-01 5 views
3

При попытке создать схему базы данных, я получаю следующее сообщение об ошибке:Ошибка создания базы данных Диаграмма в SSMS 2012

Cannot insert the value NULL into column 'diagram_id', table 'MyDB.dbo.sysdiagrams'; column does 
not allow nulls. INSERT fails. 
The statement has been terminated. 
The 'sp_creatediagram' procedure attempted to return a status of NULL, which is not allowed. A status of 
0 will be returned instead. (.Net SqlClient Data Provider) 

Я использую SSMS 2012

база данных устанавливается на уровне совместимости в SQL Server 2012 (110)

@@ версии Microsoft SQL Server 2012 - 11.0.5343.0 (X64)

+3

http://dba.stackexchange.com/q/128769/1186 –

ответ

2

Ваша проблема является diagram_ID, когда таблица была создана, вероятно, Лоо рунец что-то вроде этого

CREATE TABLE <table_name> 
(diagram_ID INT NOT NULL PRIMARY KEY, 
    n..., 
) 

В основном это означает, что значение NULL не может быть вставлено в этот столбец из-за NOT NULL состояния. Так в заявлении вставки, как:

INSERT INTO <table_name> 
(Diagram_ID, n...,) 
VALUES 
(NULL, n...,) 

потерпит неудачу из-за NULL, вам нужно будет иметь значение там, как (так как я назвал это целое число):

INSERT INTO <table_name> 
(Diagram_ID, n...,) 
VALUES 
(23, n...,) 

Колонна также может быть столбец отступов, и в этом случае у вас нет контроля над тем, что можно вставить в таблицу.