畢業(yè)設計商品進銷存系統(tǒng)論文_第1頁
畢業(yè)設計商品進銷存系統(tǒng)論文_第2頁
畢業(yè)設計商品進銷存系統(tǒng)論文_第3頁
畢業(yè)設計商品進銷存系統(tǒng)論文_第4頁
畢業(yè)設計商品進銷存系統(tǒng)論文_第5頁
已閱讀5頁,還剩43頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、商品進銷存系統(tǒng)摘 要中小型批發(fā)、零售企業(yè)及連鎖店往往存在一些共同的特點和問題,為了解決問題,我們設計了商品進銷存系統(tǒng)。該系統(tǒng)是一個多層數據庫系統(tǒng),使用vb做為前端開發(fā)工具,以sql sever2000做為后臺數據庫操作平臺,并使用odbc連接訪問數據庫。系統(tǒng)開發(fā)的總體任務是實現(xiàn)各種信息的系統(tǒng)化、規(guī)范化、自動化。以進、銷、存管理為基本要求,主要功能包括:用戶名和密碼的管理、基本信息的輸入和修改、進貨信息的管理、銷售信息的管理、庫存信息的管理、財務信息的管理。設計的模塊主要是實現(xiàn)用戶名和密碼的管理、基本信息的輸入和修改、進貨信息的管理。關鍵詞:商業(yè)信息管理,數據庫,sqlsever2000,vis

2、ual basicabstractthere are some still common characteristics and questions among the retailers and chain stores in selling medium and small-scale in batches. in order to solve these problems, we have designed the system of goodsinlet ,sale and stored . this system is a multi-layer database system,wh

3、ich use vb as the front developing instrument, sql sever2000 as backstage supporters database operating platform and odbc to connect and visit the database.the overall task of this system developed is to put different information systematizations , standardizatiosn , automizations into reality. the

4、basic demand includes enter commodity, sell commodity and store commodity. the main function includes: the management of user name and passwords input,the basic information of input and modification,the management of stocking information ,stored information and financial information . the module tha

5、t i designed mainly achieve the management of user name and passwords input,the basic information of input and modification,the management of stocking information.keywords: business information management,database,sqlsever2000,visual basic目 錄緒 論41 開發(fā)工具簡介51.1 sqlsever 200051.1.1 介紹51.1.2 安裝環(huán)境和過程51.1.

6、3 基本知識51.1.4 基礎語法61.1.5 數據庫的相關操作81.1.6 表的相關操作111.1.7 數據的檢索151.2 visual basic181.2.1 變量181.2.2 窗體、控件及其屬性201.2.3 ado(activex data objects)212 系統(tǒng)和設計分析222.1 系統(tǒng)功能分析222.2 系統(tǒng)功能模塊設計222.3 數據庫設計252.3.1 需求分析252.3.2 邏輯結構設計282.4 數據庫的實現(xiàn)323 編碼與測試333.1 主窗體的創(chuàng)建333.2 系統(tǒng)用戶管理模塊的創(chuàng)建343.2.1 用戶登錄窗體的實現(xiàn)343.2.2 添加用戶窗體的創(chuàng)建353.3

7、基本信息設置模塊的創(chuàng)建353.4 進貨信息管理模塊的創(chuàng)建373.4.1 進貨定單信息窗體的創(chuàng)建373.4.2 入庫單信息窗體的創(chuàng)建393.4.3 入庫商品信息查詢41結論43致謝44參考文獻45附 錄a(部分程序代碼)46附 錄b 英文文獻及翻譯56緒 論在現(xiàn)代化企業(yè)中,信息管理工作將發(fā)揮越來越重要的作用。可以說,在企業(yè)信息管理工作中,計算機成為標志著一種高科技、高效率和高水平的使用工具,已經滲透到企業(yè)日常工作的許多方面,無論是其自身還是所發(fā)揮的作用,都為企業(yè)的創(chuàng)新、發(fā)展以及經濟效益,做出了顯著的貢獻。因此,企業(yè)必須加強自身的信息基礎設施建設,通過企業(yè)基礎數據的信息化、企業(yè)基本業(yè)務流程和事務處

