createproc
platform_gettableschema
@tablename
varchar
(100)as
begin
select
column_name
into
#pktable
from
(select
constraint_name,column_name
from
information_schema.constraint_column_usage
where
table_name
=@tablename
) t1
join
(select
id from
sysobjects
where
xtype=n
'pk') t2
onobject_id
(constraint_name)=id
select
d.name
as表名,
a.colorder
as列索引,
a.name
as列名,
b.name
as型別,
columnproperty
(a.id,a.name,
'precision')
as長度,
isnull
(columnproperty
(a.id,a.name,
'scale'),
0) as小數字數,
(columnproperty
(a.id,a.name,
'isidentity
')) 標識,
(case
when
p.column_name
isnot
null
then
1else
0end
) 主鍵,
(columnproperty
(a.id,a.name,
'iscomputed
')) 計算列,
k.definition 公式,
isnull
(a.isnullable,
'') 允許空,
isnull
(e.text,''
) 預設值,
isnull
(g.[
value],
'')
as欄位說明
--a代表列集合表:為每個表和檢視中的每列返回一行,並為資料庫中的儲存過程的每個引數返回一行
--b代表列型別表:為資料庫中定義的每種系統提供的資料型別和每種使用者定義的資料型別返回一行。
from
syscolumns a
left
join
systypes b
ona.xtype
=b.xusertype
--d代表物件表:在資料庫中建立的每個物件(例如約束、預設值、日誌、規則以及儲存過程)都對應一行
inner
join
sysobjects d
ona.id
=d.id
andd.xtype='
u'andd.name
<>
'dtproperties'--
e代表e.text是預設值:包含資料庫中每個檢視、規則、預設值、觸發器、check 約束、default 約束和儲存過程的項
left
join
syscomments e
ona.cdefault
=e.id
--g代表g.[value]是字段說明:針對當前資料庫中的每個擴充套件屬性返回一行。
left
join
sys.extended_properties g
ona.id
=g.major_id
anda.colid
=g.minor_id
left
join
#pktable p
ona.name
=p.column_name
left
join
(select
name,definition
from
sys.computed_columns
where
object_id
=object_id
(@tablename
)) k
ona.name
=k.name
where
d.name
=@tablename
order
bya.id,a.colorder
end
完整的獲取當前jsp檔案路徑的語句
錯誤 正確 string realpath http request.getservername request.getserverport request.getcontextpath request.getservletpath substring 0,request.getservletpat...
獲取表結構
sql server 2000 feixian sql server 2000 select 表名 case when a.colorder 1 then d.name else end 表說明 case when a.colorder 1 then isnull f.value,else end ...
獲取指定表的表結構
最近公司專案中需要做乙個使用excel員工匯入的需求,在匯入過程中,需要對資料核驗,就需要獲取相應的表結構的字段型別,及其型別精度。以下為 private mapgetcolumninfo else if map.get numeric precision null else if map.get ...