powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / Microsoft Releases SQL Server 2012
25 сообщений из 53, страница 2 из 3
Microsoft Releases SQL Server 2012
    #37703161
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Отличное описание.
What if we had simply extended ODBC to support building a federated database out of
individually reusable components? What if we had extended ODBC to support a disconnected
programming model? What if we had extended ODBC to work over XML? What if we made ODBC
work with CLR Objects?

The answer is; it wouldn't be ODBC. ODBC (which stands for Open DataBase Connectivity) was
designed for a specific purpose; to be a common Call Level Interface (CLI) to a relational
database.
Не будь этот пост таким древним, я бы не удержался и запостил туда коммент в стиле "И чо?
Что за маниакальное стремление делать API для всех? Гордыня явно мешает сделать API только
для одной СУБД, но хорошее, поэтому плодятся универсальные ублюдки, толком не совместимые
ни с кем."
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Microsoft Releases SQL Server 2012
    #37703179
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovЧто за маниакальное стремление делать API для всех? Гордыня явно мешает сделать API только
для одной СУБД, но хорошее, поэтому плодятся универсальные ублюдки, толком не совместимые
ни с кем."


API, он не для СУБД, а для разработчиков, использующих оных. И последним, в большинстве случаев наплевать, как оно там устроено в самой СУБД и какой у ней "нативное апи". Им, разработчикам желательно иметь единообразный "механизм доступа" к любым данным, будь то текстовый файл, или Oraclе. Мне казалось это очевидным.
...
Рейтинг: 0 / 0
Microsoft Releases SQL Server 2012
    #37703208
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pkarklinИм, разработчикам желательно иметь единообразный "механизм доступа" к любым данным, будь
то текстовый файл, или Oraclе. Мне казалось это очевидным.

Мне не менее очевидной кажется утопичность этой задачи. Ну не лезет тот же Оракловский
NUMBER с его 38-ю значащими цифрами в variant.

И даже в поддержке языка SQL MS настойчиво отказывается унифицироваться с "чужим" ANSI
стандартом. Т.е. они целенаправленно затрудняют миграцию на любую другую СУБД. На этом
фоне "универсальные" API выглядят как минимум лицемерно.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Microsoft Releases SQL Server 2012
    #37703261
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,

авторМне не менее очевидной кажется утопичность этой задачи.

Ты не поверишь. Эта задача решена. И плодами ее решения пользуется туева хуча разработчиков, указывая в строке подключения ADOConnection нужного провайдера и получая набор данных из любого, к чему есть ODBC драйвер или OLEDB провайдер.

авторМне не менее очевидной кажется утопичность этой задачи. Ну не лезет тот же Оракловский
NUMBER с его 38-ю значащими цифрами в variant.

У всех (MS SQL), значит лезет (numeric(38, 0)), а у Oracle не лезет?

авторИ даже в поддержке языка SQL MS настойчиво отказывается унифицироваться с "чужим" ANSI
стандартом. Т.е. они целенаправленно затрудняют миграцию на любую другую СУБД.

Например?

авторНа этом фоне "универсальные" API выглядят как минимум лицемерно.

Универсальные АПИ, как раз и хороши тем, что провайдеров разрабатывают сами производители источников и разработчику для ADORecordset.Open в режиме adTable и SQL то знать не надо. :)
...
Рейтинг: 0 / 0
Microsoft Releases SQL Server 2012
    #37703323
max_partitions
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
pkarklin,

По ссылке:
Scalability and Performance Enhancements (Database Engine)
В разделе Scalability and Performance Enhancements (Database Engine) указано, что:
Scalability and Performance Enhancements (Database Engine)SQL Server 2012 supports up to 15,000 partitions by default. In earlier versions, the number of partitions was limited to 1,000 by default.
какое максимальное кол-во партиций для таблицы?
В Oracle 1024K-1 (11.2)
...
Рейтинг: 0 / 0
Microsoft Releases SQL Server 2012
    #37703346
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
max_partitions,

15 000 - это и есть максимум. Вам на практике приходилось иметь их больше?
...
Рейтинг: 0 / 0
Microsoft Releases SQL Server 2012
    #37703367
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
max_partitions,