8、理的信息化、企業(yè)內部控制過程的信息化、人的行為規(guī)范管理等企業(yè)基礎管理信息化工程,確保企業(yè)在規(guī)模不斷擴大和業(yè)務迅速發(fā)展的過程中保持堅實的管理基礎和繁殖內核,促進企業(yè)的可持續(xù)發(fā)展。我國中小企業(yè)信息化水平一直還處在比較初級的階段,有關統(tǒng)計表明,真正實現(xiàn)了計算機較高應用的企業(yè)在全國1000多萬中小企業(yè)中所占的比例還不足10%。然而,隨著我國市場條件下企業(yè)競爭壓力的不斷加劇、企業(yè)組織管理觀念的變革以及業(yè)務流程標準化的不斷完善,中小企業(yè)信息化建設的熱情近幾年來有了顯著的提高。而進、銷、存是企業(yè)運作過程中最主要、最核心的工作環(huán)節(jié)。因此創(chuàng)建一個穩(wěn)定的,高效的進銷存系統(tǒng)是必要的。在此文中就介紹了用戶名和密碼管理

9、、基本信息輸入和修改、進貨信息的管理這幾個模塊設計中涉及的幾個方面:1、 涉及的基本知識和開發(fā)工具。2、 系統(tǒng)功能的分析、模塊的設計和數據庫的設計。3、 模塊的編碼和測試。1 開發(fā)工具簡介1.1 sqlsever 2000 21.1.1 介紹數據庫在一個信息管理系統(tǒng)中占有非常重要的地位,數據庫結構設計的好壞將直接對應用系統(tǒng)的效率以及實現(xiàn)效果產生影響,合理的數據庫設計可以提高數據庫的存儲效率,保證數據的完整性。sql server 2000 enterprise edition(64 位)不僅具有更高水準的數據庫伸縮性能,而且針對 itanium 服務器和 microsoft windows s

10、erver 2003 進行了優(yōu)化。1.1.2 安裝環(huán)境和過程安裝、運行sol sever2000的硬件要求為:1)cpu:intel及其兼容計算機(要求p166mz或者更高的處理器),decalpha及其兼容系統(tǒng)也可以。2)內存(ram):至少64mb,最好為128mb的內存。使內存的容量和數據容量保持在1:1的比例,以便更好的發(fā)揮sqlsever2000的功能。3)硬盤空間:完全安裝(full)需要180mb的空間,典型安裝需要170mb的空間,最小安裝需要65mb的空間,此外還需要預留一些數據空間。4)顯示器:vga或更高分辨率。安裝過程在這里不介紹了。對操作系統(tǒng)的要求請查閱有關書籍。 1

11、.1.3 基本知識一、sql是structuredquerylanguage(結構化查詢語言)的縮寫。sql是專為數據庫而建立的操作命令集,是一種功能齊全的數據庫語言。在使用它時,只需要發(fā)出“做什么”的命令,“怎么做”是不用使用者考慮的。sql功能強大、簡單易學、使用方便,已經成為了數據庫操作的基礎,并且現(xiàn)在幾乎所有的數據庫均支持sql。二、sql數據庫數據體系結構sql數據庫的數據體系結構基本上是三級結構,但使用術語與傳統(tǒng)關系模型術語不同。在sql中,關系模式(模式)稱為“基本表”(base table);存儲模式(內模式)稱為“存儲文件”(stored file);子模式(外模式)稱為“視

12、圖”(view);元組稱為“行”(row);屬性稱為“列”(column)。三、sql語言的組成1.一個sql數據庫是表(table)的集合,它由一個或多個sql模式定義。2.一個sql表由行集構成,一行是列的序列(集合),每列與行對應一個數據項。3.一個表或者是一個基本表或者是一個視圖?;颈硎菍嶋H存儲在數據庫的表,而視圖是由若干基本表或其他視圖構成的表的定義。4.一個基本表可以跨一個或多個存儲文件,一個存儲文件也可存放一個或多個基本表。每個存儲文件與外部存儲上一個物理文件對應。5.用戶可以用sql語句對視圖和基本表進行查詢等操作。在用戶角度來看,視圖和基本表是一樣的,沒有區(qū)別,都是關系(表

13、格)。6.sql用戶可以是應用程序,也可以是終端用戶。sql語句可嵌入在宿主語言的程序中使用,宿主語言有fortran,cobol,pascal,pl/i,c和ada語言等。sql用戶也能作為獨立的用戶接口,供交互環(huán)境下的終端用戶使用。四、對數據庫進行操作sql包括了所有對數據庫的操作,主要是由4個部分組成:1.數據定義:這一部分又稱為“sql ddl”,定義數據庫的邏輯結構,包括定義數據庫、基本表、視圖和索引4部分。2.數據操縱:這一部分又稱為“sql dml”,其中包括數據查詢和數據更新兩大類操作,其中數據更新又包括插入、刪除和更新三種操作。3.數據控制:對用戶訪問數據的控制有基本表和視圖

