PostgreSQL_數據回退,數據庫導出、導入

目錄

前置:

1?數據回退

1.1 代碼

1.2?pgAdmin4?中查看

1)t_daily

2) t_stock_daily

2?數據庫導出、導入?


前置:

本博文是一個系列。在本人“數據庫專欄”-》“PostgreSQL_”開頭的博文。

1?數據回退

上一節“PostgreSQL_數據下載并保存(psycopg2)”,保存了 2023年7月11日?至 2025年2月13日?的數據。任意取一個日期,比如2025年1月10日,回退到這個日期。

1.1 代碼

def rollback_to_day_before(date_str:str):conn = connect_db()'''t_stock_daily1 找出每只股票 date_str 對應的索引位置2 遍歷 update 表格'''cur = conn.cursor()# 傳入的 date_str 可能不是交易日,如果不是交易日要找到最靠近 date_str 之前的交易日sql_q_m_str = f"select max(tradeDateOj) from t_daily where tradeDateOj <= \'{date_str}\';"cur.execute(sql_q_m_str)res0 = cur.fetchone()date_str0 = res0[0].strftime('%Y-%m-%d')sql_query_str = f"select ticker,array_position(tradeDate,\'{date_str0}\') from t_stock_daily;"cur.execute(sql_query_str)res = cur.fetchall()sql_update_str = """update t_stock_daily set tradeDate=tradeDate[1:%s],openPrice=openPrice[1:%s],highestPrice=highestPrice[1:%s],lowestPrice=lowestPrice[1:%s],closePrice=closePrice[1:%s],turnoverVol=turnoverVol[1:%s],turnoverValue=turnoverValue[1:%s],dealAmount=dealAmount[1:%s],turnoverRate=turnoverRate[1:%s],negMarketValue=negMarketValue[1:%s],marketValue=marketValue[1:%s],chgPct=chgPct[1:%s],PE=PE[1:%s],PE1=PE1[1:%s],PB=PB[1:%s],isOpen=isOpen[1:%s],vwap=vwap[1:%s] where ticker=%s;"""# 刪除 t_daily date_str之后的數據sql_delete_str = f"delete from t_daily where tradeDateOj>\'{date_str}\';"data_list = []for one in res:one_node = (one[1],one[1],one[1],one[1],one[1],one[1],one[1],one[1],one[1],one[1],one[1],one[1],one[1],one[1],one[1],one[1],one[1],one[0])data_list.append(one_node)passtry:cur.executemany(sql_update_str,data_list)cur.execute(sql_delete_str)conn.commit()except Exception as e:print(f'error:{e}')conn.rollback()finally:cur.close()conn.close()pass

1.2?pgAdmin4?中查看

1)t_daily

2) t_stock_daily

select tradeDate[array_length(tradeDate,1)],openPrice[array_length(openPrice,1)],highestPrice[array_length(highestPrice,1)],lowestPrice[array_length(lowestPrice,1)],closePrice[array_length(closePrice,1)],turnoverVol[array_length(turnoverVol,1)],turnoverValue[array_length(turnoverValue,1)],dealAmount[array_length(dealAmount,1)],turnoverRate[array_length(turnoverRate,1)],negMarketValue[array_length(negMarketValue,1)],marketValue[array_length(marketValue,1)],chgPct[array_length(chgPct,1)],PE[array_length(PE,1)],PE1[array_length(PE1,1)],PB[array_length(PB,1)],isOpen[array_length(isOpen,1)],vwap[array_length(vwap,1)] from t_stock_daily where ticker='000001';

2?數據庫導出、導入?

導出

1?打開cmd

2 cd?到postgreSQL安裝目錄的bin目錄

執行?

pg_dump -U postgres -h 127.0.0.1 -p 5432 -F c -b -v -f E:/db_stock.dump db_stock

注意:“E:/db_stock.dump”換成自己的路徑;?db_stock換成要導出的數據庫名

導入

?

1?打開cmd

2 cd?到postgreSQL安裝目錄的bin目錄

執行?

dropdb -U postgres -h 127.0.0.1 -p 5432 db_stock

createdb -U postgres -h 127.0.0.1 -p 5432 db_stock

pg_restore -U postgres -h 127.0.0.1 -p 5432 -d db_stock -v D:/db_stock.dump

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/74104.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/74104.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/74104.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