TOP кляуза уже появилась в Oracle? Чтоб не заниматься извратами вида:

Код: plsql
1.
2.
3.
4.
5.
6.
select name, price
  from (
    select name, price, row_number() over (order by price) r
      from items
  )
where r between 1 and 5; 
...
Рейтинг: 0 / 0
Microsoft Releases SQL Server 2012
    #37703406
Yo.!
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
pkarklin,

а мсскл вернули звездочку, что бы не писать многокиллометровые left outer join ? :P
а как там поживает мегобаг с update по джоинутым таблицам, подправили или все так же рандомное значение берут ?
...
Рейтинг: 0 / 0
Microsoft Releases SQL Server 2012
    #37703417
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Yo.!а мсскл вернули звездочку, что бы не писать многокиллометровые left outer join ?

Не по стандарту! Тут меня даже Дима поддержит. :)


Yo.!а как там поживает мегобаг с update по джоинутым таблицам, подправили или все так же рандомное значение берут ?

Исчё давно, MERGE:

If UPDATE is specified in the <merge_matched> clause, and more than one row of <table_source>matches a row in target_table based on <merge_search_condition>, SQL Server returns an error. The MERGE statement cannot update the same row more than once, or update and delete the same row.
...
Рейтинг: 0 / 0
Microsoft Releases SQL Server 2012
    #37703429
max_partitions
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
pkarklin,

pkarklin15 000 - это и есть максимум. Вам на практике приходилось иметь их больше?

Понятно, смутила фраза by default.
Было свыше 40000, но они возникли из-за некорректных данных, и мы избавились от лишних партиций.
В моей практике в таком количестве не было необходимости, но я не исключаю, что такие задачи возможны.

pkarklinTOP кляуза уже появилась в Oracle? Чтоб не заниматься извратами вида

Как мне известно, нет. Возможно, в версии 12, но сомневаюсь.

Я изучил список новых фич SQL Server, но мне он показался слишком малым, по сравнению с тем же Oracle.
Более детального списка новых фич нет?
Вот, чтобы далеко не ходить, 11.2.0.1 New Features Guide
...
Рейтинг: 0 / 0
Microsoft Releases SQL Server 2012
    #37703434
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
max_partitions,

Ну, я как-то никогда не задавался вопросом сравнения новых фич по количеству. В фичах я ищу то, чего мне явно не хватало или то, что мне облегчит жизнь.
...
Рейтинг: 0 / 0
Microsoft Releases SQL Server 2012
    #37703439
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Yo.!хи-хи, а ведь я лет семь назад говорил, что как только функционал мсскл начнет подбираться к оракловой девятке

Вот спасибо max_partitions с его ...

11.2.0.1 New Features Guide1.5.2.1 E-mail Notification

Oracle Database 11g Release 2 (11.2) users can now get e-mail notifications on any job activity.

This feature improves efficiency by enabling users to be notified of any job activity that is of interest to them without having to constantly monitor the job .

Мдя... тяжела бы судьбинушка админа Oracle до этого релиза...
...
Рейтинг: 0 / 0
Microsoft Releases SQL Server 2012
    #37703442
Yo.!
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
pkarklinИсчё давно, MERGE:

я про update statement спрашивал. как я понимаю там ничего не поменялось. и эти люди обвиняют в нелогичности оракл
тут играем (update берет с потолка), тут не играем (merge дает еррор), а тут мы рыбу заворачивали !
...
Рейтинг: 0 / 0
Microsoft Releases SQL Server 2012
    #37703447
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Yo.!я про update statement спрашивал. как я понимаю там ничего не поменялось.

Менять надо в мозгу проектировщика\разрабочика модели данных.
...
Рейтинг: 0 / 0
Microsoft Releases SQL Server 2012
    #37703469
max_partitions
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
max_partitions,
max_partitionsВозможно, в версии 12, но сомневаюсь.
http://oracleidentity.wordpress.com/category/oracle-database-12c-row-limiting-clause/