14、的授權、完整性規(guī)則的描述,事務控制語句等。4.嵌入式sql語言的使用規(guī)定:規(guī)定sql語句在宿主語言的程序中使用的規(guī)則。1.1.4 基礎語法1、數據類型數據類型是數據的一種屬性,表示數據所表示信息的類型。任何一種計算機語言都定義了自己的數據類型。當然,不同的程序語言都具有不同的特點,所定義的數據類型的各類和名稱都或多或少有些不同。sql server 提供了 25 種數據類型: (1)二進制數據類型 二進制數據包括 binary、varbinary 和image. binary 數據類型既可以是固定長度的(binary),也可以是變長度的。 binary(n) 是n位固定的二進制數據。其中,n的

15、取值范圍是從1到8000。其存儲的大小是n+4個字節(jié)。 varbinary(n)是n 位變長度的二進制數據。其中,n 的取值范圍是從 1 到 8000。其存儲內容的大小是 n + 4個字節(jié),不是 n 個字節(jié)。 在 image 數據類型中存儲的數據是以位字符串存儲的,不是由 sql server 解釋的,必須由應用程序來解釋。例如,應用程序可以使用 bmp、tief、gif 和 jpeg 格式把數據存儲在 image 數據類型中。 (2)字符數據類型 字符數據的類型包括 char,varchar 和 text。 字符數據是由任何字母、符號和數字任意組合而成的數據。 varchar 是變長字符數據

16、,其長度不超過 8kb。char 是定長字符數據,其長度最多為 8kb。超過 8kb 的ascii 數據可以使用text 數據類型存儲。例如,因為 html 文檔全部都是 ascii 字符,并且在一般情況下長度超過 8kb,所以這些文檔可以 用text 數據類型存儲在 sql server 中。 (3)unicode 數據類型 unicode 數據類型包括 nchar,nvarchar 和ntext。 在 microsoft sql server 中,傳統(tǒng)的非 unicode 數據類型允許使用由特定字符集定義的字符。在 sql server 安裝過程中,允許選擇一種字符集。使用 unicode

17、 數據類型,列中可以存儲任何由unicode 標準定義的字符。在 unicode 標準中,包括了以各種字符集定義的全部字符。在 sql server 中,unicode 數據以 nchar、nvarchar 和 ntext 數據類型存儲。使用這種字符類型存儲的列可以存儲多個字符集中的字符。當列的長度變化時,應該使用 nvarchar 字符類型,這時最多可以存儲 4000 個字符。當列的長度固定不變時,應該使用 nchar 字符類型,同樣,這時最多可以存儲 4000 個字符。當使用 ntext 數據類型時,該列可以存儲多于 4000 個字符。 (4)日期和時間數據類型 日期和時間數據類型包括 d

18、atetime 和 smalldatetime 兩種類型。 (5)數字數據類型 數字數據類型只包含數字。數字數據類型包括正數和負數、小數(浮點數)和整數。 整數由正整數和負整數組成,例如:39、25、0、-2 和 33967。在micrsoft sql server中,整數存儲的數據類型是int,smallint和tinyint。int數據類型存儲數據的范圍大于smallint 數據類型存儲數據的范圍,而smallint數據類型存儲數據的范圍大于tinyint數據類型存儲數據的范圍。使用int存儲數據的范圍是從-2147483648到2147483647(每一個值要求4個字節(jié)存儲空間)。使用

19、smallint 數據類型時,存儲數據的范圍從-32768到32767(每一個值要求2個字節(jié)存儲空間)。使用tinyint數據類型時,存儲數據的范圍是從0 到255(每一個值要求1個字節(jié)存儲空間)。 精確小數在sql server中的數據類型是decimal和numeric。這種數據所占的存儲空間根據該數據的位數后的位數來確定。 在sql server 中,近似小數的數據類型是 float 和real。例如,三分之一這個分數記作3333333,當使用近似數據類型時能準確表示。因此,從系統(tǒng)中檢索到的數據可能與存儲在該列中的數據不完全一樣。 (6)貨幣數據表示正的或者負的貨幣數量 在 micros

