網站首頁 編程語言 正文
一、將數據寫入opengauss
前提準備:
成功opengauss數據庫,并創建用戶jack,創建數據庫datasets。
數據準備:
所用數據以csv格式存在本地,編碼格式為GB2312。
數據存入:
開始hello表未存在,那么執行程序后,系統會自動創建一個hello表(這里指定了名字為hello);
若hello表已經存在,那么會增加數據到hello表。列名需要與hello表一一對應。
# 加載必要的python庫
from sqlalchemy import create_engine
import pandas as pd
?
# 從本地讀入數據
df = pd.read_csv("E:/jiema.csv",low_memory=False,encoding='gb2312')
?
#創建數據庫引擎
#create_engine說明:driver://user:password@host:port/dbname
engine = create_engine('postgresql://jack:gauss@111@192.168.80.130:26000/datasets')
?
#寫入數據
try:
? ? df.to_sql('hello',engine,index=False,if_exists='append') ?#hello為創建的數據庫表名字
except Exception as e:
? ? print(e)
使用navicat查看效果:
二、python條件查詢opengauss數據庫中文列名的數據
問題:
由于項目要求,數據庫中的列名都是以中文命名的,導致在后期查詢的時候出現了很多問題。
解決方法:
?整條SQL語句需要用單引號包裹,中文列名需要用雙引號包裹起來。
import psycopg2
?
def dataFromDB(sql):
? ? # 連接數據庫
? ? conn = psycopg2.connect(database='datasets', user='jack', password='gauss@111', host='192.168.80.130', port='26000')
? ? curs = conn.cursor()
?
? ? # 編寫Sql,只取前兩行數據
? ? # sql = 'select * from table_name limit 2'
?
? ? # 數據庫中執行sql命令
? ? curs.execute(sql)
? ? # 獲得數據
? ? data = curs.fetchall()
? ? print(data)
?
? ? # 關閉指針和數據庫
? ? curs.close()
? ? conn.close()
?
sql ='SELECT "遙測參數2", "遙測參數2路溫度" from source2decode where "工程參數.源地址" =26 '
?
dataFromDB(sql)
原文鏈接:https://blog.csdn.net/qq_38029916
相關推薦
- 2023-09-17 el-table嵌入輸入框下拉框按鈕等等
- 2022-12-23 kotlin延遲初始化和密封類詳細講解_Android
- 2022-04-17 C語言?動態內存管理全面解析_C 語言
- 2022-10-16 pytorch中.numpy()、.item()、.cpu()、.detach()以及.data的使
- 2022-12-29 React控制元素顯示隱藏的三種方法小結_React
- 2022-04-18 Taro中設置 tabbar上的徽章。
- 2022-09-24 基于Pytorch實現邏輯回歸_python
- 2023-07-16 spring boot 支持跨域配置
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支