반응형
저장 프로 시저에서 새 가이드를 생성하는 방법은 무엇입니까?
현재 테이블에 새 행을 삽입하려는 저장 프로 시저가 있습니다.
insert into cars
(id, Make, Model)
values('A new Guid', "Ford", "Mustang")
따라서 기본 키 'id'는 Guid입니다. C # 코드에서 새 Guid를 만드는 방법을 알고 저장 프로 시저 내에서 기본 키 값에 대한 새 Guid를 생성하는 방법을 잘 모르겠습니다.
누군가 나를 도울 수 있습니까?
감사합니다!
SQL Server에서는 NEWID 함수를 사용할 수 있습니다 . C #을 사용하고 있으므로 SQL Server를 사용하고 가정합니다. 다른 데이터베이스 시스템에도 강화 기능이 있습니다.
select NEWID()
Oracle을 사용하는 경우 기능을 사용할 수 있습니다 . 이 질문에 대한 답을 확인하십시오. Oracle에서 GUID 생성SYS_GUID()
이 시도 :
SELECT NewId()
질문에서 이것에 대해 묻지 기본 키에 GUID를 사용하는 것이 항상 좋은 생각은 아니라는 점을 지적 할 가치가 있다고 생각합니다. 간단하지만 성능에서 GUID를 사용할 때 성능에 영향을 미칠 수 있습니다. 대신 정수 값인 ID 열 을 사용하는 것을 고려해 보거나 ?
다음은 읽는 데 도움이 될 수있는 몇 가지 기사입니다.
- GUID를 기본 키로 사용하는 성능 효과 (SQL Server Magazine)
- 기본 키 : ID 대 GUID (Jeff Atwood)
- GUID를 기본 키로 사용하는 비용 (다른 두 기사에서 참조한 Jimmy Nelson의 가이드)
MySQL에서는 UUID ()입니다. 따라서 쿼리는 다음과 가변됩니다.
insert into cars
(id, Make, Model)
values(UUID(), "Ford", "Mustang")
uuid를 선택하면 다음과 같이 할 수 있습니다.
set @id=UUID();
insert into cars
(id, Make, Model)
values(@id, "Ford", "Mustang");
select @id;
질문의 형식으로 (보행 튼튼 찾아라!)
insert into cars
(id, Make, Model)
values(NEWID(), "Ford", "Mustang")
참고 URL : https://stackoverflow.com/questions/3938113/how-to-generate-a-new-guid-in-stored-procedure
반응형
'IT' 카테고리의 다른 글
IE11 문서 모드의 링크는 IE7입니다. (0) | 2020.09.13 |
---|---|
DataGridView에서 현재 선택된 행의 등급 (0) | 2020.09.13 |
배열 PHP를 통해 루프 (0) | 2020.09.13 |
SQL Server datetime LIKE SELECT? (0) | 2020.09.13 |
Stateless vs Stateful- 구체적인 정보를 사용할 수 있습니다. (0) | 2020.09.13 |