Размер строки Максимума SQL Server

Да, вы можете это сделать.

Сохраняет ли он только ссылку, а также обновляет компанию с именем = null?

По умолчанию cascade, вот так, Hibernate ничего не сделает. Таким образом, ответ таков: он сохраняет только внешний ключ.

Самый действительный (для JPA) подход использует session.load(Company.class, 1). Он возвращает прокси без запроса в базу данных. Но, конечно, для этого вам нужно иметь сеанс.

11
задан Mark Harrison 19 August 2008 в 22:36
поделиться

6 ответов

В SQL 2000 предел строки является 8K байтами, который является тем же размером как страница в памяти.

[Править]

В 2005 размер страницы - тот же (8K), но база данных использует указатели на строке на странице для указания на другие страницы, которые содержат более крупные поля. Это позволяет 2005 преодолевать 8K ограничение размера строки.

10
ответ дан 3 December 2019 в 05:14
поделиться

Проблема, которая, кажется, ловит много людей, состоит в том, что можно составить таблицу, которая по определению содержала бы больше, чем 8K данных, и это примет его очень хорошо. И таблица будет хорошо работать, вплоть до точки, Вы на самом деле пытаетесь вставить больше, чем 8K данных в таблицу.

Так, скажем, Вы составляете таблицу с целочисленным полем для первичного ключа и 10 varchar (1000) поля. Таблица хорошо работала бы большую часть времени, как количество раз Вы заполните все 10 из своих varchar (1000), поля были бы очень немногими. Howerver, в даже, что Вы пытались поместить 1 000 символов в каждое из Ваших полей, оно даст Вам ошибку, упомянутую в этом вопросе.

7
ответ дан 3 December 2019 в 05:14
поделиться

Это сообщение делает справедливое задание при попытке объяснить это (в контексте SQL 2005):

http://www.consortioservices.com/Blog/2008/02/28/MaximumRowSizeInSQLServer2005ToTheLimit.aspx

3
ответ дан 3 December 2019 в 05:14
поделиться

Это раньше было проблемой в SQL 2000, но я думал, что это было зафиксировано в 2005.

0
ответ дан 3 December 2019 в 05:14
поделиться

8 094 байта.

При списке еще некоторой информации о том, что Вы делаете, она могла бы помочь нам выяснить фактическую причину.

0
ответ дан 3 December 2019 в 05:14
поделиться

К вашему сведению, выполнение этой команды SQL в вашей БД может решить проблему, если она вызвана пространством, которое требует для восстановления после удаления столбцов переменной длины:

DBCC CLEANTABLE (0,[dbo.TableName])

См .: http://msdn.microsoft.com/en-us/library/ms174418.aspx

2
ответ дан 3 December 2019 в 05:14
поделиться
Другие вопросы по тегам:

Похожие вопросы: