Да, при выполнении двоичной коммуникации между Java и приложениями C#, каждый - порядок байтов с обратным порядком байтов, и другой прямой порядок байтов (не обязательно на этом порядке). Я создал класс InputStream, который мог считать числа с другим порядком байтов, и он использовал смещение байта для работы.
иногда также, когда Вы хотите поместить 4 коротких замыкания в 4 байта длинного, это был бы случай использования смещения байта. Я думаю, что сделал это много лет назад...
Составной первичный ключ можно определить следующим образом:
DECLARE @MyTable TABLE
(
PersonID INT NOT NULL,
Person2ID INT NOT NULL,
Description NVARCHAR(100),
PRIMARY KEY (PersonID, Person2ID)
);