趙宗濤 李艾芳
(1.西安思源學(xué)院電子信息工程學(xué)院,陜西 西安 710038;2.菲律賓永恒大學(xué),菲律賓 1740)
數(shù)據(jù)庫自計算機(jī)誕生以來,就一直伴隨著信息技術(shù)的發(fā)展而進(jìn)步,被廣泛應(yīng)用于數(shù)據(jù)處理與分析之中。數(shù)據(jù)庫編程技術(shù)本質(zhì)上就是計算機(jī)從業(yè)人員運用編程技術(shù)與編程語言對數(shù)據(jù)庫進(jìn)行操作,充分保證數(shù)據(jù)庫內(nèi)部信息的安全性和完整性,確保數(shù)據(jù)系統(tǒng)和線上軟件可以正常運行,極大地提升了工作效率和工作水平,更好地實現(xiàn)了對信息的有序管理[1]。隨著計算機(jī)技術(shù)的發(fā)展,數(shù)據(jù)庫管理技術(shù)和管理手段也需要進(jìn)行相應(yīng)的提升和優(yōu)化,進(jìn)一步深入剖析數(shù)據(jù)庫編程技術(shù)的核心,不斷完善數(shù)據(jù)庫的核心服務(wù)和管理功能,從多個方面入手,開發(fā)出更高效的計算機(jī)軟件工程數(shù)據(jù)庫管理系統(tǒng),強化信息技術(shù)對各行各業(yè)的支持深度,進(jìn)一步發(fā)揮信息技術(shù)的應(yīng)用價值。
計算機(jī)軟件工程中的數(shù)據(jù)庫編程技術(shù)主要指運用一系列編程方法,采用面向?qū)ο蟮木幊谭绞?,更好地搭建?shù)據(jù)分析管理系統(tǒng),確保相關(guān)線上平臺的正常運行。計算機(jī)技術(shù)的飛速發(fā)展,使得數(shù)據(jù)庫編程技術(shù)和編程方法逐漸多樣化,促使數(shù)據(jù)的處理效率和處理總量不斷提升,從根本上改變了數(shù)據(jù)庫的應(yīng)用范圍和使用水平。在計算機(jī)軟件的發(fā)展過程中,數(shù)據(jù)庫平臺為相關(guān)人員處理問題提供了更加簡明的解決方法。數(shù)據(jù)庫編程技術(shù)的特點如圖1所示。
圖1 數(shù)據(jù)庫編程技術(shù)特點
數(shù)據(jù)庫編程技術(shù)保證了計算機(jī)內(nèi)部數(shù)據(jù)的安全性和穩(wěn)定性,運營人員不必?fù)?dān)心突發(fā)情況的發(fā)生導(dǎo)致數(shù)據(jù)丟失,可以更有針對性地處理和分析軟件運行中產(chǎn)生的問題,進(jìn)一步保證用戶的數(shù)據(jù)信息安全。編程技術(shù)的進(jìn)步提升了數(shù)據(jù)庫的鑒權(quán)功能,豐富了數(shù)據(jù)庫的鑒權(quán)手段,運營人員可以采取登錄驗證、密碼口令、人臉識別等多種方法實現(xiàn)對數(shù)據(jù)庫信息安全的保障,在多個維度上保證用戶的信息不被泄露。
數(shù)據(jù)庫的新型編程技術(shù)基本上都采用先進(jìn)的匿名鑒權(quán)手段,幫助有效信息更好地進(jìn)行隱藏。在數(shù)據(jù)庫的通信過程中,通常采用加密訪問來操作相對應(yīng)的端口,通過設(shè)置一系列驗證方式和VPN代理等方式,將原有的TCP、UDP通信方式進(jìn)一步通過加密的SSL方式進(jìn)行傳輸。同時還積極借助計算機(jī)內(nèi)網(wǎng)技術(shù)和NAT技術(shù)等隱蔽主機(jī)的方法,進(jìn)一步隱藏數(shù)據(jù)庫的真實網(wǎng)絡(luò)地址,從而更好地保護(hù)數(shù)據(jù)庫信息。
數(shù)據(jù)庫的編程技術(shù)還充分考慮了不同系統(tǒng)之間的兼容性和完整性。采用數(shù)據(jù)庫進(jìn)行編程,不必考慮常用系統(tǒng)存在不兼容的問題,由于數(shù)據(jù)庫通常是運行在服務(wù)器上,因此只需要將之前的數(shù)據(jù)庫進(jìn)行導(dǎo)入,就可以完成數(shù)據(jù)庫的遷移與更新[2]。對于內(nèi)部的數(shù)據(jù)表與關(guān)系而言,數(shù)據(jù)庫編程技術(shù)中已經(jīng)充分考慮到對數(shù)據(jù)的聯(lián)合存儲,即便將上百萬級數(shù)據(jù)放在一個數(shù)據(jù)庫中,數(shù)據(jù)庫也可以很好地保護(hù)其中數(shù)據(jù)的完整性不被破壞。
計算機(jī)軟件的高速運行,是建立在數(shù)據(jù)庫的高效查詢和調(diào)用的基礎(chǔ)上的。軟件本質(zhì)上就是對數(shù)據(jù)庫的數(shù)據(jù)信息進(jìn)行增刪改查。數(shù)據(jù)庫的應(yīng)用推動了數(shù)據(jù)信息的優(yōu)化處理,進(jìn)一步提高了用戶體驗的舒適程度。優(yōu)化數(shù)據(jù)庫的內(nèi)部使用空間,將不需要或過期的數(shù)據(jù)刪除,保證了用戶所獲得數(shù)據(jù)的正確性和有效性,在原有文件處理系統(tǒng)的基礎(chǔ)上大大提升了數(shù)據(jù)使用的速度,實現(xiàn)了計算機(jī)運行效率的提升。
盡管計算機(jī)軟件工程發(fā)展迅速,但是現(xiàn)有的數(shù)據(jù)庫編程技術(shù)在許多方面還存在著不足。如用戶在實際使用功能性軟件的過程中,受制于傳統(tǒng)的指令傳遞方式,需按照“發(fā)出指令—傳遞指令—分析指令—調(diào)用數(shù)據(jù)—計算數(shù)據(jù)—返回數(shù)據(jù)—返回指令—顯示結(jié)果”這一套流程,嚴(yán)重影響了系統(tǒng)軟件的運行速度。數(shù)據(jù)庫內(nèi)部的編程語言查詢數(shù)據(jù)的效率還不夠高,無法滿足用戶對及時性和便捷性的需求,對于一些復(fù)雜結(jié)果無法給出相對應(yīng)的計算值,容易陷入死循環(huán)的情況。因而,需要對數(shù)據(jù)庫編程技術(shù)的功能進(jìn)一步深挖,提升查詢速度,有效整合相近信息,充分拓展數(shù)據(jù)之間的聯(lián)系,降低計算機(jī)的內(nèi)部損耗。同時,也需要從根本上總結(jié)分析計算機(jī)軟件工程項目的管理經(jīng)驗,從項目規(guī)劃入手,對整個軟件的詳細(xì)功能和生存周期做出詳盡的規(guī)劃判斷。要充分考慮技術(shù)的升級換代,預(yù)留相關(guān)數(shù)據(jù)接口,為以后更新奠定基礎(chǔ),進(jìn)一步提高數(shù)據(jù)的整合程度和關(guān)聯(lián)程度,切實提高用戶的使用體驗[3]。另外,計算機(jī)軟件工程對存儲的要求比較高,需要積極拓展數(shù)據(jù)庫存儲空間,同時在異地備份、雙向備份和鏡像管理上下功夫,真正將原有單一的數(shù)據(jù)模式升級為多方位立體化的數(shù)據(jù)庫管理系統(tǒng)。
計算機(jī)軟件工程中,數(shù)據(jù)庫編程技術(shù)的應(yīng)用主要分為四個方面,分別是加密保護(hù)、模式優(yōu)化、編程分析和開發(fā)設(shè)計(如圖2)。由于當(dāng)前普遍應(yīng)用的數(shù)據(jù)庫和相關(guān)編程技術(shù)都是國外技術(shù),國內(nèi)對相關(guān)技術(shù)的引進(jìn)和推廣還需一定時間,這就對數(shù)據(jù)庫的更新和開發(fā)提出了新的挑戰(zhàn)。數(shù)據(jù)庫編程技術(shù)的應(yīng)用不僅僅是編程語言的運用過程,也是數(shù)據(jù)的使用與實踐過程。將數(shù)據(jù)庫編程技術(shù)的效果最大化,積極結(jié)合實際情況,把握用戶真正關(guān)心的內(nèi)容,才能更好地完成用戶體驗的提升。要科學(xué)有效地架設(shè)相關(guān)系統(tǒng)平臺,基于用戶的意見積極整改,以更好的質(zhì)量兼容不同平臺和不同設(shè)備,進(jìn)而全面提升軟件設(shè)計的效果與功能。
圖2 數(shù)據(jù)庫編程技術(shù)應(yīng)用
在數(shù)據(jù)庫的安全運行和維護(hù)過程中,對文件的加密保護(hù)是十分重要的一個環(huán)節(jié)。利用數(shù)據(jù)庫的編程方法進(jìn)行加密保護(hù)的主要途徑就是提高登錄口令的復(fù)雜性,實時改變登錄時的驗證方式,從而防止數(shù)據(jù)庫有效信息泄露。隨著科學(xué)技術(shù)的發(fā)展,越來越多的指標(biāo)受到數(shù)字化方法的評估和存儲,計算機(jī)軟件工程中,如果泄露了一些關(guān)鍵信息,后果將是不堪設(shè)想的。因此,需要運用相關(guān)的數(shù)據(jù)庫編程技術(shù)對文件和數(shù)據(jù)進(jìn)行加密。
在實際運用過程中,數(shù)據(jù)庫編程手段主要采取分層加密和逐步鑒權(quán)的方式,即將數(shù)據(jù)庫文件分為不同的加密等級,通過比較鑒權(quán)口令,讓管理員和用戶獲得相關(guān)數(shù)據(jù)的操縱權(quán)和控制權(quán)。對于一些核心保護(hù)數(shù)據(jù),用戶可以自行選擇登錄等級和登錄方式,結(jié)合實際操作確定用戶的管理等級,及時更新用戶的操作行為和登錄地點。當(dāng)出現(xiàn)非常規(guī)登錄方式時,要及時進(jìn)行人臉驗證或手機(jī)驗證,保證是用戶本人在進(jìn)行操作。同時,積極更新相關(guān)登錄方式,改變常用的數(shù)據(jù)庫登錄端口,能更好地隱藏實際登錄地址。在進(jìn)行數(shù)據(jù)的高權(quán)限操作時,需要管理員和用戶上傳私鑰文件,核對登錄密碼。出現(xiàn)多次非法登錄后,數(shù)據(jù)庫可以進(jìn)一步采取限制相關(guān)IP地址登錄的方式來限制對數(shù)據(jù)庫的破解攻擊,逐步延長封禁的時間和頻率,在必要時可以完全關(guān)閉數(shù)據(jù)庫的基本對外接口,等待較長的時間后才可重新嘗試連接[4]。數(shù)據(jù)庫編程技術(shù)也開發(fā)了相對應(yīng)的防破解保護(hù)層,可以有效地防止DDOS對數(shù)據(jù)庫的飽和式攻擊,進(jìn)一步保護(hù)核心有效數(shù)據(jù),同時找出攻擊者所在的IP地址,積極破解相關(guān)的違法犯罪行為。數(shù)據(jù)庫存儲的編碼格式也有所改變,采用64位嚴(yán)格加密方式,完全的遍歷式破解需要上百年,即使入侵者獲得了相關(guān)數(shù)據(jù),也不能準(zhǔn)確獲得其中的信息,這進(jìn)一步提升了數(shù)據(jù)的安全性。在對數(shù)據(jù)庫文件進(jìn)行加密和保護(hù)的過程中,相關(guān)技術(shù)人員也需要充分考慮不同系統(tǒng)的兼容性,考慮編碼的適用范圍,更新編碼加密手段,從系統(tǒng)層面優(yōu)化數(shù)據(jù)庫加密方式,讓數(shù)據(jù)庫編程技術(shù)既可以很好地保護(hù)加密相關(guān)核心數(shù)據(jù),又不會降低用戶的實際體驗感。
數(shù)據(jù)庫的存儲功能設(shè)計應(yīng)當(dāng)積極考慮數(shù)據(jù)庫的使用范圍和使用方法,進(jìn)一步優(yōu)化軟件層面和數(shù)據(jù)庫層面的交互邏輯,提升整個計算機(jī)軟件工程的穩(wěn)定性和高效性。對于潛在的風(fēng)險要及時預(yù)防,并針對性地提出解決方案,還要針對突發(fā)的宕機(jī)做足預(yù)案,做好基本數(shù)據(jù)的備份與鏡像工作,構(gòu)建多臺數(shù)據(jù)庫之間的負(fù)載均衡功能。在軟件的設(shè)計過程中,要從軟件的基本功能入手,選擇合適的數(shù)據(jù)庫編程技術(shù),運用相關(guān)計算機(jī)的項目管理方式,對數(shù)據(jù)庫內(nèi)部的編程方法進(jìn)行優(yōu)化,提高軟件的運行速度和反饋速度,積極思考軟件的可拓展性,不斷提升軟件的實際價值。在數(shù)據(jù)庫的編程技術(shù)中,對于運行中產(chǎn)生的碎片也要及時整理,刪除不需要的文件垃圾。另外,數(shù)據(jù)庫管理系統(tǒng)也要及時升級相關(guān)軟件補丁,預(yù)防軟件系統(tǒng)中可能存在的漏洞。積極采取創(chuàng)新的方式對計算資源進(jìn)行優(yōu)化,采取多種分類和篩選方法,提升數(shù)據(jù)庫的運行效率,構(gòu)建合理的數(shù)據(jù)選取和更改路程,創(chuàng)新發(fā)展計算機(jī)軟件層面的系統(tǒng)性框架,充分利用數(shù)據(jù)庫中的運算資源,降低管理員的運維難度。
積極構(gòu)建軟件系統(tǒng)和硬件系統(tǒng)的交互反饋平臺,提升數(shù)據(jù)庫對軟件層的支撐效果,發(fā)展現(xiàn)代化的信息數(shù)據(jù)文件訪問流程。針對軟件的不同操作命令,分門別類地采取不同的訪問和操作手段,創(chuàng)新發(fā)展數(shù)據(jù)庫編程方式,將多種現(xiàn)有技術(shù)有效地整合統(tǒng)一,協(xié)調(diào)計算機(jī)的不同部分完成軟件任務(wù)。在實際操作中,可以多種數(shù)據(jù)編程技術(shù)結(jié)合的方式提升數(shù)據(jù)庫的運行效率,例如可以應(yīng)用Access軟件提升PC端的數(shù)據(jù)庫編程效率。在服務(wù)器端進(jìn)行編程操作時,可以采用MySQL數(shù)據(jù)庫存儲方式,運用phpMyAdmin等軟件對數(shù)據(jù)庫內(nèi)容進(jìn)行修改和完善,進(jìn)一步提升數(shù)據(jù)庫的并發(fā)性能,降低數(shù)據(jù)庫占用的系統(tǒng)性能,提升數(shù)據(jù)庫的運行效率,更好地操縱數(shù)據(jù)庫的內(nèi)部邏輯和內(nèi)部關(guān)系。切實提升數(shù)據(jù)庫的應(yīng)用場景和應(yīng)用范圍,將現(xiàn)代化項目管理技術(shù)和管理經(jīng)驗運用到數(shù)據(jù)庫的管理之中,提升數(shù)據(jù)庫在實際工作中的運行效率,降低管理員的工作難度,利用多種有效措施增強數(shù)據(jù)庫的編程效果和使用效果。
在數(shù)據(jù)庫管理系統(tǒng)的實際運行中,運營維護(hù)人員需要選擇合理的編程技術(shù)對數(shù)據(jù)庫內(nèi)部的語句進(jìn)行編寫和策劃,對不同編程語言的應(yīng)用場景進(jìn)行分析,合理地使用相關(guān)編程工具框架,以合理高效的編程思維,進(jìn)一步優(yōu)化數(shù)據(jù)庫的編程方法。在實際編程工作中,程序員需要根據(jù)應(yīng)用場景和客戶需要,結(jié)合不同編程語言的使用方法和使用場景,有針對性地選擇相對應(yīng)的編程語言。目前,數(shù)據(jù)庫中常用的語言包括C++、Java、Python等,不同編程語言具有不同的特點,因此需要根據(jù)運行效果進(jìn)一步選擇。C++編程語言較為適合大型數(shù)據(jù)庫的編程與運營,廣泛應(yīng)用于數(shù)據(jù)庫的基本編程之中。Java語言則是軟件設(shè)計中的通用語言,編程效率高,穩(wěn)定性好,便于后續(xù)的進(jìn)一步拓展和開發(fā)。Python語言是“萬能的膠水語言”,操作較為簡單,被廣泛應(yīng)用于數(shù)據(jù)庫的接口部分,便于不同編程語言之間傳遞信息[5]。不同編程語言的詳細(xì)參數(shù)如表1所示。
表1 不同編程語言的詳細(xì)參數(shù)
在這種情況下,需要編程管理人員更好地關(guān)注數(shù)據(jù)庫的信息傳輸和信息操縱功能,確保不同編程語言的平穩(wěn)有序運行,提升數(shù)據(jù)庫級別的系統(tǒng)穩(wěn)定性,對于出現(xiàn)的問題及時分析和解決,保證軟件的正常運行。
在數(shù)據(jù)庫編程技術(shù)開發(fā)過程中,應(yīng)當(dāng)積極開發(fā)數(shù)據(jù)庫與其他應(yīng)用程序的對接和拓展,開發(fā)全新的數(shù)據(jù)庫應(yīng)用場景。數(shù)據(jù)庫處理信息的功能非常強大,對于百萬計甚至更多的數(shù)據(jù)也能很好地處理和分析。要積極采用寫作創(chuàng)新的新型信息管理模式,以現(xiàn)有的數(shù)據(jù)庫部分作為基礎(chǔ),開發(fā)多種應(yīng)用場景,優(yōu)化工作路徑,不斷提升數(shù)據(jù)庫內(nèi)核語句的性能,對數(shù)據(jù)庫功能積極改良和創(chuàng)新,構(gòu)建小型數(shù)據(jù)庫應(yīng)用模塊,真正做到數(shù)據(jù)庫的開箱即用,更好地適應(yīng)不同開發(fā)軟件和開發(fā)平臺。明確數(shù)據(jù)庫的開發(fā)方向和開發(fā)路線,在構(gòu)建全新的數(shù)據(jù)庫編程技術(shù)應(yīng)用框架時,不僅可保證數(shù)據(jù)庫編程技術(shù)的科學(xué)性,還保證了數(shù)據(jù)庫的穩(wěn)定可靠性,提升了編程技術(shù)的可拓展性,從多個維度上優(yōu)化了數(shù)據(jù)庫的數(shù)據(jù)算法,創(chuàng)新了信息的運行方法,真正提升了數(shù)據(jù)庫處理批量數(shù)據(jù)的能力,拓展了數(shù)據(jù)庫的應(yīng)用深度。
在對數(shù)據(jù)庫編程技術(shù)的分析中,還應(yīng)當(dāng)充分兼顧數(shù)據(jù)庫系統(tǒng)的拓展性,正確分配數(shù)據(jù)每個部分的構(gòu)成模式和內(nèi)部任務(wù),比較不同措施的可行性,對系統(tǒng)進(jìn)行全局優(yōu)化,多方面增強數(shù)據(jù)庫的性能。在實際的大型軟件工程中,需要充分考慮不同服務(wù)器、服務(wù)器與數(shù)據(jù)庫、前端和后端之間的搭配關(guān)系,正確高效地部署數(shù)據(jù)庫,采用一系列現(xiàn)有比較成熟的云數(shù)據(jù)庫方案,最大化發(fā)揮數(shù)據(jù)庫的性能,有效地預(yù)防突發(fā)情況,增強數(shù)據(jù)接口的特征性。應(yīng)對數(shù)據(jù)庫進(jìn)行實時備份,設(shè)計一系列冗余防災(zāi)方案,便于在發(fā)生宕機(jī)時及時將現(xiàn)有服務(wù)轉(zhuǎn)移到備用服務(wù)器上。
程序編程人員在開發(fā)設(shè)計數(shù)據(jù)庫時,應(yīng)當(dāng)結(jié)合實際情況分析后端的真實需求,在確保數(shù)據(jù)庫效果的前提下,選擇合適的數(shù)據(jù)庫類型。有針對性地選擇字段名稱和字段值,更全面地處理整體數(shù)據(jù)信息,選擇適合當(dāng)前編程技術(shù)的編程語言,提高不同語言之間的兼容性,提高對不同語言的應(yīng)用轉(zhuǎn)化方法,提升編程質(zhì)量和運行質(zhì)量,提高數(shù)據(jù)庫的使用壽命,為之后的開發(fā)預(yù)留空間和接口,為數(shù)據(jù)庫編程技術(shù)的更新奠定基礎(chǔ)。
數(shù)據(jù)庫編程技術(shù)的應(yīng)用也需要培養(yǎng)一批優(yōu)質(zhì)技術(shù)人才,全方位設(shè)計計算機(jī)軟件工程中的整體化需求,將前端部分和后端部分更加專業(yè)地深度融合,發(fā)揮不同應(yīng)用模塊的優(yōu)勢和長處,通過相關(guān)技術(shù)人員的溝通配合,提升數(shù)據(jù)庫的整體設(shè)計效果。要有針對性地開展相關(guān)緊缺崗位的培訓(xùn)和招聘工作,吸納更多的有識之士,健全相關(guān)人才選拔提升機(jī)制,成立相關(guān)專業(yè)團(tuán)隊,形成眾多專業(yè)化小組進(jìn)行分工和討論,促進(jìn)數(shù)據(jù)庫系統(tǒng)整體編程效果的實質(zhì)性提升。
在計算機(jī)軟件工程中,最為關(guān)鍵的部分就是數(shù)據(jù)庫編程部分。在計算機(jī)軟件工程數(shù)據(jù)庫管理系統(tǒng)的開發(fā)設(shè)計中,需要進(jìn)一步加強面向?qū)ο筮M(jìn)行開發(fā)的基本設(shè)計思路,拓展多種數(shù)據(jù)庫加密方式,提升數(shù)據(jù)庫的保密性和安全性,以保護(hù)用戶的數(shù)據(jù)信息不被泄露。要拓展多種運行模式,貫穿于軟件工程的全過程,將不同編程技術(shù)的優(yōu)勢有機(jī)結(jié)合,優(yōu)化用戶的實際操作體驗。進(jìn)一步改善和提升訪問模式,預(yù)留相關(guān)拓展接口。有針對性地培養(yǎng)一批專業(yè)的數(shù)據(jù)庫編程人才,使得前端產(chǎn)品和后端產(chǎn)品更好地協(xié)同發(fā)展,提升數(shù)據(jù)庫對實際工作的貢獻(xiàn)程度,促進(jìn)軟件工程發(fā)展模式協(xié)同化,從多個方面提升數(shù)據(jù)庫的有效性和可靠性,為今后數(shù)據(jù)庫技術(shù)的更新奠定基礎(chǔ)。