20、oft sql server 中,貨幣數據的數據類型是money 和smallmoney。money 數據類型要求8個存儲字節(jié),smallmoney數據類型要求4個存儲字節(jié)。 (7)特殊數據類型 特殊數據類型包括前面沒有提過的數據類型。特殊的數據類型有3種,即 timestamp、bit和uniqueidentifier。 2、用戶定義的數據類型 用戶定義的數據類型是基于在microsoft sql server中提供的數據類型。當幾個表中必須存儲同一種數據類型時,并且為保證這些列有相同的數據類型、長度和可控性時,可以使用用戶定義的數據類型。例如,可定義一種稱為 postal_code 的數據

21、類型,它是基于 char 數據類型。 當創(chuàng)建用戶定義的數據類型時,必須提供三個數:數據類型的名稱、所基于的系統(tǒng)數據類型和數據類型的可控性。 (1)創(chuàng)建用戶定義的數據類型 創(chuàng)建用戶定義的數據類型可以使用transact-sql語句。系統(tǒng)存儲過程 sp_addtype 可以來創(chuàng)建用戶定義的數據類型。其語法形式如下: sp_addtype type,system_data_bype,null_type 其中,type 是用戶定義的數據類型的名稱。system_data_type 是系統(tǒng)提供的數據類型,null_type表示該數據類型是如何處理空值的,必須使用單引號引起來的格式。(2)刪除用戶定義的數

