1. 程式人生 > >sql查詢所有表的記錄數

sql查詢所有表的記錄數

CREATE TABLE #temp
    (
      TableName VARCHAR(255) ,
      RowCnt INT
    ) 
EXEC sp_MSforeachtable 'INSERT INTO #temp SELECT ''?'', COUNT(*) FROM ?' 
SELECT  TableName ,
        RowCnt
FROM    #temp
ORDER BY TableName 
DROP TABLE #temp 

查詢表

select * from 
sys.objects 
where type='U'

在 SQL Server 2005 中查詢表結構及索引 


-- 1. 表結構資訊查詢 
-- ===================================================
-- 表結構資訊查詢
-- 鄒建 2005.08(引用請保留此資訊)
-- ====================================================
SELECT 
    TableName=CASE WHEN C.column_id=1 THEN O.name ELSE N'' END,
    TableDesc=ISNULL(CASE WHEN C.column_id=1 THEN PTB.[value] END,N''),
    Column_id=C.column_id,

    ColumnName=C.name,
    PrimaryKey=ISNULL(IDX.PrimaryKey,N''),
    [IDENTITY]=CASE WHEN C.is_identity=1 THEN N'√'ELSE N'' END,
    Computed=CASE WHEN C.is_computed=1 THEN N'√'ELSE N'' END,
    Type=T.name,
    Length=C.max_length,
    Precision=C.precision,
    Scale=C.scale,
    NullAble=CASE WHEN C.is_nullable=1 THEN N'√'ELSE N'' END,

    [Default]=ISNULL(D.definition,N''),
    ColumnDesc=ISNULL(PFD.[value],N''),
    IndexName=ISNULL(IDX.IndexName,N''),
    IndexSort=ISNULL(IDX.Sort,N''),
    Create_Date=O.Create_Date,
    Modify_Date=O.Modify_date
FROM sys.columns C
    INNER JOIN sys.objects O
        ON C.[object_id]=O.[object_id]
            AND O.type='U'
            AND O.is_ms_shipped=0
    INNER JOIN sys.types T
        ON C.user_type_id=T.user_type_id
    LEFT JOIN sys.default_constraints D
        ON C.[object_id]=D.parent_object_id
            AND C.column_id=D.parent_column_id
            AND C.default_object_id=D.[object_id]
    LEFT JOIN sys.extended_properties PFD
        ON PFD.class=1 
            AND C.[object_id]=PFD.major_id 
            AND C.column_id=PFD.minor_id
--             AND PFD.name='Caption'  -- 欄位說明對應的描述名稱(一個欄位可以新增多個不同name的描述)
    LEFT JOIN sys.extended_properties PTB
        ON PTB.class=1 
            AND PTB.minor_id=0 
            AND C.[object_id]=PTB.major_id
--             AND PFD.name='Caption'  -- 表說明對應的描述名稱(一個表可以新增多個不同name的描述)
    LEFT JOIN                       -- 索引及主鍵資訊
    (
        SELECT 
            IDXC.[object_id],
            IDXC.column_id,
            Sort=CASE INDEXKEY_PROPERTY(IDXC.[object_id],IDXC.index_id,IDXC.index_column_id,'IsDescending')
                WHEN 1 THEN 'DESC' WHEN 0 THEN 'ASC' ELSE '' END,
            PrimaryKey=CASE WHEN IDX.is_primary_key=1 THEN N'√'ELSE N'' END,
            IndexName=IDX.Name
        FROM sys.indexes IDX
        INNER JOIN sys.index_columns IDXC
            ON IDX.[object_id]=IDXC.[object_id]
                AND IDX.index_id=IDXC.index_id
        LEFT JOIN sys.key_constraints KC
            ON IDX.[object_id]=KC.[parent_object_id]
                AND IDX.index_id=KC.unique_index_id
        INNER JOIN  -- 對於一個列包含多個索引的情況,只顯示第1個索引資訊
        (
            SELECT [object_id], Column_id, index_id=MIN(index_id)
            FROM sys.index_columns
            GROUP BY [object_id], Column_id
        ) IDXCUQ
            ON IDXC.[object_id]=IDXCUQ.[object_id]
                AND IDXC.Column_id=IDXCUQ.Column_id
                AND IDXC.index_id=IDXCUQ.index_id
    ) IDX
        ON C.[object_id]=IDX.[object_id]
            AND C.column_id=IDX.column_id
-- WHERE O.name=N'要查詢的表'       -- 如果只查詢指定表,加上此條件
ORDER BY O.name,C.column_id

MYSQL 查詢表

use dbname;

show tables;

Oracle 查詢

DESC table_name 檢視所有列名

• 查詢命令 包括SELECT命令

• DML命令 包括INSERT、DELETE、UPDATE命令

• DDL命令 包括CREATE、DROP、ALTER、RENAME、TRUNCATE命令

MYSQL語句,表的增刪查改

Delete from  table_name;--刪除表資料

UPDATE          table_name   SET  column_name=’  ’;

DROP TABLE table_name --刪除新表

ALTER TABLE A RENAME TO B --修改表名

ALTER TABLE test ADD  COLUMNname VARCHAR (10); --新增表列

