테이블 필드를 삭제하는 SQL 문은 무엇입니까?

coldplay.xixi
풀어 주다: 2020-06-22 15:35:19
원래의
6353명이 탐색했습니다.

추천 튜토리얼: "mysql 비디오 튜토리얼"

테이블 필드를 삭제하는 SQL 문은 무엇인가요?

테이블 필드를 삭제하는 SQL 문은 다음과 같습니다.

1. 기본값이 없는 열 삭제:

alter table Test drop COLUMN BazaarType
로그인 후 복사

2. 기본값이 있는 열 삭제:

제약 조건 먼저 삭제(기본값) alter table 테스트 DROP CONSTRAINT DF__Test__BazaarType__3C4ACB5Falter table Test DROP CONSTRAINT DF__Test__BazaarType__3C4ACB5F

(alter table Test DROP COLUMN BazaarType 提示报错就是 DF__SheetTest__Attac__0F8D3381)

然后在删除列 alter table Test DROP COLUMN BazaarType

3.

ALTER TABLE 表名 ADD 字段名 INT  DEFAULT (0) NOT NULL;
로그인 후 복사

修改主键字段类型

alter table [tablename] alter column [colname] [newDataType])
로그인 후 복사

修改某表的字段类型时,会报错是因为存在约束。

a。 将表中的字段设置为NOT NULL(不为空)、给字段增加Default值(默认值)这样的操作都会给该字段添加约束,增加了这些约束后,在用SQL脚本修改字段类型、删除字段的时候均会发生类似错误.

b.查找该字段上已存在的约束,并删除存在的约束.

c.再次执行修改/删除脚本即可。

解决方法:

1.查找出表中该字段的约束名称(或根据已有的提示及对象'DF__******')

declare @name varchar(50)
select  @name =b.name from sysobjects b join syscolumns a on b.id = a.cdefault 
where a.id = object_id('TableName') 
and a.name ='ColumName'
로그인 후 복사

2. 删除存在的约束

exec('alter table TableName drop constraint ' + @name)
로그인 후 복사

例如:exec

(alter table Test DROP COLUMN BazaarType 오류 메시지는 DF__SheetTest__Attac__0F8D3381)

그런 다음 열을 삭제합니다. alter table Test DROP COLUMN BazaarType

3.

alter table dbo.T_tableName alter column Id BIGINT not NULL
alter table dbo.T_tableName add constraint PK_Id primary key(Id)
로그인 후 복사
🎜기본 키 필드 유형 수정🎜🎜rrreee🎜테이블의 필드 유형 수정 시 제약 조건이 있어 오류가 발생합니다. 🎜🎜🎜아. 테이블의 필드를 NOT NULL로 설정하고 필드에 기본값을 추가하는 등의 작업은 필드에 제약 조건을 추가한 후 SQL 스크립트를 사용하여 필드 유형을 수정하고 유사한 오류가 발생합니다. 🎜🎜b. 필드에서 기존 제약 조건을 찾아 삭제합니다. 🎜🎜c. 수정/삭제 스크립트를 다시 실행합니다. 🎜🎜🎜 해결 방법: 🎜🎜🎜1. 테이블에서 필드의 제약 조건 이름을 찾습니다(또는 기존 프롬프트 및 개체 'DF__******'를 기반으로). 🎜rrreee🎜2. 기존 제약 조건을 삭제합니다. 🎜예: exec('alter table T_tableName drop Constraint Constraint Name of Error Message' )🎜🎜3 그런 다음 스크립트를 실행하여 필드 유형을 수정합니다🎜rrreee🎜권장 관련 기사: "🎜sql 데이터베이스 기술기사🎜》🎜

위 내용은 테이블 필드를 삭제하는 SQL 문은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
sql
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!