22、據類型 當用戶定義的數據類型不需要時,可刪除。刪除用戶定義的數據類型的命令是 sp_droptype type。 注意:當表中的列還正在使用用戶定義的數據類型時,或者在其上面還有默認規(guī)則時,這種用戶定義的數據類型不能刪除。 1.1.5 數據庫的相關操作 1、如何創(chuàng)建數據庫 (1)使用 create database 創(chuàng)建數據庫 create database語法形式如下: create database database_name on primary(name=logical_file_name, filename=os_file_name ,size=size ,maxsize=max_s

23、ize ,.n log on (name=logical_name, filename=os_file_name ,size=size) ,.n for restore 注釋: primary:該選項是一個關鍵字,用來指定主文件組中的文件。主文件組不但包含了數據庫系統(tǒng)表中的全部內容,而且還包含了沒有在用戶文件組中包含的全部對象。一個數據庫只能有一個主文件。在默認情況下,即在沒有指定primary關鍵字時,列在語句中的第一個文件就是主文件。 name:該選項指定數據庫的邏輯名字,這是在sql server 系統(tǒng)中使用的名稱,是數據庫在sql server 中的標識符。 filename:該選項用

24、來指定數據庫所在文件的操作系統(tǒng)文件名稱和路徑。在os_file_name中的路徑必須是sql server 所在服務器上的一個文件夾。該操作系統(tǒng)文件名稱與name 的邏輯名稱是一一對應的。 size:該選項用來指定數據庫操作系統(tǒng)文件的大小。在指定文件大小的時候,既可以使用mb單位,也可以使用kb單位。如果沒有指定單位,那么系統(tǒng)默認的單位是mb。文件最小是1mb,也就是說,數據庫所在的文件不能小于1mb。在默認情況下,數據庫數據文件的大小是3mb,數據庫日志文件的大小是1mb。 maxsize:該選項用來指定操作系統(tǒng)文件可以增長的最大尺寸。如果沒有指定單位,那么系統(tǒng)的默認單位是mb。如果沒有指定

25、文件可以增長的最大尺寸,那么系統(tǒng)的增長是沒有限制的,可以占滿整個磁盤空間。 fielgrowth:該選取項用來指定文件的增量,當然該選項不能與maxsize選項有沖突。該選項指定的數據值為零時,表示文件不能增長。該選項可以用mb、kb和百分比指定。 例子:創(chuàng)建一個cust數據庫,該數據庫的主數據文件的邏輯名稱是cust_data,操作系統(tǒng)文件是cust.mdf,大小是15mb,最大是30mb,以20%的速度增加;該數據庫的日志文件的邏輯名稱是cust_log,操作系統(tǒng)是cust.ldf,大小是3mb,最大是10mb,以1mb的速度增加。 create database cust on prim

26、ary (name=cust_data, filename=d:cust.mdf, size=15mb, maxsize=30mb, filegrowth=20%) log on (name=cust_log, filename=d:cust.ldf, size=3mb, maxsize=10mb, filegrowth=1mb) 2、如何增加數據庫的大小 (1)使用alter database命令來增加數據庫文件的大小 如果在創(chuàng)建數據庫文件時沒有配置文件的大小,那么可以使用alter database命令來增加文件的大小。 例子:將數據庫cust的數據文件cust_data的大小調整為50m

27、b。 alter database cust modify file (name=cust_data,size=50) (2)使用add file 增加一個次要文件 通過為數據庫增加次要的數據文件和日志文件來增加數據庫的大小。 例子: alter database cust add file (name=cust_data2,filename=d:cust2.mdf, size=5mb, maxsize=10mb, filegrowth=10%) 3、壓縮數據庫和數據文件 (1)使用dbcc shrinkdatabase 命令壓縮整個數據庫 例子:將cust數據庫的大小壓縮到10% dbcc

28、shrinkdatabase (cust,10) (2)使用dbcc shrinkfile命令壓縮數據庫中的某一個數據文件 例子:將cust數據文件的大小壓縮到5mb dbcc shrinkfile (cust,5) 4、刪除數據庫 使用drop命令刪除數據庫 例子:刪除cust數據庫 drop database cust 1.1.6 表的相關操作 1、創(chuàng)建表 (1)用create table 命令創(chuàng)建表 語法: create table tabl_name ( column_name as computed_column_expression ,.n ) on fiegroup | defa

29、ult textimage_on fiegroup | default 例子:打開cust數據庫,創(chuàng)建一個表,該表包含了學生的有關信息,即有學號、姓名、性別、出生日期、籍貫、聯(lián)系電話、住址和備注信息。 use cust create table students ( number int not null, name varchar(10) not null, sex char(2) null, birthday datetime null, hometown varchar(30) null, telphone_no varchar(12) null, address varchar(30)

30、 null, others varchar(50) null ) 在這個表中number表示學生代號,數據類型為int,不允許為空;name表示學生姓名,數據類型為varchar,長度為10,不允許為空;sex表示學生的性別,數據類型為char,長度為2,允許為空;birthday表示學生的出生日期,數據類型為datetime,允許為空;hometown表示學生的籍貫,數據類型為varchar,長度為30,允許為空;telephone_no表示學生的聯(lián)系電話,數據類型為varchar,長度為12,允許為空;address表示學生的住址,數據類型為varchar,長度為30,允許為空;other

31、s表示學生的備注信息,長度為50,允許為空。 2、修改表的結構 (1)使用t-sql語句增加和刪除一個新列 語法: alter table table add |colun_name as computed_column_expression | ,.n |drop column column ,.n 例子:打開cust數據庫,修改其中的表students的結構,增加一個新字段,字段名為ying,數據類型是varchar,長度是10,沒有默認值,充許為空。 use cust alter table students add ying varchar(10) null 打開cust數據庫,修改其

32、中的表students的結構,刪除一個字段,字段名為ying。 use cust alter table students drop column ying 3、向表中插入數據 (1)用 insert 語句 語法如下: insert into table_name|view_name(column_list) values|values_list|select_statement 注意:在插入數據時,字符數據和日期數據要使用引號引起來。 例子:打開cust數據庫,向students表中插入數據 use cust insert into students values (11,影子,男,1999

33、-12-12,湖北,83779805,武漢市橋口區(qū),vb愛好者) (2)用default 選項 在插入數據時,可以使用default選項。default選項有兩種形式,一種形式是default values,另一種是default。 default values 形式為表中的某一行的所有列插入默認值。使用這種形式的前提條件是表中的所有列必須是這三種類型之一:timestamp數據類型,允許為null,或者有一個指定的默認值。否則,會出現(xiàn)錯誤信息。 例子: use cust insert into students default values 這個例子會出現(xiàn)錯誤,因為students表的num

34、ber字段的設置是不允許為空的。 default 形式是為表中的某一列插入默認值。要插入的該列必須具備一定的條件,即該列要么是timestamp 數據類型,要么是允許為null,要么是有一個指定的默認值,否則,會出現(xiàn)錯誤。 (3)插入部分數據 在使用insert語句插入數據時,還可以插入部分數據,也就是可以為每一行指定的部分列插入數據。在插入部分數據時,應該注意以下三個問題: a) 在 insert 子句中,指定要插入數據的列名。 b) 在 values 子句中,列出與列名對應的數據。列名的順序和數據的順序應該完全對應。 c) 在 insert 子句中,沒有列出的列應該至少具有這三種類型之一:

