Другие ответы уже показывают проблему, но я хотел бы отметить, что, используя синтаксис VLA, можно передать фактический размер массива функции. Также стоит отметить, что циклы могут быть ограничены только одной половиной «матрицы»:
#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>
bool is_symmetric(size_t n, int matrix[n][n])
{
for(size_t i = 0; i < n; ++i) {
for(size_t j = 0; j < i; ++j) {
// ^^^^^
if (matrix[i][j] != matrix[j][i]) {
return false;
}
}
}
return true;
}
int main(void) {
int square_matrix[][4] = {
{1,2,3,4}
,{2,2,5,6}
,{3,5,3,7}
,{4,6,7,4}
};
if( is_symmetric(4, square_matrix) ) {
puts("The matrix is symmetric");
} else {
puts("The matrix is not symmetric");
}
return 0;
}
Эта ситуация сделает Вашу полную структуру данных очень трудно для понимания. Если нет отношений между значениями, то повредите отношения.
Существуют способы обойти это, чтобы сделать то, что Вы ищете, но обычно это находится в распределенной среде и не сделано из-за того, что, кажется, изменение модели данных.
Затем не больше непосредственные отношения.
Просто повредите ограничение PK.
Эта статья от SQL Server Books Online обсуждает использование метода DBCC CHECKIDENT для обновления семени идентификационных данных таблицы.
От той статьи:
Этот пример вызывает текущее значение идентификационных данных в таблице заданий к значению 30.
USE pubs
GO
DBCC CHECKIDENT (jobs, RESEED, 30)
GO
Я изучил бы OUTPUT INTO
функция, если Вы используете SQL Server 2005 или больше. Это позволило бы Вам вставлять в Вашу первичную таблицу и брать идентификаторы, присвоенные в то время создать строки во вторичной таблице.
Я предполагаю, что существует осуществленное ограничение внешнего ключа - потому что это было бы единственной причиной, необходимо будет сделать это во-первых.
Как Вы планируете подхождение их позже? Я не поместил бы записи во вторую таблицу без записи в первом, именно поэтому она настраивается в отношениях внешнего ключа - к stio такое действие. Почему Вы не хотите вставлять записи в первую таблицу так или иначе? Если мы знали больше о типе приложения и почему это необходимо, мы смогли вести Вас к решению.
это могло бы помочь
НАБОР IDENTITY_INSERT [database_name. [schema_name].] таблица {НА | ПРОЧЬ}
http://msdn.microsoft.com/en-us/library/aa259221 (SQL.80) .aspx
Это позволяет явным значениям быть вставленными в столбец идентификационных данных таблицы.