Appears when errors have been encountered while you were trying to save a database diagram or selected tables. This dialog box lists the following: the objects that were successfully saved in the database, the objects that were not saved, and the errors that were encountered.
Returns to the diagram.
Saves the information shown in a text file in the project directory and displays a message box with the fully qualified file name of the text file. This file provides a record of the database changes that were successfully saved as well as the changes that could not be saved due to errors.
For more information about the errors that can occur, see:
If the error you want to troubleshoot does not appear in this list, see System errors for additional messages returned by Microsoft® SQL Server™.
Appears when your constraint expression contains an error.
[Microsoft][ODBC SQL Server Driver][SQL Server]The name '[column value]' is illegal in this context. Only constants, constant expressions, or variables allowed here. Column names are illegal.
A default value defined for a character column is not enclosed in single quotation marks (').
Enclose the value in single quotation marks in the database column's Default Value cell. and then save the table.
Appears when Microsoft® SQL Server™ runs out of resources while attempting to save selected tables or a database diagram.
[Microsoft][ODBC SQL Server Driver]Invalid cursor state.
There is insufficient space in your database or transaction log to complete the save process.
Check to see if the database or the transaction log is full. If so, increase the size of the database to accommodate the change. Check other system resources or contact your System Administrator.
For more information about increasing the size of your database, see "Expanding or Shrinking Databases" in SQL Server Books Online.
Appears when a new constraint has failed on existing data or your constraint expression contains an error. Compare the ODBC error text that appears in the Save Incomplete dialog box with the error text shown below to determine the appropriate solution.
[Microsoft][ODBC SQL Server Driver][SQL Server]Data exists in table '[table name]', database '[database name]', that violates CHECK constraint '[constraint name]' being added. ALTER command has been aborted.
[Microsoft][ODBC SQL Server Driver][SQL Server]Unable to create constraint. See previous errors.
Existing data does not match the check constraint.
Change the data (for example, by using Query Designer) to match the constraint. For details, see Query Designer.
-or-
Clear the Check existing data on creation check box in the Tables property page for the check constraint in question. For more information about disabling this property, see Checking Existing Data when Creating a Relationship.
-or-
Change the constraint expression in the Tables property page for the check constraint in question.
[Microsoft][ODBC SQL Server Driver][SQL Server]Invalid column '[column name]' specified in constraint definition.
[Microsoft][ODBC SQL Server Driver][SQL Server]Unable to create constraint. See previous errors.
The text value in the check constraint expression on the Tables property page is not enclosed in single quotation marks (').
-or-
A column that participates in the check constraint has been renamed. For example, if the original constraint had the expression (cityname = 'Paris'
) and you renamed the column to city
, you would see the same error except that 'cityname'
would be the invalid column shown in the error message.
Correct the expression and save the table.
[Microsoft][ODBC SQL Server Driver][SQL Server]Line [line number]: Incorrect syntax near '[operator]'.
The expression defined for the check constraint (in the Tables property page) or the default constraint (in the Default Value cell) is not valid SQL syntax. For example, the check constraint expression 'city equals Paris'
was typed instead of 'city = Paris'
.
Correct the expression and save the table.
For more information about constraints, see Constraints.
Appears when a new index has failed on existing data.
[Microsoft][ODBC SQL Server Driver][SQL Server]Create unique index aborted on duplicate key. Primary key is '[primary key data]'
[Microsoft][ODBC SQL Server Driver][SQL Server]Unable to create constraint. See previous errors.
A unique index was created in the Indexes/Keys property page but duplicate data exists in the database. The value after the phrase "Primary key is" is the first duplicate value that Microsoft® SQL Server™ found as it created the index.
Remove duplicate data from the database (for example, by using Query Designer). For more information, see Designing Queries.
-or-
Change the option in the Indexes/Keys property page to allow duplicate rows in the index.
For more information about creating unique indexes, see Creating a Unique Index.
Appears when a new constraint has failed on existing data.
[Microsoft][ODBC SQL Server Driver][SQL Server]Data exists in table '[table name]', database '[database name]', that violates FOREIGN KEY constraint '[constraint name]' being added. ALTER command has been aborted.
[Microsoft][ODBC SQL Server Driver][SQL Server]Unable to create constraint. See previous errors.
Existing data fails the foreign key constraint.
Change the data that fails the foreign key constraint by running a query to show all the foreign key values that do not match primary key values. For example, to find foreign key values in the job_id
column of the employee
table that do not match primary key values in the jobs
table, run a query with this SQL syntax:
SELECT employee.emp_id, employee.job_id
FROM employee LEFT OUTER JOIN jobs ON employee.job_id = jobs.job_id
WHERE (jobs.job_id IS NULL)
For more information, see Creating Queries.
-or-
Clear the Check existing data on creation check box in the Relationships property page. For more information, see Checking Existing Data when Creating a Relationship.
Appears when a new constraint has failed on existing data. Compare the ODBC error text that appears in the Save Incomplete dialog box with the two ODBC errors shown below to determine the appropriate solution.
[Microsoft][ODBC SQL Server Driver][SQL Server]The column [column name] in table Tmp_ [table name] may not be null.
A new database column has been added that doesn't allow null values and doesn't provide a default value. The table name in question appears after "Tmp_".
Change the column properties. Either select the Allow Nulls property or type a Default Value setting. For more information about setting properties for database columns, see Column Properties.
[Microsoft][ODBC SQL Server Driver][SQL Server]Attempt to insert the value NULL into column '[column name]', table '[database name] TMP_ [table name]'; column does not allow nulls. INSERT fails.
[Microsoft][ODBC SQL Server Driver][SQL Server]Command has been aborted.
The Allow Nulls property on an existing database column has been cleared, but the column has existing null values in it. The table name in question appears after "TMP_".
Go to the column and select the Allow Nulls property.
For more information about setting properties for database columns, see Column Properties.
Appears when your trigger text references a column that has been renamed, deleted, or assigned a different data type.
[Microsoft][ODBC SQL Server Driver][SQL Server]Invalid column name '[column name]'.
- Unable to preserve trigger '[trigger name]'.
A change to the table required the table to be recreated. When a table is recreated, the triggers attached to that table are automatically recreated as well.
The recommended solution depends on the type of change made to the column referenced by the trigger.
To preserve a trigger that references a renamed column
To preserve a trigger that references a deleted column
To preserve a trigger that references a column whose data type changed
CREATE TRIGGER
statement.For more information about triggers, see Triggers and your database documentation.
Two system errors can appear in the Save Incomplete dialog box when you exceed Microsoft® SQL Server™ limitations that are not controlled by the Database Designer.
[Microsoft][ODBC SQL Server Driver][SQL Server]Can't allocate space for object 'Syslogs' in database 'Guest' because the 'logsegment' segment is full. If you ran out of space in Syslogs, dump the transaction log. Otherwise, use ALTER DATABASE or sp_extendsegment to increase the size of the segment.
This error occurs because there is insufficient log space to complete the transaction.
Follow the recommendation in the message and delete the transaction log. (Typically this action will not entirely solve the problem.)
-or-
Increase the size of the database to accommodate the change. With large databases, changes that require the recreation of tables (for example, changing a column data type or size) may not be possible using the Database Designer. You may need to use methods of transferring data that don't require transactions, such as BCP.
[Microsoft][ODBC SQL Server Driver]Timeout expired.
The timeout can occur when you're updating the database with any Transact-SQL changes.
Try again later to save the diagram or selected tables.
-or-
Save a change script and apply it to the database at a later time. For more information, see Saving a Change Script.
-or-
Increase the SQL Query Time-out value and try to save the diagram or selected tables again.
To increase the SQL Query Time-out value
For additional information about Microsoft SQL Server errors, see SQL Server Books Online.