35、 timestamp 數據類型,允許為 null,或者有一個指定的默認值。否則,會出現(xiàn)錯誤。 例子:打開cust數據庫,向students表中插入一行數據 use cust insert into students (number,name) values (110,影子) (4)用 select 語句插入多條數據 insert 語句插入數據的特點是每一次只能插入一行數據。相反,select也可以用在insert語句中,并且可以一次插入多條數據。使用select 語句插入數據的語法形式如下: insert table_name select column_list from table_lis

36、t where search_conditions 在使用 select 語句插入數據時,應該注意下面幾點: a) 在 insert 語句中使用 select 時,它們參考的表既可以是相同的,也可以是不同的。 b) 要插入數據的表必須已經存在。 c) 要插入數據的表必須和 select 的結果集兼容。兼容的含義是列的數量和順序必須相同,列的數據類型或者相同,或者sql server 可以自動轉換。 (5)使用 select into 插入數據到一個新表中 帶有 into 子句的 select 語句允許用戶定義一個新表并且把數據插入到新表中。這種方法不同于前面講述的那些方法。在前面的那些方法中,

37、一個共同的特點,是在數據輸入之前表已經存在。而使用 select into 插入數據的方法,是在插入數據的過程中建立新表。 select into 語句的語法如下: select select_list into new_table_name from table_listwhere search_conditions 在使用 select into 插入數據時,要注意下面幾點: a) 在某個數據庫中使用 select into 插入數據時,設置該數據庫的 select into/bulk copy 為真。 b) 新表不能存在,否則會產生錯誤信息。 c) 新表中的列和行是基于查詢結果集的。d)

38、 要插入的數據不記錄在日志中。 e) 在select_list 中出現(xiàn)的列應該使用別名,否則,新表中的列沒有列名。沒列名的表只能通過 select * from new_table_name 的形式查詢。因此,應該為列起個別名。 f) 這種方法多用在對列進行各種計算的情況。 (6)用 update 語句修改表中的數據 update 語句用來修改表中已存在的數據。update 語句既可以一次修改一行數據,也可以一次修改許多行,甚至可以一次修改表中的全部數據。update 語句使用 where 子句指定要修改的行,使用 set 子句給出新的數據。新數據可以是常量,也可以是指定的表達式,還可以是使用

39、 from 子句來自其他表的數據。 update 語句的語法如下: update table_name|view_name set column_list=expression ,. . . where clause 在使用 update 語句時,如果沒有使用 where 子句,那么就對表中所有的行進行修改。如果使用update 語句修改數據時與數據完整性約束有沖突,那么修改就不會發(fā)生。 7、用 delete 語句刪除表中的數據 當數據庫中的數據不需要修改的可以刪除。一般情況下,刪除數據使用 delete 語句。delete 語句可以一次從一個表中刪除一條或者多條數據行。 delete 語句的

40、語法如下: delete from table_name where search_conditions 在 delete 語句中如果使用了 where 子句,那么就從指定的表中刪除滿足 where 子句條件的數據行。 8、用 drop table 命令刪除表 當數據庫中的表不需要時可以刪除。刪除表可以使用 drop table 語句。刪除表就是刪除表的定義以及表的全部數據、索引、觸發(fā)器、約束和指定該表的許可。當刪除表時,基于表的視圖不能被刪除,必須使用 drop view 語句刪除視圖。 drop table 語句的語法如下: drop table table_name 例子: use cu

41、st drop table students 刪除cust數據庫中的students表。 補充: 不能使用 drop table 語句刪除正在被約束參考的表,如果必須要刪除則要么刪除外鍵約束,要么刪除參考表。表的所有者可以刪除表。當刪除表時,綁定在該表上的規(guī)則或者默認規(guī)則失掉了綁定,該表的約束或者觸發(fā)器則自動被刪除。如果重新創(chuàng)建表,必須重新綁定相應的規(guī)則和默認、重新創(chuàng)建觸發(fā)器和增加必要的約束。另外,系統(tǒng)表不能刪除。 刪除表的許可屬于表的所有者。然而,數據所有者(dbo)、系統(tǒng)管理員(sa)和dll管理員可以刪除數據庫中的任何對象。 1.1.7 數據的檢索 1、用 select 子句檢索記錄 s

