1. 程式人生 > >機房--學生基本資訊維護思路篇(組合查詢)

機房--學生基本資訊維護思路篇(組合查詢)

問題:
1.操作符比較資料庫和文字框中數字的大小
2.組合查詢

解決方案:
一、把資料庫中的需要比較大小的欄位的資料型別改為int
例子:就卡號舉例子
在資料庫中新建查詢:

alter table student_Info alter column cardno int not null

程式碼編寫,連線資料庫,要查詢的資料

txtSQL = "select * from student_Info where cardno < '" & txtContent1.Text & "'"
            Set mrc = ExecuteSQL(txtSQL, Msgtext)

通過以上的程式碼,再加上判斷語句就可以實現此功能

二、解決步驟:
1.首先要理解以下的內容

 txtSQL = "select * from 表名 where 欄位名='" & 內容 & "' 

txtsql=之後的內容就是要在資料庫中新建查詢輸入的內容,例如:

 txtSQL = "select * from student_info where cardno='" & 2 & "' 

在資料庫中顯示的就是

select * from student_info where cardno=' 2 ' 

2.理解了以上內容就能實現2個和3個組合查詢

 txtSQL = "select * from student_info where cardno="'" & 2 & "'" & "and(這有一個空格) " & student="'"

3.理清邏輯
①首先看條件是否完整,文字框中的資料根據不同的填入情況而給出相應的提示框
②根據聯絡建立邏輯關係(可以在紙上簡略勾畫)
我的簡便邏輯:
在這裡插入圖片描述

這一個程式碼是實現文字框中是否填寫完整和符合第幾個條件並根據從c()中的資料,聯合查詢相應的資料

 	dim c(2) as boolean
 	if 第一條件的文字框只要有一個為空 then
 	else
 		c(0)=true
 		if 第二條件的文字框只要2有一個為空 then
 		else
 		c(1)=true
 			if 第三條件的文字框只要有一個為空 then
 			else
 				c(2)=true
 			end if

下面這一程式碼是實現組合查詢的主體,簡單的過程:(組合關係有兩個框,上面的為1,下面的為2)

	if c(2) then
		if 組合關係2=“或” then
			組合查詢:第一條件 or 第二條件 or 第三條件
		else
				if 組合關係2=“與” then
					組合查詢:第一條件 and 第二條件 and 第三條件
				else
					msgbox"請輸入第二個組合關係"
				end if
		end if
	else
		if c(1) then
			if 組合關係1=“或” then
				組合查詢:第一條件 or 第二條件 
			else
				if 組合關係1=“與” then
					組合查詢:第一條件 and 第二條件 
				else
					msgbox"請選擇第一個組合關係“	
				end if
			end if
		else
			if c(0) then
				查詢:第一條件
			else
				msgbox"請輸入第一條件的內容"
			end if
		end if
	end if