當前位置:首頁 » 編程語言 » sql列出表的欄位
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sql列出表的欄位

發布時間: 2023-06-10 00:21:03

sql如何查詢表中的欄位

方法一:
select name from syscolumns where id = object_id('表名');

方法二:
sp_columns 表名

⑵ mysql中如何使用sql語句取出某個數據表中的所有欄位

desc 表名;
就可以列出所有欄位信息,包括約束條件。

⑶ 什麼SQL語句可以列出表的欄位名

SQL SERVER中的語句是

select name
from syscolumns
where id =object_id('表名')

把「表名」替換成實際的表名。

⑷ 怎樣用SQL查詢一個表的所有欄位

可以用一句sql語句查詢解決,如要查test表中的所有欄位及類型

Selectb.nameasTableName,C.nameASTYPEfromsyscolumnsa,sysobjectsb,systypesc
wherea.id=b.id
andb.type='U'
anda.xtype=c.xtype
andb.name='TEST';

結果截圖:

⑸ oracle中怎麼用sql查表以及表的欄位名

1、用sql查表
查表的時候需要用到user_tables、all_tables,user_tables查出來的是該用戶擁有的表,all_tables查出來的是所有用戶的表。
2、用sql查表的欄位
查表的欄位需要用到user_tab_columns、all_tab_columns,一樣的前者只能查到該用戶擁有的表,後者可以查詢所有用戶的表。
3、其他
與上面類似的還有查詢對象(user_objects、all_objects)、索引(user_indexes、all_indexes)、約束(user_constraints、all_constraints)等。
至於到底怎麼查,先用select * from XXX查看錶的信息,然後看下就知道了。比如查一個system表dba_data_files的欄位,可以用select * from all_tab_columns where table_name = 'DBA_DATA_FILES',注意表名大寫。
2014-11-04補充:
下列列出一些比較重要的數據字典:

DBA_TABLES:描述資料庫中所有相關的表。

DBA_ALL_TABLES:描述資料庫中所有的對象以及相關的表。

USER_TABLES:描述資料庫中當前用戶擁有的相關的表。

USER_ALL_TABLES:描述資料庫中當前用戶擁有的對象以及相關的表。
ALL_TABLES:描述資料庫中所有的用戶可以訪問的相關的表。

ALL_ALL_TABLES:描述資料庫中所有的用戶可以訪問的對象以及相關的表。

DBA_TAB_COLUMNS:描述資料庫中所有表的列屬性。
USER_TAB_COLUMNS:描述資料庫中當前用戶擁有的表的列屬性。

ALL_TAB_COLUMNS:描述資料庫中所有用戶可以訪問的表的列屬性。
DBA_CONSTRAINTS:描述資料庫中所有表的約束和屬性。
DBA_CONS_COLUMNS:包含在DBA_CONSTRAINTS約束定義中的可訪問的列的信息。

ALL_CONSTRAINTS:描述資料庫中所有用戶可以訪問的表的約束和屬性。

ALL_CONS_COLUMNS:包含在ALL_CONSTRAINTS約束定義的可訪問的列的信息。

USER_CONSTRAINTS:描述資料庫中所有當前用戶擁有的表的約束的屬性。

USER_CONS_COLUMNS:包含在USER_CONSTRAINTS約束定義的可訪問的列的信息。

DBA_SEQUENCES:資料庫中所有序列的描述。

ALL_SEQUENCES:描述資料庫中所有用戶可以訪問的序列的描述。

USER_SEQUENCES:描述資料庫中所有當前用戶擁有的序列的描述。

DBA_INDEXES:描述資料庫中所有的索引的屬性。

ALL_INDEXES:描述資料庫中所有用戶可以訪問的索引的屬性。

USER_INDEXES:描述資料庫中所有當前用戶擁有的索引的屬性。

⑹ 如何用SQL語句查詢一個數據表所有欄位的類型

用SQL語句查詢一個數據表所有欄位的類型可以參考下面的代碼:

SELECT

name AS column_name,TYPE_NAME(system_type_id) AS column_type,

max_length,is_nullable

FROM sys.columns