42、elect 子句是每一個檢索數據的查詢核心。它告訴數據庫引擎返回什么字段。 select 子句的常見形式是: select * 該子句的意思是“返回在所指定的記錄源中能找到的所有字段”。這種命令形式很方便,因為你無需知道表中檢索的字段名稱。然而,檢索表中的所有列是低效的。因此,應該只檢索需要的字段,這樣可以大大的提高查詢的效率。 (1)使用 from 子句指定記錄源 from 子句說明的是查詢檢索記錄的記錄源。該記錄源可以是一個表或另一個存儲查詢。 例子: select * from students 檢索students表中的所有記錄 (2)用 where 子句說明條件 where 子句告訴

43、數據庫引擎根據所提供的一個或多個條件限定其檢索的記錄。條件是一個表達式,可具有真假兩種判斷。 例子: select * from students where name=影子 返回students中name字段為影子的列表,這次所返回的結果沒有特定順序,除非你使用了order by子句。該子句將在后面的章節(jié)介紹。 注意:where 子句中的文本字符串界限符是雙引號,在vb中應改為單引號,因為在vb中字符串的界定符是雙引號。 補充:使用 and 和 or可以將兩個或更多的條件鏈接到一起以創(chuàng)建更高級的 where 子句。 例子: select * from students where name=

44、影子 and number100 返回name為影子number大于100的列表。 例子: select * from students where name=影子 and (number100 or number50) 返回name為影子,number大于100或者小于50的列表。 where 子句中用到的操作符: 操作符 功能 小于 大于 = 大于或等于 = 等于 不等于 between 在某個取值范圍內 like 匹配某個模式 in 包含在某個值列表中 例子: a) between 操作符 use cust select * from students where number betw

45、een 1 and 100 between 操作符返回的是位于所說明的界限之內的所有記錄值。這個例子就返回 number 字段 1 到 100 之間的全部記錄。 b) like 操作符和通配符 use cust select * from students where name like %影% like 操作符把記錄匹配到你說明的某個模式。這個例子是返回含“影”的任意字符串。 四種通配符的含義: 通配符 描述 % 代表零個或者多個任意字符 _(下劃線) 代表一個任意字符 指定范圍內的任意單個字符 不在指定范圍內的任意單個字符 全部示例如下: like br% 返回以br開始的任意字符串 li

46、ke br% 返回以br開始的任意字符串 like %een 返回以een結束的任意字符串 like %en% 返回包含en的任意字符串 like _en 返回以en結束的三個字符串 like ck% 返回以c或者k開始的任意字符串 like s-ving 返回長為四個字符的字符串,結尾是ing,開始是從s到v。 like mc% 返回以m開始且第二個字符不是c的任意字符串。 (3)使用 order by 對結果排序 order by 子句告訴數據庫引擎對其檢索的記錄進行排序。可以對任何字段排序,或者對多個字段排序,并且可以以升序或降序進行排列。 在一個正式的 select 查詢之后包含一個

47、order by 子句,后面跟想排序的字段(可以有多個)便可以說明一個排序順序。 例子: use cust select * from students where name like %影% order by number 對返回的結果按 number 進行排序。 以降序排序 如要以降序排序,只需在排序的字段之后使用 desc 關鍵字。 例子: use cust select * from students where name like %影% order by number desc (5)用 as 對字段名進行別名化 為什么在查詢中對字段命以別名,或重新命名,這樣做的原因有兩個: a)

48、 所涉及的表的字段名很長,想使字段在結果集中更易處理一些。 b) 創(chuàng)建的查詢產生了某些計算或合計列,需要對之進行命名。 不管是什么原因對字段命以別名,在 sql 中都可以容易地使用 as 子句做得。 例子: select number as 學號 ,name as 姓名 from students 2、合并查詢 合并查詢( union query )用于合并具有相同字段結構的兩個表的內容,如果想在一個結果集中顯示多個記錄源中的不相關的記錄時十分有用。 例子: select * from students union select * from students1 該查詢結果集把 student

