쿼리로 열을 삭제하지 않고 열의 데이터 유형을 변경하는 방법은 무엇입니까?
데이터 유형이있는 열이 있습니다 : datetime. 하지만 이제는 데이터 유형 varchar로 변환하고 싶습니다. 열을 삭제하지 않고 데이터 유형을 변경할 수 있습니까? 그렇다면 방법을 설명해주십시오.
ALTER COLUMN이 작동하지 않는 경우.
변경 열이 원하는 변환을 수행 할 수 없기 때문에 실패하는 것은 드문 일이 아닙니다. 이 경우 해결 방법은 더미 테이블 TableName_tmp를 만들고 대량 삽입 명령에서 특수 변환을 사용하여 데이터를 복사 한 다음 원본 테이블을 삭제하고 tmp 테이블의 이름을 원본 테이블 이름으로 바꾸는 것입니다. 외래 키 제약 조건을 삭제하고 다시 만들어야하며 성능을 위해 tmp 테이블을 채운 후 키를 만들고 싶을 것입니다.
많은 일처럼 들리나요? 사실 그렇지 않습니다.
SQL Server를 사용하는 경우 SQL Server Management Studio가 작업을 수행하도록 할 수 있습니다!
테이블 구조를 불러오고 (테이블을 마우스 오른쪽 버튼으로 클릭하고 "수정"을 선택) 모든 변경을 수행합니다 (열 변환이 불법 인 경우 새 열을 추가하면됩니다. 잠시 후에 패치 할 것입니다). 그런 다음 수정 창의 배경을 마우스 오른쪽 버튼으로 클릭하고 "변경 스크립트 생성"을 선택합니다. 표시되는 창에서 변경 스크립트를 클립 보드에 복사 할 수 있습니다.
수정을 취소하고 (결국 스크립트를 테스트하려는 경우) 새 쿼리 창에 스크립트를 붙여 넣습니다. 필요에 따라 수정하면 (예 : tmp 테이블 선언에서 필드를 제거하는 동안 변환 추가) 이제 변환을 수행하는 데 필요한 스크립트가 있습니다.
ALTER TABLE mytable ALTER COLUMN mycolumn newtype
기사에 나열된 ALTER COLUMN 절의 한계에주의하십시오.
ALTER TABLE [table name] MODIFY COLUMN [column name] datatype
ALTER TABLE YourTableNameHere ALTER COLUMN YourColumnNameHere VARCHAR(20)
간단 해! 그냥 다음 쿼리를 입력하십시오.
table_Name 테이블 변경 column_name 데이터 유형 변경
alter table Message alter column message nvarchar(1024);
그것은 행복한 프로그래밍을 할 것입니다
ALTER TABLE YourTableNameHere ALTER COLUMN YourColumnNameHere VARCHAR(20)
SQL Server 2008 이상에서는 다음 쿼리를 사용합니다.
ALTER TABLE [RecipeInventorys] ALTER COLUMN [RecipeName] varchar(550)
이것은 postgresql 9.0.3에서 작동합니다.
alter table [table name] ALTER COLUMN [column name] TYPE [character varying];
http://www.postgresql.org/docs/8.0/static/sql-altertable.html
ALTER TABLE [table_name] ALTER COLUMN [column_name] varchar(150)
ALTER TABLE YourTableNameHere ALTER COLUMN YourColumnNameHere VARCHAR (20) 데이터 유형 변경에 적합합니다.
ORACLE-변경 테이블 table_name modify (column_name new_DataType);
ALTER TABLE yourtable MODIFY COLUMN yourcolumn 데이터 유형
ALTER TABLE table_name
MODIFY (column_name data_type);
ALTER tablename MODIFY columnName newColumnType
하지만 datetime에서 varchar 로의 변경 사항을 처리하는 방법을 잘 모르겠습니다. 따라서 열 이름을 바꾸고 이전 이름과 올바른 데이터 형식 (varchar)으로 새 열을 추가 한 다음 채우기위한 업데이트 쿼리를 작성해야 할 수 있습니다. 이전의 새 열.
http://www.1keydata.com/sql/sql-alter-table.html
alter table [table name] remove [present column name] to [new column name.
'code' 카테고리의 다른 글
MongoDB가 서버를 시작할 수 없음 :이 mongod 빌드에서는 기본 스토리지 엔진 'wiredTiger'를 사용할 수 없습니다. (0) | 2020.12.14 |
---|---|
Java 컬렉션 구현을 선택하는 경험 법칙? (0) | 2020.12.14 |
쿼리 결과에서 임의의 결과 샘플 선택 (0) | 2020.12.14 |
WPF 콤보 상자 DisplayMemberPath (0) | 2020.12.14 |
PHP는 오류 13으로 mysql에 연결할 수 없습니다 (하지만 명령 줄은 가능합니다) (0) | 2020.12.14 |