国产精品观看在线亚洲人成网_久久激情国产_久久华人_狠狠干天天操_91一区二区三区久久久久国产乱_1区2区3区国产

首頁 > 文章中心 > sql語言

sql語言

前言:想要寫出一篇令人眼前一亮的文章嗎?我們特意為您整理了5篇sql語言范文,相信會為您的寫作帶來幫助,發現更多的寫作思路和靈感。

sql語言

sql語言范文第1篇

關鍵詞:多語言 數據抽取 對應關系

中圖分類號:TP301.6 文獻標識碼:A 文章編號:1674-098X(2017)02(c)-0153-02

目前,數據庫在全世界范圍內都得到了非常廣泛的應用,但數據庫的使用和顯示語言并沒有得到有效的統一。在日常工作中,一個國家的公司可能與另一個國家的公司合作做項目。但是兩個不同語言國家的公司合作,語言的轉換就成了一個需要考慮的問題。

從圖1我們可以看出,該軟件無論是登錄界面還是數據抽出的界面都是由日語的字段組成。其中包含了如:ロット番號、得意先コ`ド等字段。因此,如果兩個不同國家的人合作,若都用自己本國語言來進行一些數據操作,則對項目后期的合成帶來不便;若只用一國的語言,那么對另一個國家的工作人員來說有極大的語言障礙。文章將提出基于sql 的數據語言轉換方法,以便讓不同母語的人在應用的時候,能夠克服語言障礙。

1 相關工作

目前,實現數據庫的多語言轉換的方法主要是兩種:(1)使用配置文件;(2)使用第三方語言控件。但是使用這類方法存在一些不足之處,使用配置文件很容易使用戶的資料和設置破損;而用第三方語言控件則需輸入大量數據,載入速度大大變慢,編譯效率降低。

因此在面向對象程序設計的基礎上,借鑒多語言切換方案,轉換方案思路如圖3所示。

如圖2可知,該方案是將多語言數據輸入數據庫,縮短對可執行文件的長度,大大提高系統啟動速度,并且保證數據不丟失,從而實現軟件界面的多語言轉換。

運用該思路,也可將所需要用的軟件的語言進行切換:初始是日語,切換成功后,則接下來可用中文進行操作。若是操作完成后,如有需要,可按原方法再重新切換回來。

2 數據語言的轉換

2.1 不同語言的數據間對應

對于原先保存在數據庫中的數據,其語言已經固定。比如原來的數據是日語,那么抽出來的也是日語。那么現在在前臺調用的人員想看到中文的數據,則需要事先對數據進行轉換。

首先查找出原日語數據庫中的主要數據項目名(可根據一些列名或者標題名來查找)。

再創建語言之間的對應關系表,如表1所示。根據數據中的字段制定上述關系對應列表,并給予編號1、2、3......一個編號(key)對應一組關系。在調用的時候,即可根據編號將日文對應的中文字段抽調出來。

2.2 含相同字段間不同語言切換

在一些主要字段中,可直接采用關系對應表的方式進行轉換。但是考慮到一些字段會反復出現,或是許多字段有重復的部分,則可建立不同和相同字段間的映射關系,如圖4所示。

如圖3可知,用戶要查找有關“商品コ`ド”(日文)的數據,但“商品”(日文)這個字段在其他字段中反復出現,因此可以通過該字段同時抽取其他含有該字段的項目名。

3 數據多語言的抽取

3.1 數據抽取思路

在抽取前首先要增加兩個語言控件,分別為日文、中文。當用戶在前臺選擇“中文”控件的時候,中文稻菹允境隼矗選擇“日文”的時候,日文數據顯示出來。