golang單機鎖實現

1、鎖的概念引入 首先&#xff0c;為什么需要鎖&#xff1f; 在并發編程中&#xff0c;多個線程或進程可能同時訪問和修改同一個共享資源&#xff08;例如變量、數據結構、文件&#xff09;等&#xff0c;若不引入合適的同步機制&#xff0c;會引發以下問題&#xff1a; 數據競…

【HarmonyOS Next】鴻蒙應用實現彈框DialogHub詳解

【HarmonyOS Next】鴻蒙應用實現彈框DialogHub詳解 一、前言 鴻蒙中實現彈框目前官方提供openCustomDialog和CustomDialog兩種模式。推薦前者&#xff0c;詳情見下圖和官網文檔鏈接&#xff1a; https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V14/arkts-u…

機器學習算法實戰——天氣數據分析(主頁有源碼)

?個人主頁歡迎您的訪問 ?期待您的三連 ? ?個人主頁歡迎您的訪問 ?期待您的三連 ? ?個人主頁歡迎您的訪問 ?期待您的三連? ? ??? 1. 引言 天氣數據分析是氣象學和數據科學交叉領域的一個重要研究方向。隨著大數據技術的發展&#xff0c;氣象數據的采集、存儲和分…

輸電線路專業英語詞匯

輸電線路transmission line 雙回路double circuit 導線conductor 地線ground &#xff08;Earth&#xff09;wire 雙回路耐張塔double-circuit tension towers 直線塔tangent tower 地質Geological 水文Hydrological 塔位坐標Coordinate of Tower Location 轉角塔angle tower 直…

炫酷的3D按鈕效果實現 - CSS3高級特性應用

炫酷的3D按鈕效果實現 - CSS3高級特性應用 這里寫目錄標題 炫酷的3D按鈕效果實現 - CSS3高級特性應用項目介紹核心技術實現1. 基礎結構設計2. 視覺效果實現2.1 背景漸變2.2 立體感營造 3. 交互動效設計3.1 懸停效果3.2 按壓效果 技術要點分析1. 深度層次感2. 動畫過渡3. 性能優…

解決python配置文件類configparser.ConfigParser,插入、讀取數據,自動轉為小寫的問題

配置類 [Section1] Key_AAA Value[Section2] AnotherKey Value默認情況下&#xff0c;ConfigParser會將ini配置文件中的KEY&#xff0c;轉為小寫。 重載后配置類&#xff1a; 繼承類從configparser.ConfigParser改為configparser.RawConfigParser重載方法optionxform&#…

微服務的網關配置

微服務的網關配置 1. 網關路由 1.1 網關 1.1.1 存在問題 單體架構時我們只需要完成一次用戶登錄、身份校驗&#xff0c;就可以在所有業務中獲取到用戶信息。而微服務拆分后&#xff0c;每個微服務都獨立部署&#xff0c;這就存在一些問題&#xff1a;每個微服務都需要編寫身…

【硬核實戰】ETCD+AI智能調度深度整合!從架構設計到調優避坑,手把手教你打造高可用調度系統!

一、核心架構設計&#xff1a;ETCD如何賦能AI調度&#xff1f; &#x1f525; 架構圖&#xff1a; [AI調度引擎] ← 實時數據 → [ETCD集群] ↓ 決策指令 [執行層&#xff08;車輛/物流/交通設備&#xff09;] 核心角色&#xff1a; ETCD&#xff1a;存儲調度策略、節點狀…

區間震蕩指標

區間震蕩指標的邏輯如下&#xff1a; 一、函數注解 1. Summation函數 功能&#xff1a; 計算給定價格序列Price的前Length個數據點的和&#xff0c;或在數據點數量超過Length時&#xff0c;計算滾動窗口內的價格和。 參數&#xff1a; Price(1)&#xff1a;價格序列&#…

C語言-數組指針和指針數組

指針 數組指針與指針數組 數組指針 定義 概念&#xff1a;數組指針是指向數組的指針&#xff0c;本質上還是指針 特點&#xff1a; ①先有數組&#xff0c;后有指針 ②它指向的是一個完整的數組 一維數組指針 語法&#xff1a; 數據類型 (*指針變量名)[容量]; 案例&a…