ALTER TABLE test DROP COLUMN name; --刪除表列

ALTER TABLE test MODIFY address char(10) --修改表列型別

SHOW INDEX FROM    tableName      --檢視索引   

Oracle 查詢

1.     資料查詢語句

select完整表示式

SELECT 表示式

FROM 表名

WHERE 條件

GROUP BY 列名

HAVING 條件

ORDER BY 表示式

SELECT[ * | all | column1,column2 ]

         From  table1 [ ,table2 ]

         [ WHERE condition ]

         [ GROUP BY column1 ]

         [ ORDER BY column2(asc,desc) ]—查詢語句

2.刪除表

DROP  TABLE databasename.table_name例:DROP  TABLE pubs.dbo.authors2

3 DELETE  刪除表中資料

DELETE  FROM table_name [WHERE  condition]

例:DELETE FROM   products_tblWHERE  prod_ID = ‘1001’

4.UPDATE  更新已存在的資料

UPDATE  table_name  SET column_name = ‘value’[WHERE  condition]

例:UPDATE  products_tbl  SET prod_id = ‘1001’ WHERE  prod_desc = ‘coat’

5修改表結構語法:

ALTER TABLE old_table_name RENAME TOnew_table_name –修改表名

ALTERTABLE  table_name [modify][col_name  col_properties]

                      [add] [col_name  col_properties]

                      [drop][col_name  col_properties]

例:ALTER TABLE employee_tbl MODIFY(emp_id  varchar(10))

6.建立與刪除基表

                           (col_name  col_properties  constraint

                           ……

                           )

CREATETABLE 表名 ( 欄位名 型別,欄位名 型別,...... )

table_name表名

col_name   列名

建立臨時表:

                           (col_name  col_properties  constraint

                           ……

                           )

7. 給表填充資料

語法:

INSERT  INTO  table_name VALUES(value1,value2,…...)

例:

products_tbl:prod_id varchar(10)

                                        prod_desc  varchar(25)

                                        cost  number(6,2)

輸入資料:

INSERT INTO  products_tbl VALUES(‘7725’,’LEATHER’,26.99)   

8.Update已存在的資料

語法:

UPDATE table_name  SET column_name =‘value’  [WHERE condition]

例:UPDATE  products_tbl

                     SET prod_id = ‘1001’

                     WHERE prod_desc = ‘coat’

查看錶中索引 :

selectt.*,i.index_type from user_ind_columns t,user_indexes i where t.index_name =i.index_name and

t.table_name='INTEGRATED_FLD_VIEW'

9. DELETE 刪除表中資料

語法:

DELETE FROM  table_name

                             [WHERE condition]

例:DELETE FROM   products_tbl

                    WHERE  prod_ID = ‘1001’

10  Oracle查詢使用者所有表的語句

select * from all_tab_comments
-- 查詢所有使用者的表,檢視等

select * from user_tab_comments  
-- 查詢本使用者的表,檢視等

select * from all_col_comments
 

--查詢所有使用者的表的列名和註釋.

select * from user_col_comments
-- 查詢本使用者的表的列名和註釋

select * from all_tab_columns
--查詢所有使用者的表的列名等資訊(詳細但是沒有備註).

select * from user_tab_columns
--查詢本使用者的表的列名等資訊(詳細但是沒有備註).

--一般使用1:
select t.table_name,t.comments from user_tab_comments t

--一般使用2:
select r1, r2, r3, r5
from (select a.table_name r1, a.column_name r2, a.comments r3
          from user_col_commentsa),
       (select t.table_name r4, t.comments r5from user_tab_comments t)
where r4 = r1

以上就是oracle查詢使用者所有表的語句介紹。

如何在oracle中查詢所有使用者表的表名、主鍵名稱、索引、外來鍵等

1、查詢表的所有索引(包括索引名,型別,構成列):    select t.*,i.index_type from user_ind_columns t,user_indexes i where t.index_name = i.index_name and t.table_name = i.table_name and t.table_name = 要查詢的表

selectt.*,i.index_type from user_ind_columns t,user_indexes i where t.index_name =i.index_name and t.table_name = 要查的表2、查詢表的主鍵(包括名稱,構成列):    select cu.* from user_cons_columns cu, user_constraints au where cu.constraint_name = au.constraint_name and au.constraint_type = 'P' and au.table_name = 要查詢的表3、查詢表的唯一性約束(包括名稱,構成列):    select column_name from user_cons_columns cu, user_constraints au where cu.constraint_name = au.constraint_name and au.constraint_type = 'U' and au.table_name = 要查詢的表4、查詢表的外來鍵(包括名稱,引用表的表名和對應的鍵名,下面是分成多步查詢):    select * from user_constraints c where c.constraint_type = 'R' and c.table_name = 要查詢的表查詢外來鍵約束的列名:    select * from user_cons_columns cl where cl.constraint_name = 外來鍵名稱查詢引用表的鍵的列名:    select * from user_cons_columns cl where cl.constraint_name = 外來鍵引用表的鍵名
5
、查詢表的所有列及其屬性    select t.*,c.COMMENTS from user_tab_columns t,user_col_comments c where t.table_name = c.table_name and t.column_name = c.column_name and t.table_name = 要查詢的表