Все-таки, угрожают. Как бы и без этого жили и не испытывали не удобств. Но раз введут, то пусть.
...
Рейтинг: 0 / 0
Microsoft Releases SQL Server 2012
    #37703490
Фотография Ggg_old
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
млин, только не устраивайте снова ораклосрач..
...
Рейтинг: 0 / 0
Microsoft Releases SQL Server 2012
    #37703501
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pkarklinУ всех (MS SQL), значит лезет (numeric(38, 0)), а у Oracle не лезет?

Ткни пальцем, в какое место этого variant-а оно может влезть со всем своими 38-мя цифрами:
wtypes.h
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
/*
  * VARENUM usage key,
  *
  * * [V] - may appear in a VARIANT
  * * [T] - may appear in a TYPEDESC
  * * [P] - may appear in an OLE property set
  * * [S] - may appear in a Safe Array
  *
  *
  *  VT_EMPTY            [V]   [P]     nothing
  *  VT_NULL             [V]   [P]     SQL style Null
  *  VT_I2               [V][T][P][S]  2 byte signed int
  *  VT_I4               [V][T][P][S]  4 byte signed int
  *  VT_R4               [V][T][P][S]  4 byte real
  *  VT_R8               [V][T][P][S]  8 byte real
  *  VT_CY               [V][T][P][S]  currency
  *  VT_DATE             [V][T][P][S]  date
  *  VT_BSTR             [V][T][P][S]  OLE Automation string
  *  VT_DISPATCH         [V][T]   [S]  IDispatch *
  *  VT_ERROR            [V][T][P][S]  SCODE
  *  VT_BOOL             [V][T][P][S]  True=-1, False=0
  *  VT_VARIANT          [V][T][P][S]  VARIANT *
  *  VT_UNKNOWN          [V][T]   [S]  IUnknown *
  *  VT_DECIMAL          [V][T]   [S]  16 byte fixed point
  *  VT_RECORD           [V]   [P][S]  user defined type
  *  VT_I1               [V][T][P][s]  signed char
  *  VT_UI1              [V][T][P][S]  unsigned char
  *  VT_UI2              [V][T][P][S]  unsigned short
  *  VT_UI4              [V][T][P][S]  unsigned long
  *  VT_I8                  [T][P]     signed 64-bit int
  *  VT_UI8                 [T][P]     unsigned 64-bit int
  *  VT_INT              [V][T][P][S]  signed machine int
  *  VT_UINT             [V][T]   [S]  unsigned machine int
  *  VT_INT_PTR             [T]        signed machine register size width
  *  VT_UINT_PTR            [T]        unsigned machine register size width
  *  VT_VOID                [T]        C style void
  *  VT_HRESULT             [T]        Standard return type
  *  VT_PTR                 [T]        pointer type
  *  VT_SAFEARRAY           [T]        (use VT_ARRAY in VARIANT)
  *  VT_CARRAY              [T]        C style array
  *  VT_USERDEFINED         [T]        user defined type
  *  VT_LPSTR               [T][P]     null terminated string
  *  VT_LPWSTR              [T][P]     wide null terminated string
  *  VT_FILETIME               [P]     FILETIME
  *  VT_BLOB                   [P]     Length prefixed bytes
  *  VT_STREAM                 [P]     Name of the stream follows
  *  VT_STORAGE                [P]     Name of the storage follows
  *  VT_STREAMED_OBJECT        [P]     Stream contains an object
  *  VT_STORED_OBJECT          [P]     Storage contains an object
  *  VT_VERSIONED_STREAM       [P]     Stream with a GUID version
  *  VT_BLOB_OBJECT            [P]     Blob contains an object
  *  VT_CF                     [P]     Clipboard format
  *  VT_CLSID                  [P]     A Class ID
  *  VT_VECTOR                 [P]     simple counted array
  *  VT_ARRAY            [V]           SAFEARRAY*
  *  VT_BYREF            [V]           void* for local use
  *  VT_BSTR_BLOB                      Reserved for system use
  */



Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Microsoft Releases SQL Server 2012
    #37703508
max_partitions
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ggg_old,

Ggg_oldмлин, только не устраивайте снова ораклосрач..

