• Python与数据库[1] -> 数据库接口/DB-API[2] -> SQL Server 适配器


    SQL_Server适配器 / SQL_Server Adapter


    1 环境配置 / Environment Configuration

    安装SQL_Server的Python适配器包

    pip install pymssql  

    Note: 此处采用远程数据库服务器,因此未安装本地SQL_Server

    2 SQL_Server实例 / SQL_Server Examples

    由于远程数据库账号仅具有读取权限,因此此处示例基本以读取为主。

    查看数据库 / Show Database

    利用适配器的基本函数登录远程数据库服务器,并查看服务器中数据库名称,表名称等信息。

     1 import pymssql as ms
     2 def execute(cur, sql, *args):
     3     cur.execute(sql, *args)
     4     re = cur.fetchall()
     5     return re
     6 
     7 def show():
     8     cnx = ms.connect(host='host', user='user', password='password', database='db', charset='UTF-8')
     9     
    10     cur = cnx.cursor()
    11     
    12     print('{:-^30}'.format('DATABASES'))
    13     # Show the database in sys
    14     re = execute(cur, "SELECT * FROM sys.databases")
    15     
    16     # Show custom databases
    17     # re = execute(cur, "SELECT * FROM sys.databases WHERE name NOT IN ('master', 'tempdb', 'model', 'msdb')")
    18     for db in re:
    19         try:
    20             # Select databases
    21             cur.execute("USE %s" % db[0])
    22         except:
    23             continue
    24         # Show tables
    25         re = execute(cur, "SELECT * FROM information_schema.TABLES")
    26     
    27         for i in re:
    28             print(i)
    29     
    30     cur.execute('USE ITP')
    31     print('{:-^30}'.format('TABLES'))
    32     re = execute(cur, "SELECT * FROM information_schema.TABLES")
    33     for tb in re:
    34         print('
    {:-^30}'.format('TABLE CONTENTS'))
    35         print(tb)
    36         print('{:-^30}'.format('%s' % tb[2]))
    37         re = execute(cur, "SELECT * FROM information_schema.COLUMNS WHERE TABLE_NAME='%s'" % tb[2])
    38         for cl in re:
    39             print(cl)
    40 
    41 def foo(gen):
    42     [print(x, end='
    
    ') for x in gen]
    43 
    44 if __name__=='__main__':
    45     show()

    第 2-4 行,首先定义一个执行函数,利用传入的游标执行SQL语句

    第 7-39 行,定义一个显示函数,其中sys.databases中存放了所有数据库的名称信息,show函数会将所有database的信息显示出来,并查看db表的信息

    此处的数据库信息均已隐藏,可以看出,无论是SQL_Server还是MySQL,利用适配器进行操作时,基本原理都是相同的,只有部分SQL语句不同。

    相关阅读


    1. 使用 Python 建立 MySQL 适配器

     2. DB-API 通用标准

  • 相关阅读:
    win10系统u盘安装单个文件超过4g解决办法
    单片机下使用IIC
    uart
    socket
    Linux中 ./configure --prefix命令
    linux下配置安装python3
    linux下的dhcp服务器实现
    安卓出现错误: java.lang.ClassCastException: android.widget.TextView cannot be cast to android.widget.EditText
    C语言基础02
    C语言基础01
  • 原文地址:https://www.cnblogs.com/stacklike/p/8178861.html
Copyright © 2020-2023  润新知