나는 데이터베이스 파일을 Excel 파일로 채우고 체크 아웃 한 후에 많은 열에서 오류가 있음을 확인했다.SQL Server에서 전체 열에서 단어를 삭제하는 방법은 무엇입니까?
인터넷에서 체크 아웃하며 여러 줄로 된 셀을 삽입 할 때 Excel의 버그입니다. 이제는 많은 열에 "x000D"이라는 단어가 있습니다.
전체 데이터베이스에서 sql을 사용하여 쿼리를 삭제할 수 있습니까?
나는 데이터베이스 파일을 Excel 파일로 채우고 체크 아웃 한 후에 많은 열에서 오류가 있음을 확인했다.SQL Server에서 전체 열에서 단어를 삭제하는 방법은 무엇입니까?
인터넷에서 체크 아웃하며 여러 줄로 된 셀을 삽입 할 때 Excel의 버그입니다. 이제는 많은 열에 "x000D"이라는 단어가 있습니다.
전체 데이터베이스에서 sql을 사용하여 쿼리를 삭제할 수 있습니까?
, 당신은
를 통해 데이터베이스 (그들의 표) 당신에게 모든 열을 줄 것이다 INFORMATION_SCHEMA.COLUMNS
보기를 반복 절차를 만들어야합니다. 당신은 루프
UPDATE <MYTABLE> SET <MYCOLUMN> = REPLACE(<MYCOLUMN>, 'x000D', '')
에서 같은 쿼리를 작성하고 실행하여 열 DATA_TYPE (당신은 예를 들어, 정수 열을 업데이트 할 필요가 없습니다) 동적 SQL과 다음
를 확인할 수 있습니다.
편집
빨리, 너무 깨끗하지, proc 디렉토리에 저장하지 않고, 당신이 입력 할 수 있습니다 SQL 서버 관리 스튜디오 :
SELECT 'UPDATE '
+ c.TABLE_NAME
+ ' SET '
+ c.COLUMN_NAME
+ ' =REPLACE(' + c.COLUMN_NAME + ', ''x000D'', '''');'
FROM INFORMATION_SCHEMA.COLUMNS c
WHERE c.DATA_TYPE = 'nvarchar' // or IN (<the types you wanna correct>)
당신은 결과를 복사하여 실행, 당신은있어 끝난.
이 작업을 수행 할 수 있습니다
update MyTable -- <<=== Your table name
set myColumn = null -- <<=== Your column name
where myColumn='x000D'
이 쿼리는 x000D
로 설정되어 모든 행에 myColumn
의 값 x000D
을 취소합니다. 모든 데이터베이스에서이 작업을 수행 싶다면
수정 된 xls로 테이블을 다시 트렁킹하고 다시로드 할 수 있습니다.