시스템 데이터 베 이 스 를 통 해 사용자 의 모든 데이터베이스 에 있 는 보기,표,저장 과정 을 가 져 옵 니 다.

3242 단어 execl가 져 오기

-- sql
sp_configure 'xp_cmdshell' , 1;
go
reconfigure;
go

--
EXEC sys .xp_cmdshell 'sqlcmd -Lc'

--
Select * FROM Master..SysDatabases order by Name

--
use yeekang ---
select * from sysobjects where   type = 'U' order by name

--
select * from syscolumns where id= OBJECT_ID('Userinfo' )

SELECT 표 이름=case when a.colorder=1 then d.name else''end,표 설명=case when a.colorder=1 then isnull(f.value,')else''end,필드 번호=a.colorder,필드 이름=a.name,표지=case when COLUMNPROPERTY(a.id,a.name,'IsIdentity')=1 then'√'else'end,메 인 키=case where exists(SELECT 1 FROM sysobjects where xtype='PK'and name in(SELECT name FROM sysindexes WHERE indid=a.id and colid=a.colid))then'√'else''end,type=b.name,점용 바이트 수=a.length,length=COLUMNPROPERTY(a.id,a.name,'PRECISION'),소수 자릿수=isnull(COLUMNPROPERTY(a.id,a.name,'Scale'),0),공백=case when a.isnullable=1 then'√'else''end,기본 값=isnull(e.text,'),필드 설명=isnull(g.[value],')

FROM syscolumns a
left join systypes b on a. xusertype=b .xusertype
inner join sysobjects d on a. id=d .id and d .xtype= 'U' and d.name <>'dtproperties'
left join syscomments e on a. cdefault=e .id
left join sys. extended_properties g on a.id =g. major_id and a.colid =g. minor_id
left join sys. extended_properties f on d.id =f. major_id and f. minor_id=0
where a .id= OBJECT_ID('Userinfo' )
order by a. id,a .colorder
다른 예:
SQL Server 데이터베이스 에 있 는 모든 데이터 베 이 스 는 sysobjects 시스템 시트 가 있 습 니 다.이 표 에는 현재 데이터 베 이 스 를 포함 한 모든 대상 이 저장 되 어 있 습 니 다.대상 표,사용자 표,보기,트리거,제약,기본 값,로그,저장 과정의 편 지 를 포함 합 니 다.
먼저 이 표 의 필드 이름 을 열거 하 십시오.
name  대상 이름 id       대상 표지 번호 xtype  대상 유형 uid      소유자 대상 의 사용자 ID parentobj    부모 대상 의 대상 표지 번호 crdate   대상 생 성 날짜 ftcatid    전체 텍스트 인덱스 에 등 록 된 모든 사용자 테이블 의 전체 텍스트 디 렉 터 리 식별 자 schemaver   버 전 번호  발표,제약,표지 에 사용
위의 필드 를 보면 이미 알 고 있 겠 지..xtype 이 필드 는 대상 유형 을 확인 하 는...
데이터베이스 에 있 는 모든 표 정 보 를 얻 으 려 면 다음 과 같은 조회 문 구 를 쓸 수 있 습 니 다

select * from sysobjects where xtype='u'
데이터베이스 에 저 장 된 모든 과정 에 대한 정 보 를 얻 으 려 면 다음 과 같은 검색 어 를 쓸 수 있 습 니 다.
데이터베이스 에 있 는 모든 보기 정 보 를 얻 으 려 면 다음 과 같은 검색 어 를 쓸 수 있 습 니 다.
데이터베이스 에 있 는 모든 트리거 정 보 를 얻 으 려 면 다음 과 같은 검색 어 를 쓸 수 있 습 니 다

select * from sysobjects where xtype='p'
SQL 의 모든 데이터베이스 이름,모든 표 이름,모든 필드 이름 을 가 져 올 수 있 습 니 다.
1.모든 데이터베이스 이름 가 져 오기:
Select Name FROM Master..SysDatabases orDER BY Name
2.모든 시계 이름 가 져 오기:

select * from sysobjects where xtype='v'
XType='U':모든 사용자 표를 표시 합 니 다.
XType='S':모든 시스템 표를 표시 합 니 다.
3.모든 필드 이름 가 져 오기:

select * from sysobjects where xtype='tr'
방법 2.

Select Name FROM DatabaseName..SysObjects Where XType='U' orDER BY Name

좋은 웹페이지 즐겨찾기