InterSystems IRIS使用python pyodbc连接 windows环境,odbc驱动安装,DSN配置,数据源配置
创始人
2025-01-08 07:07:19
0

一、创建的数据库和数据

SELECT 1   SELECT $ZVERSION   CREATE TABLE MyApp.Person (       ID INT PRIMARY KEY,       Name VARCHAR(100) NOT NULL,       Age INT,       Gender CHAR(1)   );   CREATE TABLE MyApp.Person2 (       ID INT PRIMARY KEY,       Name VARCHAR(100) NOT NULL,       Age INT,       Gender CHAR(1)   );      SELECT Table_Name FROM INFORMATION_SCHEMA.TABLES WHERE Table_Schema = 'MyApp';     INSERT INTO MyApp.Person (ID, Name, Age, Gender)  VALUES (1, 'John Doe', 30, 'M'); INSERT INTO MyApp.Person (ID, Name, Age, Gender)  VALUES (2, 'John Doe', 30, 'M'); INSERT INTO MyApp.Person (ID, Name, Age, Gender)  VALUES (3, 'John Doe', 30, 'M');     select * from  MyApp.Person

二、windows创建的dsn连接

1、dsn概念介绍

"DSN" 是数据源名称(Data Source Name)的缩写,是一个在计算机系统中用来标识和连接数据库或其他数据源的名称。DSN 是一种连接数据库的标准方法,通常用于在应用程序和数据库之间建立连接。

具体来说,DSN 包含了连接数据库所需的信息,如数据库类型、服务器地址、端口号、数据库名称、认证信息等。在使用 ODBC(Open Database Connectivity)或其他数据库连接工具时,可以通过指定 DSN 来简化连接配置过程,避免在每次连接时都重复输入连接信息。

创建 DSN 通常需要在操作系统的数据源管理工具中进行配置,将数据库的连接信息保存为一个 DSN。在应用程序中,可以直接引用这个 DSN 来建立与数据库的连接,而无需在代码中明确指定所有连接信息。

总的来说,DSN 提供了一种方便的方式来管理和使用数据库连接信息,使得连接数据库变得更加简单和灵活。

根据您提供的错误信息,问题仍然似乎是由于未找到数据源名称导致的。在这种情况下,您可以尝试手动创建一个 DSN(数据源名称),然后在连接字符串中使用这个 DSN。以下是一种方法:

2、手动创建 DSN


    - 在 Windows 操作系统中,您可以通过以下步骤手动创建 DSN:
     - 进入控制面板 > 管理工具 > 数据源(ODBC)
     - 在用户 DSN 或系统 DSN 选项卡中,点击“添加”按钮
     - 选择适当的驱动程序(InterSystems IRIS ODBC Driver 64-bit)
     - 配置连接信息(服务器、端口、数据库等)
     - 保存 DSN

 

3、python连接

代码中的dsn就是windows驱动配置的dsn名称

import pyodbc import time  dsn = 'TestDSN' username = '_SYSTEM' password = '123456'  cnxn = pyodbc.connect('DSN=' + dsn + ';UID=' + username + ';PWD=' + password)  cursor = cnxn.cursor() start = time.perf_counter()  # 执行查询 cursor.execute("SELECT * FROM MyApp.Person") row = cursor.fetchone() while row:     print(row)     row = cursor.fetchone()  end = time.perf_counter() print("Total elapsed time: ") print(end - start)  input("Hit any key to end") 

三、直接python中创建dsn

import pyodbc  # 定义连接信息 driver = '{InterSystems IRIS ODBC35}' server = '127.0.0.1' database = 'test' username = '_SYSTEM' password = '123456'  # 建立数据库连接 cnxn = pyodbc.connect(driver=driver, server=server, database=database, uid=username, pwd=password)  # 执行查询等操作 cursor = cnxn.cursor() cursor.execute("SELECT * FROM MyApp.Person") row = cursor.fetchone() while row:     print(row)     row = cursor.fetchone()  # 关闭连接 cnxn.close() 

相关内容

热门资讯

今天下午!微信老铁13水辅助,... 今天下午!微信老铁13水辅助,潮汕雀友会辅助,总结教程(有挂细节)-哔哩哔哩1、微信老铁13水辅助辅...
详情透视!xpoker辅助!分... 详情透视!xpoker辅助!分辨真假辅助攻略(有挂教程)-哔哩哔哩小薇(辅助器软件下载)致您一封信;...
据监测!欢游互动辅助,蜀山四川... 据监测!欢游互动辅助,蜀山四川破解好友版辅助,手册教程(有挂分析)-哔哩哔哩1、蜀山四川破解好友版辅...
科普透视!wepoker有没有... 科普透视!wepoker有没有插件!每日必看辅助攻略(今日头条)-哔哩哔哩1、操作简单,无需wepo...
据权威媒体报道!雀姬辅助器,四... 据权威媒体报道!雀姬辅助器,四川家园辅助软件,讲义教程(有挂技巧)-哔哩哔哩一、四川家园辅助软件可以...
专业透视!pokemmo辅助官... 专业透视!pokemmo辅助官网!玩家必看教程辅助神器(有挂头条)-哔哩哔哩1、进入到pokemmo...
普及透视!wepoker软件安... 普及透视!wepoker软件安装包!重大通报辅助技巧(真是有挂)-哔哩哔哩暗藏猫腻,小编详细说明we...
有消息称!衢州都莱有没有辅助器... 有消息称!衢州都莱有没有辅助器,钱塘十水三挂件,攻略教程(有挂教学)-哔哩哔哩衢州都莱有没有辅助器破...
关于透视!hhpoker德州牛... 关于透视!hhpoker德州牛仔视频!总算清楚辅助技巧(有挂解惑)-哔哩哔哩1、点击下载安装,hhp...
针对!天天微友辅助器通用版,广... 针对!天天微友辅助器通用版,广东雀神智能辅助照片,学习教程(有挂教学)-哔哩哔哩1、下载好天天微友辅...