代码之家  ›  专栏  ›  技术社区  ›  Oli

列出表名

  •  1
  • Oli  · 技术社区  · 17 年前

    我正在尝试将我的ASPNET站点迁移到Django。我当前的所有数据都绑定在共享主机上的MS SQL Server中,该主机(有益)不支持python。..我可以使用现有的代码导出所有数据,但我也停止使用Windows。这个网站主要是用VB.NET编译的,所以我需要安装Windows和Visual Studio,然后弄清楚我想做什么……我不喜欢这个计划。

    而不是通过 令人头疼的是,我想使用PHP将整个数据库(或一次一个表)导出为JSON。Python中的SimpleJSON将使导入变得非常容易,所以它看起来像是一个计划。

    到目前为止,一切顺利。在PHP中,我设法连接到SQL Server并执行简单的查询,但我需要一个表列表,这样我就知道需要复制哪些数据。我想要所有的表,因为有大约三年前我重写网站时的遗留表,我想把这些数据保存在某个地方。..

    所以第一件事: 有人知道列出所有表的SQL查询吗?

    我试过了 mssql_query('sp_tables'); 但这会返回一个奇怪的列表:

    mydatabasename
    mydatabasename
    dbo
    dbo
    syscolumns
    syscolumns
    SYSTEM TABLE
    SYSTEM TABLE
    

    其次:在您看来,我最好将每个表转储写入自己的.json文件,还是将其全部保存在一起?

    第三:我走错方向了吗?

    3 回复  |  直到 17 年前
        1
  •  6
  •   cmsjr    17 年前
    Select table_name from information_schema.tables
    

    对于任何给定的表,您都可以通过以下方式获取元数据

    sp_help tablename
    
        2
  •  1
  •   serenesat    11 年前

    您可以使用以下方式进行查询:

    SHOW TABLES;
    

    (您需要选择 DB 在此之前)

        3
  •  0
  •   Deepu T    12 年前

    你可以试试这个

    SELECT * FROM information_schema.tables