下面是數據抽取整體思路:(以“商品コ`ド”為例)

TextBox

String

商品コ`ド

商品コ`ド 3 INNER JOIN 商品中文 JBT ON

3.商品コ`ド=JBT.商品代碼

3.2 數據抽取結果

利用上述思路,先從數據庫中抽取日文數據,然后再從相應的中文表中抽取中文數據,抽取結果如圖4所示。

由圖4可得,左側原數據是日文版的,經轉換后可得右側中的中文數據,“ロット番號、ステントI部”等字段,均已經顯示為中文的“批號、支架營業部”等,這樣就方便了不同語言的用戶查看數據。

4 結語

文章提出了一種基于SQL Server的數據語言轉換方法。該方法首先查找出原日語數據庫中的主要數據項目名,根據這些項目名建立相應的對應關系表,再找出含有相同字段的項目名,建立多個對應關系表。然后,建立兩個語言的控件,并通過選擇相應的編號(key)來抽出相應的數據,從而顯示不同語言下的數據,方便了不同語言的用戶查看數據。

參考文獻

[1] 楊永國.基于SQL Sever數據庫技術的多語言轉換[J].硅谷,2013(1):31-32.

[2] 李興原,丁剛.基于SQL Sever數據庫技術的多語言轉換[J].合作經濟與科技,2008(12):46-47.

[3] 王芳.SQL Server的數據轉換[J].現代企業教育,2014(12):489-489.

[4] 易國洪.對象和對象-關系DBMS[J].科技廣場,2007(1):85-88.

[5] 劉曉娟.關系數據庫運用分析[J].黑龍江科技信息,2008(4):60-60.

[6] 黃銳.SQL Server對XML文檔的數據抽取方法的分析與實現[J].桂林航天工業學院學報,2006,11(2):24-25.

sql語言范文第2篇

關鍵詞:SQL語言;可視化;對比教學方法

中圖分類號:G642 文獻標識碼:B

1引言

在數據庫技術飛速發展的今天,Visual FoxPro作為優秀的小型數據庫管理系統,因其具有操作界面友好、功能強大、語言精煉、簡單易學、便于實現應用系統的快速開發等特點,仍然受到眾多用戶的青睞。由于Visual FoxPro自身的特點和作為各類計算機等級考試的一個方向,在很多高等院校,都將“Visual FoxPro程序設計”作為非計算機專業綜合學習數據庫技術和高級程序設計語言的一門課程。

“Visual FoxPro程序設計”課程中的一個重要的內容是數據的查詢,通過執行SQL語句、運行查詢文件、運行視圖文件三種方式都可以對數據進行查詢。而其中SQL的兩種使用方法:交互式查詢和宿主式查詢,既適合于非計算機專業人員又適合于軟件開發人員學習,使SQL查詢得到廣泛的應用。在“Visual FoxPro程序設計”課程中,SQL語言的教學既是一個重點又是一個難點。其難點主要在于:非計算機專業的學生從開始接觸到計算機操作時,主要使用的是圖形界面的操作方式,對于使用命令的操作方式非常生疏,學習起來非常困難。而SQL語言主要是由命令及參數組成,掌握不好命令及參數的使用就不能正確執行查詢、得到結果。特別是SQL語言中的數據查詢,雖然只有一條SELECT語句,但是該語句卻實現了數據庫的核心操作,是用途最廣泛的一條語句,具有靈活的使用方法和豐富的功能。熟練地掌握這條命令的使用不僅能在Visual FoxPro中以交互式方式和程序方式方便地進行各種數據查詢,而且為進一步學習使用其他數據庫管理系統的知識和操作打下一個良好的基礎。

2VF中三種查詢方式

從“Visual FoxPro程序設計”課程的教學實踐中可以感受到,學生對可視化的操作環境和操作方法比較容易接受。而Visual FoxPro中提供了眾多的設計器都是一種可視化工具,利用它們可以快捷地創建和修改應用系統中的各種組件,包括數據庫、數據表、查詢、表單和報表等。在Visual FoxPro,創建查詢使用三種方法:查詢向導、查詢設計器和SQL的SELECT語句,不管是使用查詢向導還是使用查詢設計器創建查詢,其最終都是要生成一條SQL的SELECT語句,查詢向導和查詢設計器在本質上是SQL的SELECT語句的可視化設計方法。在SQL語言中,數據的查詢是通過下列一條語句實現的:

SELECT [ALL/DISTINCT];

[TOP [PERCENT]][.][AS ];

[,[][AS ]…];

FROM [][,[]…];

[INNER/LEFT/RIGHT/FULL JOIN [] [ON …]];

[[INTO ]/[TO FILE /TO PRINTER/TO SCREEN]];

[WHERE [AND …];

[AND/OR[AND/OR…]]];

[GROUP BY [,…]][HAVING ];

[ORDER BY [ASC/DESC][,[ASC/DESC]…]]

在這條SELECT語句中,有很多參數,使用這些參數,可以確定參加查詢的數據表及其聯接的條件;獲取相關的字段和字段的表達式;篩選出滿足條件的記錄;對記錄進行分組和排序等操作。而在查詢設計器中是通過添加數據

表,設置字段、聯接、篩選、排序依據、分組依據、雜項選項卡中的內容來實現的,其中每一個選項卡實際上都對應了SELECT語句中的一個或幾個參數的功能。見表1。

3對比教學方法實例

由于在查詢設計器中提供了查看SQL語句的功能,通過上述查詢設計器中的選項與SELECT語句及參數的對比,加上學生對查詢設計器比較容易掌握這一特點,這就為我們提供了一個可視化的SQL語言對比教學方法。本文將以一個實例(參考文獻[2])來說明這種教學方法的應用。

在實例中用到兩個數據表:學生登記表(學號,姓名,性別,出生日期,入校總分)、學生成績表(學號,課程編號,成績),要求建立一個包含有“姓名、年齡、平均分、總分”的男生成績查詢,要求查詢結果中只包含平均分在75分以上的學生,并按總分降序排列,輸出前3名學生成績查詢結果。這是一個比較復雜的查詢,幾乎涵蓋了SELECT 命令的所有參數,具有比較典型的代表性,其SQL命令如下:

SELECT TOP 3 學生登記表.姓名;

YEAR(DATE())-YEAR(學生登記表.出生日期)AS年齡;

AVG(學生登記表.成績)AS 平均分, SUM(學生登記表.成績)AS 總分;

FROM 學生登記表, 學生成績表 WHERE 學生登記表.學號=學生成績表.學號 AND 學生登記表.性別=”男”;

GROUP BY 學生登記表.學號 HAVING 平均分>=75;

ORDER BY 總分 DESC

如果使用查詢設計器,要通過一系列步驟來實現查詢。首先要加入兩個表,并確定兩表的聯接條件,通過表達式生成新的字段:年齡、平均分和總分;篩選出性別為男記錄;以學號進行分組,提取平均分在75分以上的記錄,再按總分進行降序排列,最后取出前3條記錄。使用查詢設計器來完成上述查詢,雖然操作步驟較多,但是相對于SQL命令來說,比較直觀,學生理解更容易。本文介紹的對比教學方法的要點是:在查詢設計器中的每一步操作后,通過使用主窗口的查詢菜單中的“查看SQL”命令或在查詢設計器中使用快捷菜單中的“查看SQL”命令,可查看到系統生成的相應的SQL命令,隨著查詢設計器的分步操作的進行,可使學生觀察到一個完整的SELECT語句的實現過程。本實例的教學過程如下:

第一步,打開查詢設計器,加入學生登記表和學生成績表,在“聯接”選項卡中,確認其兩表的聯接條件。第二步,在“字段”選項卡中選取“姓名”字段,再通過“函數和表達式”生成器生成“年齡”、“平均分”和“總分”字段。前二步的操作結果見圖1。在圖1中,選取菜單“查詢/查看SQL”,可見到上述操作已生成對應的SQL語句,如圖2。在圖2中,前3行是選取和生成的四個字段,后2行是兩表的聯接及聯接條件。其聯接條件也可寫成:

FROM學生登記表,學生成績表 WHERE 學生登記表.學號=學生成績表.學號

第三步,在“篩選”選項卡中,生成如圖3所示的篩選條件。同時在SQL語句窗口中可以看到增加了一個參數選項,見圖4中第6行。第四步,在“分組依據” 選項卡中,選取分組字段,并生成如圖5所示的分組后要滿足的條件。這時,相應的在SQL語句窗口,又增加了一個參數選項,見圖6中第7行和第8行。

第五步,在“排序依據”選項卡中,確定如圖7所示的“排序條件”和“排序選項”。在SQL語句又增加了一個參數選項,見圖8中第9行。其中的4表示第4個字段,

既“總分”字段,該參數也可寫為:ORDER BY 總分 DESC最后,在“雜項”選項卡中,確定滿足上述條件的前3條記錄,如圖9所示。在SQL語句窗口中,可以看見,在第一行中,又添加了一個參數TOP3。至此,一個完整的SQL語句已經生成,見圖10。通過運行,可以得到正確的查詢結果。

4結束語

本文實例中的查詢,幾乎涉及到SQL查詢語句的所有參數,如果直接采用SQL語言進行教學,學生接受起來很困難,而用查詢設計器這種可視化的方式進行對比教學,雖然步驟比較多,但學生接受起來相對容易。通過使用查詢設計器和SQL語言進行可視化的對比教學方式,使學生既學會了查詢設計器的使用,更重要的是很直觀、很容易地掌握了SQL語言中各種參數的正確使用,作者經過多次的教學實踐,取得了良好的教學效果。

參考文獻:

[1] 杜小丹,劉容. Visual FoxPro程序設計教程[M]. 北京:高等教育出版社,2007.

[2] 劉容,杜小丹. Visual FoxPro程序設計上機實驗及習題集[M]. 北京:高等教育出版社,2007.

An SQL Language Teaching Application of a Visual Comparison Method in VF Teaching

LIU Rong

(Chengdu university, Chengdu 610106, China)

sql語言范文第3篇

關鍵詞:報表服務;SQL2005;報表參數;RDL

中圖分類號:TP391文獻標志碼:A文章編號:1009-3044(2008)12-20ppp-0c

The Research and Implementation of the enterprise Report System Based on SQL2005

HAN Min, YOU Feng, ZHAO Heng-yong

(College of Information Science and Technology, Beijing University of Chemical Technology, Beijing 10029, China)

Abstract:Introduced the characteristic of SQL Server 2005 reporting services. Integrate the demand of enterprise report, uses the method of modifying the RDL document and processing the data of reporting services, giving an example of using Reporting Service of SQL Server2005 to realize dynamic display Web user-defined report under the VS environment.

Key words:Report service; SQL2005; Report Parameter; RDL

1 引言

隨著Internet的發展,企業級應用軟件逐漸由C/S結構轉向B/S結構,企業管理信息系統正逐步由傳統的客戶端/服務器模式向Internet轉移,作為其輸出展現端,越來越多的報表將在Web 環境下開發和應用[1]。在企業級的報表解決方案中,不少開發人員采用集成于Visual Studio中的Crystal Report (水晶報表)工具實現,但水晶報表作為第三方開發組件,對其應用時需要編寫大量的程序且部署復雜。由于SQL Server的Reporting Services(報表服務)采用集中存儲和管理報表、設置策略以確保對報表及文件夾的安全訪問、控制處理和分發報表的方式,使在企業業務中使用報表的方式標準化,并且報表服務使報表的設計生成更加容易,具有和Visual Studio集成性好,易于部署,用戶的個性化設置靈活的特性,本文提出利用SQL 2005中的Reporting Service 實現企業報表系統的解決方案。

2 Reporting Service簡介

Reporting Services是微軟在2003年作為SQL Server2000產品套件的一部分的,2005年在SQL Server2005中進行了擴展。SQL Server報表服務是一種基于服務器的新型報表平臺,該平臺構建在 .NET Framework 2.0 上并與 SQL Server 2005集成在一起,可用于創建和管理包含來自關系數據源和多維數據源數據的表格報表、矩陣報表、圖形報表和自由格式報表,可以通過基于 Web 的連接來查看和管理創建的報表,可以使用一個擴展的基于 Web服務的 API 將豐富的報表生成功能集成到應用程序中,因此,Reporting Services 是在各種企業報表開發環境中生成報表的極佳工具。

2.1 RDL

SQL Server2005報表服務定義了一個XML標準RDL(報表定義語言),是一種公開的XML定義報表的格式,因此,可以通過直接編寫和修改RDL或者創建自定義工具生成相應的報表格式,滿足用戶對報表的自定義的需求,達到對報表服務的靈活性擴展。在SQL Server或VS2005環境中,可以使用圖形化的制作工具編輯RDL文件。

2.2 Reporting Service的報表設計工具

Reporting Service包括兩個報表設計工具:報表生成器和報表設計器。在企業級報表系統的應用中可針對不同的報表需求,選擇相應的報表設計工具。

報表生成器是一個在互聯網上的Windows客戶端應用程序,可以基于報表模型生成報表,報表生成器使用了智能客戶端技術,在不必了解基礎數據庫、報表定義及Reporting Service存儲報表的方式情況下,可以使用報表模型實時生成報表。

報表設計器是一種用于創建和報表定義的工具。通過報表設計器可以訪問所有報表定義功能。報表設計器提供了圖形化的設計界面,可以在其中定義數據源和查詢信息,利用其提供的報表項進行報表格式的設計,添加要顯示的數據源字段。在報表設計器中通過對相應的報表項設置不同數據來源參數的方式,實現用戶自定義報表格式和對報表數據的動態查詢。

2.3 報表管理器

在SQL Server2005報表服務中,報表管理器是包含于報表服務中的一個基于Web 的管理應用程序,它使用和Web 服務API的報表服務器的界面創建。報表管理器應用程序駐留在Web 服務器上并且為Web 瀏覽器訪問,為報表服務器數據庫中的內容提供一個管理界面,在報表管理中可以完成用戶對報表訪問的安全設置、站點設置、文件夾的處理、報表屬性設置及報表數據源的處理等應用。可以通過報表服務自身提供的報表服務器的URL訪問報表管理器頁面,實現企業級報表的Web 管理,也可以通過創建一個利用相同報表服務Web 服務API的應用程序來創建企業要求的自定義的報表管理器[2]。

3 企業報表系統的方案設計及實現原理

3.1 企業報表系統的實現技術。

為了滿足企業級Web 報表系統的性能需求,其技術方案如圖1所示:

3.2 企業報表系統實現原理

為了實現自定義報表,本文設計了基于 和SQL Server報表服務2005的Web 自定義報表模型:建立報表格式信息數據庫和報表數據信息數據庫,通過訪問數據庫。報表數據采用 DataSet作為數據源綁定,根據SQL Server報表服務2005提供的數據處理接口在Visual Studio2005中編寫代碼實現數據集的動態綁定[3]。對SQL Server報表服務2005進行參數設置實現報表格式的自定義。首先,在根據企業的應用需求確定報表表格的自定義參數,即對報表服務的報表項(表、文本框、列表、圖像和矩形等)建立參數表;其次,對報表的數據處理進行擴展應用,根據查詢排序等設置從數據庫中提取數據,動態生成DataSet數據源,在中,將 DataSet 動態綁定到報表顯示控件ReportView; 最后,在中,對ReportView控件編寫代碼實現對SQL 2005的報表服務的訪問。實現原理如圖2所示。下面結合實例講解企業自定義報表的實現。

3.3 報表格式的自定義

SQL Server報表服務2005的報表模板格式的自定義可以由以下兩種方式實現。第一種是在報表服務外部,通過XML文檔的修改實現報表的自定義,此方式對熟悉XML語言的用戶適用。第二種方式針對不熟悉報表開發環境的一般用戶,通過選擇相關報表格式參數的方式實現報表模板格式的自定義。

修改XML 文檔實現報表的自定義,可以在Visual Studio 環境下選擇SQL Server Business Intelligence Development Studio,通過創建報表項目在報表設計器窗體以圖形化界面的方式對報表模板進行定義,或者選擇報表向導的方式完成對報表模板的定義。由于定義報表的RDL文件是一個XML文檔,該XML文檔具有報表所有屬性的標記選項卡的標準定義,報表設計元素的屬性值可以用一個文本編輯器修改,因此可以在報表服務器外部通過修改編寫符合報表定義的XML文件或修改已有的XML文件的方式實現報表模板的自定義[4]。

修改報表格式參數實現報表格式的自定義,在定義報表時,可以對組成報表的報表項通過對ReportParameter屬性的操作,即對構成報表的文本框、表格、矩形、列表、圖像等進行相應得參數設置,這些參數可通過表達式設置,也可以通過查詢數據庫中的報表參數信息進行設置,從而實現用戶選擇相應的報表參數完成報表格式的自定義。

3.4 報表數據處理

在報表設計器中,通過對數據庫查詢設置報表數據集。區別于.NET中的數據集,報表服務中的數據集指一個查詢表達式或一個用于查詢數據庫中對象的引用,包括在報表的定義中。可以在定義數據集的查詢中設置參數,也可以在存儲過程中定義參數實現數據篩選,參數項可以由一個靜態列表或者一個數據驅動的查詢填充,從而實現用戶選擇不同的參數對報表的各種查詢顯示[5]。根據SQL Server報表服務2005提供的數據處理接口,通過訪問數據庫,報表數據采用 DataSet作為數據源綁定,在Visual Studio2005中編寫代碼實現數據集的動態綁定。

3.5 報表的顯示輸出

SQL Server報表服務2005 能夠集成到不同的應用程序中,且具有不同的顯示報表的方法:使用URL來訪問報表,使用報表服務的Web服務以編程的方式顯示報表,使用ReportViewer控件顯示報表和使用SharePoint顯示報表。本文采用ReportViewer控件顯示報表的方式實現報表的顯示,該顯示方式可以完成在顯示頁面中的瀏覽、打印、保存、查詢、翻頁等功能。由于ReportViewer是客戶端控件,可以使用來自任何數據源的數據,既可在Windows窗體使用,也可在Web窗體使用,故根據企業報表顯示的需求,采用在Web 窗體使用ReportViewer實現報表的顯示輸出。首先,將定義好的報表添加到 應用程序中,打開Choose Toolbox Items檢查ReportViewer控件,將其添加到引用中。其次,在Web窗體上添加ReportViewer控件和其他輸出頁面進行交互的控件如標簽和下拉列表框等。最后,設置ReportViewer的ReportPath和ReportServerUrl屬性,并編寫相應代碼完成報表參數的傳遞,參數作為RportParameter對象數組來管理,報表參數通過傳遞給ServerReport對象的SetParameters方法的數組來填充。其部分代碼如下所示:

private void ViewReport()

{

string sReportServerURL = "LocalHost/ReportServer";

string sReportPath ="/Professional SQL Reporting Services/enterprise report ";

Microsoft.Reporting.WinForms.ReportParameter[] Param;

Param[0] =newMicrosoft.Reporting.WinForms.ReportParameter

("OrderDateFrom", this.dtOrderDateFrom.Value.ToString());

Param[1]

=newMicrosoft.Reporting.WinForms.ReportParameter

("OrderDateTo",this.dtOrderDateTo.Value.ToString());

reportViewer1.ProcessingMode =

Microsoft.Reporting.WinForms.ProcessingMode.Remote;

reportViewer1.ServerReport.ReportServerUrl

= new Uri(sReportServerURL);

reportViewer1.ServerReport.ReportPath = sReportPath;

reportViewer1.ServerReport.SetParameters(Param);

reportViewer1.ShowParameterPrompts = false;

reportViewer1.ShowPromptAreaButton = false;

reportViewer1.RefreshReport();

}

4 結束語

本文提出的在.NET平臺下利用SQL Server2005中的報表服務實現企業報表系統的方案,滿足了企業對報表靈活設置參數實現對某些報表項的自定義和易于更新和維護的需求。該方案適用于在.NET 平臺下生成各類企業報表。由于SQL Server報表服務和SQL數據庫結合的緊密并且具有很好的擴展性,以及對企業商業智能(BI)的支持,可進一步從數據處理擴展、交付擴展、顯示擴展和安全擴展等領域延伸企業報表系統的應用。

參考文獻:

[1]張亞平、賀占莊,B/S架構下動態報表的一種實現方式[J],計算機技術與發展,2007,17(4):93-95,103.

[2]paul Truly 、謝文亮(譯),SQL Server2005報表服務高級編程[M],北京:清華大學出版社,2007.

[3]陳傳波、黃剛、劉清慧,一種基于的自定義報表的設計與實現[J],計算機工程與科學,2006,28(6):112-114.

[4]菅言彬,基于XML的Web智能報表的研究與實現[D],華北電力大學,2005.

[5]劉福軍、申永軍、劉杰、史維祥,存儲過程和OLE技術在報表設計中的應用[J],計算機與現代化,2003,(3):73-75,7.

sql語言范文第4篇

【關鍵詞】在線考試 JSP SQL Server 信息管理

近年,隨著考試類型的不斷增加以及考試要求的不斷提高,傳統考試已不能完全滿足人們的需求,也顯露出種種弊端。網絡技術以及普及到了教學領域的各個方向,借助JSP及數據庫等現代技術,可以使在線考試系統的實現成為可能。因此,許多學校或監考機構都想利用網絡在線考試系統來降低管理成本,增加考試效率。網絡在線考試系統已經成為教育技術發展與研究的方向。

1 系統分析

1.1 系統需求分析

在線考試系統主要包括系統的注冊、登陸、在線的考試系統、成績查詢系統等。注冊和登陸功能是較為基本的功能,這里不多敘述。在線的考試系統,要考慮的主要是怎樣出題、怎樣收集答案、怎樣保存,怎樣判分這些問題。成績查詢系統則要有一個友善的界面,確保考生考試的順利進行。并且提供對考生成績的統計和查詢等管理功能。應具有良好的安全性管理。

1.2 數據庫需求分析

由于網絡在線考試系統的關鍵在于要確保數據的完整和安全,為此,必須有完備和廣泛的數據存儲和管理系統作為實現考試系統的數據支撐。SQL Server 2005是一種高性能的數據庫管理系統,在保障系統可靠性和數據的安全性方面都比較高校,且整體性能良好,被公認為是卓越的數據庫平臺。系統基于SQL Server數據庫,結合系統需求,對要實現的各個功能部分進行分別設計,并列出了相應的的數據項:考生信息表、課程信息表、套題信息表、試題信息表和考試試題信息表等。數據結構涉及各項目的ID、名稱、時間、課程、分數等其它信息。

1.3 技術可行性

技術實現方面,根據整個系統的需求和限制條件,從軟件配置和硬件實現方面進行了分析。從技術的角度研究系統實現的可行性。

軟件配置,網絡化考試需要的各種軟件環境都已具備,本系統利用當前較流行的JSP技術,并選用SQL Server 2005作為數據庫服務器平臺。該數據庫平臺能較好的完成數據的編輯、查詢和提取,同時具備絕對的數據安全保障機制。因此在大數據處理、靈活操作等方面,完全可以為整個系統提供軟件上的支持。

硬件方面,考慮到該在線考試系統對硬件的要求并不需要太高。只要系統硬件具備一定的運算和存儲能力、具有一定的穩定性、以及支持網絡功能就可以。綜上所述,其硬件平全能滿足此系統的需要。

2 數據庫設計

SQL Server數據庫應用技術在經歷了多年的演變與洗禮后已有很好的發展。SQL Server 2005作為Windows平臺上成熟的數據庫平臺,已經經過了無數的數據應用系統及項目的測試和洗禮,其安全性和卓越的數據處理能力有目共睹。

下面對系統中的核心系統的數據庫進行設計,試卷信息的E-R圖如圖1所示。對應的部分試題信息表如表1所示。

3 系統設計

3.1 在線考試模塊設計

在線考試模塊的主要功能是允許的考生在網站上針對指定的課程進行考試。通常考試系統運行后先要在桌面彈出考試規則,然后經學生確認閱讀完畢后,進行試題的隨機抽取,從而開始考試并計時,最后到學生提交試卷后,實現系統的自動評分,并給出最終考試成績。

用戶登陸后選擇在線考試,系統調用examRule.jsp,顯示考試規則,用戶需同意相應的考試規則,進入selectLesson.jsp選擇要進行考試的科目,單擊開始考試,系統會進入startExam頁面,開始進行答題!

3.2 考試題目管理模塊設計

考試題目管理模塊主要包括考試題目列表的查看及修改編輯,以及后期對試題的添加和編輯、刪除等功能。管理員選擇題目管理,進入question.Jsp頁面,選擇對題目進行的增刪改查操作,程序會調用相應的模塊,對信息進行操作。

4 結論

整個該系統具有試卷管理、試題與科目信息管理,學生信息管理等功能,已經完成了前臺和后臺管理,實現了核心功能。本系統應用J2EE平臺技術,采用了當前業界較為流行的Struts的框架結構,實現此在線網絡考試系統。

參考文獻

[1]虞益誠.SQLserver2005數據庫應用技術[M].北京:中國鐵道出版社,2009(09).

[2]李尊朝.JAVA語言程序設計[M].北京:中國鐵道出版社,2011(09).

sql語言范文第5篇

關鍵詞:SQL注入 原理 防范

中圖分類號:TP309.3 文獻標識碼:A 文章編號:1007-9416(2016)04-0000-00

1 SQL注入簡介

程序員在編寫網頁代碼的時候,常常缺少檢驗用戶輸入數據是否合法,這樣使整個網站應用存在較高的安全隱患。對于一些非法用戶,想要獲得某些有用數據或者破壞數據,采用的方法如下,用戶可以通過登錄框提交一段數據庫查詢代碼,然后根據網頁返回的結果,來判斷網站是否有數據漏洞,最后通過查詢代碼獲得某些他想得知的數據,這就是所謂的SQL Injection,即SQL注入[2]。

3 Sql注入的防范

從上面的例子可以看出,如果網頁開發者不注意過濾轉義字符,很有可能被SQL注入式攻擊。那么該如何來防治呢?下面這些建議或許有一定的幫助[3]。

(1)對數據進行有效性檢測。比如登錄名文本框內只能是字母和數字,那么就要校驗用戶輸入的數據是否合法,比如分號、等號、括號和擴折號都必須要進行程序檢查。另外,還可以限制輸入的數據長度,如果文本框的輸入長度限制在十個字符以內,那么就大大減少了有害代碼插入的幾率。

(2)將數據進行封裝。在編程中使用session等語句將用戶提交的信息封裝起來,不要用cookie,這樣避免非法用戶從cookie中獲取重要信息。

(3)過濾掉敏感信息。不要在程序代碼中出現用戶名稱和密碼,進行查詢的數據應從文本框中獲取,提高網站的安全性。

(4)單引號應過濾掉[4]。就像本文舉的實例一樣,就是因為沒有過濾掉用戶的單引號,才讓非法用戶繞過了密碼驗證,實現了SQL注入攻擊。所以,過濾掉用戶輸入的單引號,約束了他們的權限,大大避免了遭受SQL注入攻擊。

(5)編程人員應指定網站錯誤返回頁面。非法用戶在提交攻擊代碼后,會根據頁面的提示信息來獲取相關服務器應用信息,比如開發者使用的數據庫類型,來進行下一次的攻擊,因此,編程人員應該指定一個錯誤頁面,不包含任何有用的信息。

(6)對信息進行加密。把數據庫中的重要的信息進行加密處理,比如存儲口令信息的表和用戶名稱的表,都可以以密文形式保存,這樣大大提高了數據的安全級別。

(7)對數據庫中的權限進行分離。在數據庫中,對用戶的權限進行劃分,那么,用戶只能針對數據庫中的授權數據進行查詢、刪除等操作,防止非法用戶對數據庫進行訪問,提高了數據的安全性。

(8)使用監視工具。對數據庫使用監視工具是對付SQL注入攻擊的強大工具,當發生不太正常的數據訪問問題時,數據庫管理員會收到警告,從而會減輕大規模的SQL注入攻擊的風險。

(9)使用專業的漏洞掃描工具。可以使用專業的漏洞掃描工具,專門用來查找網站中的SQL注入漏洞,降低被SQL注入攻擊的幾率。

4結語

sql注入在網上非常普遍,許多網站都存在這個漏洞。本文對SQL注入攻擊的方法、原理以及攻擊進行了研究和總結,并給出了常用的一些SQL注入攻擊防范方法,盡可能降低SQL注入所帶來的網絡安全風險。

參考文獻

[1]鄒健.中文版 SQL Server2000開發與管理應用實例.2005.

[2]蕭雍.SQL注入攻擊常用函數與命令.黑客防線,2004.

[3]張勇,李力,薛倩.Web環境下SQL注入攻擊的檢測與防御.現代電子技術,2004.

[4]徐陋,姚國祥.SQL注入攻擊全面預防方法及其應用.微計算機信息,2006 3(3):18-20.

相關期刊更多

山東煤炭科技

省級期刊 審核時間1個月內

山東煤礦安全監察局

地球物理學報

北大期刊 審核時間1-3個月

中國科學院

麥類作物學報

北大期刊 審核時間1-3個月

中華人民共和國教育部

主站蜘蛛池模板: 嫩草网址 | 久久久91精品国产一区二区三区 | 国产一级在线观看 | 国产精品久久久久久久久免费看 | 久久精品亚洲精品 | 夜夜操天天操 | 九九精品视频在线 | 美女网站黄免费 | 69视频免费看 | 女人一区二区三区 | 高清在线一区二区 | 国产精品三级久久久久久电影 | 久久久网 | 国产精品美女一区二区三区 | 亚洲精品国产视频 | 亚洲аv电影天堂网 | 在线地址一地址二免费看 | 久久免费毛片视频 | 久久69| 成人福利网站 | 国产乱码一区二区三区 | 精品久久一区二区三区 | 久久九九免费 | 成年网站在线 | 久久久久久久国产精品视频 | 麻豆一区二区在线观看 | 久久密| 午夜精品久久久久久久久久蜜桃 | 国产精品一区久久久 | 99re在线观看 | 在线视频一二区 | 亚洲不卡视频 | 精品一区二区国产 | 天堂成人网 | 激情国产在线 | 午夜精品在线 | 欧美高清视频一区 | 五月婷婷六月婷婷 | 综合亚洲色图 | 国产精品美女久久久 | 精品少妇一区二区三区日产乱码 |