31天Python入門——第5天:循環那些事兒

你好&#xff0c;我是安然無虞。 文章目錄 1. while循環1.1 while循環的嵌套1.2 補充學習:print函數 2. for循環2.1 range函數2.2 for循環2.3 continue和break以及return2.4 for循環的嵌套 3. 補充學習3.1 enumerate函數3.2 zip函數3.3 不要在遍歷列表的過程中刪除元素 循環 是…

T3 出行:網約車全棧分布式數據庫升級實踐

現今&#xff0c;網約車已成為民眾日常出行不可或缺的選擇。伴隨“互聯網出行”模式的快速推進&#xff0c;龐大的出行數據應運而生&#xff0c;如同構建了城市交通系統的數字神經脈絡。與此同時&#xff0c;對高效數據存儲與深入數據分析的需求也在持續攀升。 T3 出行于2019年…

區塊鏈技術在供應鏈管理中的應用與創新

在當今全球化的商業環境中&#xff0c;供應鏈管理的復雜性與日俱增。從原材料采購到最終產品交付&#xff0c;涉及眾多環節和參與者&#xff0c;信息的透明度、準確性和安全性至關重要。區塊鏈技術的出現&#xff0c;為供應鏈管理帶來了全新的解決方案&#xff0c;正在逐步改變…

藍橋每日打卡--打家劫舍4

#藍橋#JAVA#打家劫舍4 題目描述 沿街有一排連續的房屋。每間房屋內都藏有一定的現金。現在有一位小偷計劃從這些房屋中竊取現金。 由于相鄰的房屋裝有相互連通的防盜系統&#xff0c;所以小偷 不會竊取相鄰的房屋 。 小偷的 竊取能力 定義為他在竊取過程中能從單間房屋中竊…

c#難點整理

1.何為托管代碼&#xff0c;何為非托管代碼 托管代碼就是.net框架下的代碼 非托管代碼&#xff0c;就是非.net框架下的代碼 2.委托的關鍵知識點 將方法作為參數進行傳遞 3.多維數組 4.鋸齒數組 5.多播委托的使用 6.is運算符 相當于邏輯運算符是 7.as 起到轉換的作用 8.可…

Nginx代理本機的443到本機的8080端口

1. 準備工作 確認已生成 IP 的 HTTPS 證書 假設你已通過 mkcert 生成證書&#xff08;如 192.168.199.191.pem 和 192.168.199.191-key.pem&#xff09;&#xff0c;并已安裝 CA 證書&#xff08;運行過 mkcert -install&#xff09;。 Nginx 安裝 ? 若未安裝 Nginx&#…

善用批處理的for命令倍增效率(附彩蛋:windows官方bug)

前言 在我們工作中,如果使用Windows系統,善用批處理命令,特別是在批量的文件處理,文本處理時能幫助我們極大地提升工作效率,起到事半功倍的效果! 但很多同學,對批處理的使用更多還停留在可以將多個command命令組合到一起執行,省去重復敲命令和等待的時間。這個其實只…

數據結構之棧的2種實現方式(順序棧+鏈棧,附帶C語言完整實現源碼)

對于邏輯關系為“一對一”的數據&#xff0c;除了用順序表和鏈表存儲外&#xff0c;還可以用棧結構存儲。 棧是一種“特殊”的線性存儲結構&#xff0c;它的特殊之處體現在以下兩個地方&#xff1a; 1、元素進棧和出棧的操作只能從一端完成&#xff0c;另一端是封閉的&#xf…

Camera2 API拍照失敗問題實錄:從錯誤碼到格式轉換的排坑之旅

一、問題背景 在開發基于Camera2 API的相機應用時&#xff0c;我們遇到了一個棘手的問題&#xff1a;預覽功能在所有設備上工作正常&#xff0c;但在某特定安卓設備上點擊拍照按鈕后無任何響應。值得注意的是&#xff0c;使用舊版Camera API時該設備可以正常拍照。本文記錄了完…

Jmeter舊版本如何下載

1.Jmeter最新版本下載位置 https://jmeter.apache.org/download_jmeter.cgi2.Jmeter舊版本下載位置 https://archive.apache.org/dist/jmeter/binaries穩定版本&#xff1a;5.4.1