내 데이터베이스 서비스로 서비스 기반 데이터베이스 (*.mdf
)를 사용하고 있습니다. Linq-To-SQL 클래스를 사용하고 있습니다.데이터베이스에서 다음 ID를 생성하는 방법
다음 ID를 생성하고 싶습니다. 현재 마지막으로 삽입 된 행의 ID를 얻으려고하고 다음 ID를 얻기 위해 1을 더합니다. 내 기본 키의 데이터 유형은 int입니다. 이에
The query operator 'Last' is not supported.
내 데이터베이스 서비스로 서비스 기반 데이터베이스 (*.mdf
)를 사용하고 있습니다. Linq-To-SQL 클래스를 사용하고 있습니다.데이터베이스에서 다음 ID를 생성하는 방법
다음 ID를 생성하고 싶습니다. 현재 마지막으로 삽입 된 행의 ID를 얻으려고하고 다음 ID를 얻기 위해 1을 더합니다. 내 기본 키의 데이터 유형은 int입니다. 이에
The query operator 'Last' is not supported.
무엇 약간 다른 접근 방식에 대해?
private string genNextId()
{
var id = (from a in dc.nasabahs
select a.nomor_nasabah).Max();
return id.ToString();
}
당신 funciton :
private string genNextId()
{
var id = (from a in dc.nasabahs
orderby a.nomor_nasabah ascending
select a.nomor_nasabah).Last();
return id.ToString();
}
나는 오류를 얻을
private string genNextId()
{
var id = (from a in dc.nasabahs
orderby a.nomor_nasabah descending
select a.nomor_nasabah).First();
return id.ToString();
}
오라클과 같은 다른 데이터베이스에도 오랫동안 사용할 수 있지만 SQL Server 2012에서만 사용할 수있는 시퀀스를 사용해야합니다. Sequence은 숫자 값을 생성하는 데이터베이스 개체이며 값이 생성되어 소비되면 다시 생성되지 않습니다. 장점은 삽입 작업을 수행하지 않고도 가치를 얻을 수 있다는 것입니다. 그러나 linq-to-sql이 이것을 지원한다고 생각하지 않으므로 원시 ado.net을 사용해야합니다.
그냥 내 두 센트를 추가하는 것에 대해 생각했습니다. 위의 모든 사람들은 서비스 기반 데이터베이스 또는 mdx 파일의 아이디 속성을 구성하는 방법을 실제로 말하지 않았습니다. 테이블을 만들거나 처음 만들 때 테이블 정의로 이동 한 다음 열 특성에서 ID 지정과 같은 내용을 보게됩니다. 신분입니다. 예를 선택하십시오. 원하는 단계 크기에 따라 1로 설정됩니다. 1로 설정하십시오 (초기 값)
왜 내림차순으로 주문하지 않으십니까? –
idk 왜, lol이고 작동합니까! btw, 무엇이'last()'에 문제가 있습니까? – Cignitor
솔직히 말해서, 나는 당신에게 말할 수 없었다, 나는 어둠 속에서 총을 맞고 있었다. :) –