Да все нормально. Раньше 13c эту фичу дальше экземпляров разработки все равно пускать нельзя будет. Делаем ставки, сколько будет зафиксировано багов :)
...
Рейтинг: 0 / 0
Microsoft Releases SQL Server 2012
    #37703596
locky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovpkarklinИм, разработчикам желательно иметь единообразный "механизм доступа" к любым данным, будь
то текстовый файл, или Oraclе. Мне казалось это очевидным.

Мне не менее очевидной кажется утопичность этой задачи. Ну не лезет тот же Оракловский
NUMBER с его 38-ю значащими цифрами в variant.

И даже в поддержке языка SQL MS настойчиво отказывается унифицироваться с "чужим" ANSI
стандартом. Т.е. они целенаправленно затрудняют миграцию на любую другую СУБД. На этом
фоне "универсальные" API выглядят как минимум лицемерно.

Из опыта: значительно проще было портировать оракл-приложения, написанные с ODBC, чем такие-же, но с OCI
Хотя и OCI то от ODBC не слишком и отличалось.
...
Рейтинг: 0 / 0
Microsoft Releases SQL Server 2012
    #37703615
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,

Дима, Дима...

OLE DB uses standard OLE- and Windows-based data types, and uses DBTYPE as a type indicator. A type indicator denotes the data type of a piece of memory. A type indicator is used to describe data types in metadata, method calls, and data and parameter binding.


DBTYPE_NUMERIC

The NUMERIC typedef structure is an exact numeric value with a fixed precision and fixed scale. The NUMERIC typedef structure is defined as follows:

Код: plaintext
1.
2.
3.
4.
5.
6.
typedef struct tagNUMERIC {
    BYTE precision;
    BYTE scale;
    BYTE sign;
    BYTE val[16];
} DB_NUMERIC;
...
Рейтинг: 0 / 0
Microsoft Releases SQL Server 2012
    #37703718
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lockyИз опыта: значительно проще было портировать оракл-приложения, написанные с
ODBC
Достаточно было в настройках сменить имя драйвера и параметры подключения?

[quot pkarklin]
Код: sql
1.
    BYTE val[16];


[quot]
А у Оракула значение NUMBER занимает 21 байт... Куда девать остальные 5?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Microsoft Releases SQL Server 2012
    #37703802
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,

Если терпения хватит разобрать пример: http://support.microsoft.com/kb/229884/en-us/
...
Рейтинг: 0 / 0
Microsoft Releases SQL Server 2012
    #37703860
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pkarklinЕсли терпения хватит разобрать пример
С таким примером главное не терпение, а выдержка. Не могу не процитировать:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
//the following code will move the data bytes of the DB_VARNUMERIC to a double
		double dValue = 0;
		BYTE hi, lo;
		double multiplier = 1;
		double adjust = 1;

		for( ULONG i = 0, j = 0 ; i < valbufferlen ; i++, j+=2 )
		{
			hi = lo = ( ( DB_VARNUMERIC * ) buffer )->val[ i ];

			lo <<= 4;
			lo >>= 4;

			dValue += ( ( ( ULONG ) lo ) * multiplier );

			multiplier *= 16;

			hi >>= 4;

			dValue += ( ( ( ULONG ) hi ) * multiplier );

			multiplier *= 16;
		}


Там точно должно быть 16, а не 10?..
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Microsoft Releases SQL Server 2012
    #37704005
locky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovlockyИз опыта: значительно проще было портировать оракл-приложения, написанные с
ODBC
Достаточно было в настройках сменить имя драйвера и параметры подключения?


Не так гладко, разумеется, но в целом - да.
"допиливание напильником" было достаточно рутинной задачей, требующей внимательности и усидчивости, но не более.

зы касается именно средств и методов доступа. Не нужно мне тут указывать "что,и select ... from dual start with... connect by... начинал работать? " :)
...
Рейтинг: 0 / 0
Microsoft Releases SQL Server 2012
    #37704078
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovТам точно должно быть 16, а не 10?..

Точно.
...
Рейтинг: 0 / 0
25 сообщений из 53, страница 2 из 3
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / Microsoft Releases SQL Server 2012
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]