WHERE object_id=OBJECT_ID(N'Address')

(6)sql列出表的欄位擴展閱讀:

SQL語句

創建索引:create [unique] index idxname on tabname(col…。)

增加列:Alter table table_name add column_name column_type [default 默認值]--在表中增加一列,[]內的內容為可選項

刪除索引:drop index idxname on tabname

⑺ 怎麼用SQL語句得到一個表的欄位數

用一個查詢打開表後,可以根據TADOQuery控制項的FieldCount屬性來獲得欄位個數。
MySql:='Select * From MyTBName ';
ADOQ_Fields.Close;
ADOQ_Fields.SQL.Clear;
ADOQ_Fields.SQL.Add(MySql);
ADOQ_Fields.Open;
SBar.Panels[2].Text:='共計:'+IntToStr(ADOQ_Fields.FieldCount)+'條欄位';
如果你想得到每個字估的類型,可以對欄位進行一下遍歷。
放一個TValueListEditor控制項,命名為VLEditor_Fields,用來存放欄位信息。

VLEditor_Fields.Strings.Clear;
For i:=0 to ADOQ_Fields.FieldCount-1 DO
Begin
case ADOQ_Fields.FieldByName(ADOQ_Fields.Recordset.Fields.Item[i].Name).DataType of
ftUnknown: FieldType :='ftUnknown';
ftString: FieldType :='ftString';
ftSmallint: FieldType :='ftSmallint';
ftInteger: FieldType :='ftInteger';
ftWord: FieldType :='ftWord';
ftBoolean: FieldType :='ftBoolean';
ftFloat: FieldType :='ftFloat';
ftCurrency: FieldType :='ftCurrency';
ftBCD: FieldType :='ftBCD';
ftDate: FieldType :='ftDate';
ftTime: FieldType :='ftTime';
ftDateTime: FieldType :='ftDateTime';
ftBytes: FieldType :='ftBytes';
ftVarBytes: FieldType :='ftVarBytes';
ftAutoInc: FieldType :='ftAutoInc';
ftBlob: FieldType :='ftBlob';
ftMemo: FieldType :='ftMemo';
ftGraphic: FieldType :='ftGraphic';
ftFmtMemo: FieldType :='ftFmtMemo';
ftParadoxOle: FieldType :='ftParadoxOle';
ftDBaseOle: FieldType :='ftDBaseOle';
ftTypedBinary: FieldType :='ftTypedBinary';
ftCursor: FieldType :='ftCursor';
ftFixedChar: FieldType :='ftFixedChar';
ftWideString: FieldType :='ftWideString';
ftLargeint: FieldType :='ftLargeint';
ftADT: FieldType :='ftADT';
ftArray: FieldType :='ftArray';
ftReference: FieldType :='ftReference';
ftDataSet: FieldType :='ftDataSet';
ftOraBlob: FieldType :='ftOraBlob';
ftOraClob: FieldType :='ftOraClob';
ftVariant: FieldType :='ftVariant';
ftInterface: FieldType :='ftInterface';
ftIDispatch: FieldType :='ftIDispatch';
ftGuid: FieldType :='ftGuid';
ftTimeStamp: FieldType :='ftTimeStamp';
ftFMTBcd: FieldType :='ftFMTBcd';
else FieldType :='';
end;
VLEditor_Fields.InsertRow(ADOQ_Fields.Recordset.Fields.Item[i].Name,FieldType ,True);
End;

⑻ sql查詢表中欄位

select * from --主查詢
(select namea=c.name from syscolumns c,sysobjects o where o.id=c.id and o.xtype='u' and o.name='tablea') a--A表中所有欄位
full join --使用全連接
(select nameb=c.name from syscolumns c,sysobjects o where o.id=c.id and o.xtype='u' and o.name='tableb') b--B表中所有欄位
on namea=nameb where namea is null or nameb is null--只保留不同的欄位
查詢結果是,兩表不同的欄位列出,兩表均有的欄位不列:
NAMEA,NAMEB
FIELD1 NULL
FIELD2 NULL
NULL FIELD3
NULL FIELD4