Отображение на varchar и nvarchar в в спящем режиме

Просто использование безотносительно guid/uuid присутствует на целевой платформе, является лучшим. Делать правильно его трудно (давайте пойдем по магазинам ;)).

вероятность коллизии между любыми двумя идентификаторами от различных но хорошо выполняемых реализаций должна быть далеко за пределами любого разумного шанса случая во время жизни этой вселенной.

13
задан jzd 28 January 2011 в 19:26
поделиться

2 ответа

Я предполагаю, что вы говорите о NHibernate, а не Hibernate, потому что последний не использует nvarchar в своем диалекте SqlServer по умолчанию.

Способ решить вашу проблему - указать тип столбца как «AnsiString» в отображении:

<property name="Code" type="AnsiString"/>

Взгляните на этот пост для получения более подробной информации.

2
ответ дан 2 December 2019 в 01:11
поделиться

Можно написать несколько записей, которые должны отображаться в stderr вместо stdout .

Также можно перенаправить выходные данные отдельных частей, которые требуется скрыть.

-121--1527113-

ваш пакетный скрипт может выполнить сам

@echo off
if "%1" == "1" goto else
echo start
call %0 1 > nul
echo done
goto done
:else:
echo do stuff
:done:

stdout второго вызова, который принимает значение nul

-121--1527112-

Вероятно, вы уже решили это, но у меня была аналогичная проблема.

Я использую драйвер JDBC jTDS и решил проблему сканирования индекса, добавив

;sendStringParametersAsUnicode=false;prepareSQL=0

в конец последовательности соединения jTDS.

Вероятно, это не решило бы вашу проблему, потому что, делая это, jTDS будет использовать только VARCHAR (больше нет NVARCHAR).

Также, мне пришлось отключить подготовленный SQL, потому что Hibernate использует «like» вместо «=» при создании запросов и используя «like» в сочетании с переменной (SELECT... столбец WHERE LIKE @ var) вызывает сканирование индекса (MSSQL 2000).

8
ответ дан 2 December 2019 в 01:11
поделиться
Другие вопросы по тегам:

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