49、s 和 students1 中的記錄合并到一個結果中,其輸出就和原表歸檔之前一模一樣。 注意:缺省情況下,合并查詢不會返回重復記錄,可以加上 all 關鍵字而讓合并查詢顯示重復記錄。 例子: select * from students union all select * from students1 該合并查詢顯示 students 表和 students1 表的內容時,沒有對重復記錄進行處理。 1.2 visual basic1.2.1 變量一、聲名變量1一個變量名的長度最長不超過40個字符,可以由字母、數字、漢字和下劃線組成,但變量的第一個字母必須是字母或漢字。變量的聲明是該變量第一次

50、在源碼中被引用時聲明的。如下面的語句是最簡單的變量聲明:a=1二、變量類型1其實在vb中僅有兩大類變量類型,即數值型和字符串型。1、數值類型數值類型共有六種。(1)整型數值integer和long型數值都是整數,用戶定義某一變量為整型變量后,那么這個變量只能賦予整數。整數要比浮點數運算速度快并且占用內存少。integer型的數值有一定的范圍,-3276832767,如果超出這一范圍,就要用long。(2)浮點數值單精度(single)和雙精度(double)型數值即為浮點數值,它表示的是帶小數的實數。單精度型能精確到七位,而雙精度能精確到15位。用戶在選用這些數據類型時,要注意變量所取值的范圍

51、。并且數值為整數時,為了運算速度,不用把變量硬定義為浮點型。(3)貨幣型currency數據類型是定點數,用于計算貨幣的數量。由于處理的是貨幣,自然要求為高精度。而計算機在進行運算時,總是通過二進制數據進行運算,然后再根據用戶的要求轉換為八進制、十進制等數。因此,會導致進位誤差。例如,有時我們計算1+1,有可能得到的結果卻是1.99999999。而currency數值類型卻是用十進制進行運算,因而其計算非常精確。(4)變體型variant數值類型是對所有的未定義的變量的缺省數據類型。即當給某一變量賦值時,不管是什么類型的,variant都對其進行保留,要檢測variant變量中保存的數值究竟是

52、何種類型,可用vartype函數進行檢測。字符串定義一個文本字符序列。這個字符序列中的字符一般為可打印字符,但也可以是一些控制字符或空串。三、變量說明4變量說明一般有兩種方式:1、使用專用符號在變量名后面加上如下符號即確定了其類型:!單精度浮點數(single)#雙精度浮點數(double)%整型變量(integer)&長整形數據(long)貨幣型數據(currency)$字符串型數據(string)2、在變量名前用關鍵字說明1)dim用于在模塊,窗體和過程中說明變量和數組。格式:dim變量名(下標)as數據類型示例:dima(3)asinteger2)static用于在過程中定義靜態(tài)變量及數

53、組,這種變量類型每當過程被調用時,變量值都會被保留。格式:static變量名(下標)as數據類型示例:staticbringasstring3)redim用于在函數中說明動態(tài)數組和重新分配數組空間,用來定義數組的大小。格式:redim變量名(下標)as數據類型示例:dimabc()asinteger redimabc()4)public用于全局模塊中定義變量和數組。格式:public變量名(下標)as數據類型示例:publicabc(2,4)asinteger四、全局變量與局部變量11、全局變量用public聲明的變量就是全局變量,程序中的任何窗體和模塊都能訪問到它。聲明全局變量要小心,任何模

54、塊或窗體中對它的修改都會影響其它模塊或窗體中該變量的值。2、局部變量在模塊和窗體中用dim或static等聲明的變量只在本模塊或窗體中起作用,這樣的變量叫局部變量。 1.2.2 窗體、控件及其屬性1一、窗體的概念窗體是應用程序的編程窗口和對話框。窗體可包含多個控件。窗體就是包含多個控件的容器。幾乎每個應用程序都要包含一個窗體,如果一個應用程序中需要包含多個窗體,必須給它們不同的名稱。也就是給它們賦予不同的name屬性。窗體命名有如下規(guī)則:1)必須以字母或漢字開頭。2)可包括字母、數字和下劃線,不能有空格或分號。3)最大為40個字符。4)不能具有與別的公共對象相同的名字,例如clipboard、screen或app。雖然可以是一個關鍵字、屬性名字、或別的對象的名字,但這會在代碼中產生沖突。因此也請不要使用。二、 生成窗體啟動一個新的工程文件,屏幕中間有一個帶網點(稱為網格)的窗口,這就是窗體,一般也是程序運行時的主窗口,可以調整該窗體的大小。對窗體,控件的設制或設計期間稱為設計時,程序運行期間稱為運行時。三、 屬性窗口

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論