2011-12-14 43 views

回答

2

SHOW KEYS FROM

有了這個代碼,你可以從一個表項的列表。

SELECT 
    t.name, 
    CASE k.type 
     WHEN 1 THEN 'PK' 
     WHEN 2 THEN 'FK' 
     WHEN 3 THEN 'Common' 
    END, 
    c.name 
FROM 
    sysobjects t INNER JOIN 
    syscolumns c ON c.id = t.id INNER JOIN 
    syskeys k ON k.id = t.id AND c.colid IN (k.key1, k.key2, k.key3, k.key4, k.key5, k.key6, k.key7, k.key8) 
WHERE 
    t.type = 'U' AND k.type in (1,2) 

爲了將syskeys join正常工作,你必須使用sp_primarykeysp_foreignkey。用這個命令你可以在syskeys表中添加一行。您可以使用sp_helpindex 'tablename'。 關於constrainst的信息(包括PRIMARY和FOREIGN)也可以通過sp_helpconstraint 'tablename'獲得。


DESCRIBE

要獲得描述信息只是做sp_help 'tablename'



爲了得到正是你需要,你可以創建你需要編輯,我上面提到的存儲過程和創造新的選擇了什麼。sp_help,sp_helpindexsp_helpconstraint位於syssystemprocs database

+1

感謝您的回答。但是,抱歉,首先不清楚。我的意思是,列輸出相當於MySQL SHOW KEYS FROM:Non_unique,Key_name,Seq_in_index,Column_name,Collat​​ion,Cardinality,Sub_part,Packed,Null,Index_type,Comment,Index_comment。 for MySQL DESCRIBE:Field,Type,Null,Key,Default,Extra。我知道MySQL和Sybase的不同之處。無論如何,我會嘗試玩你的代碼。 – Iyas 2011-12-15 00:58:38