創建一個Access資料庫
資料庫中包括下列三個表,數據類型自己考慮。
Students(學號,姓名,性別,出生日期,入學成績,專業,個人簡歷,照片)
Course(課程號,課程名稱,學時,學分)
Grade(學號,課程號,成績)
三個表中分別存有30條、8條、60條不同的記錄。
⑴在查詢狀態下,在SQL視圖中分別用SQL語句實現創建以上三個表。
create
table
Students
(
學號
char(10),
性別
char(10),
出生日期
datetime,
入學成績
int,
專業
char(10),
個人簡歷
char(10),
照片
char(100)
)
其他依次類推
⑵分別用SOL語句實現對表結構增加欄位,刪除欄位,修改欄位(類型,長度,名稱)。
alter
table
students
性別
char(20)
⑶分別用SQL語句實現對三個表中記錄的追加。
insert
into
students
values
('0001','張三',',',',……)
⑷分別用SQL語句實現對三個表中滿足條件記錄的更新。
update
students
set
name
'李四'
where
……
⑸分別用SQL語句實現對三個表中相應記錄刪除。
delete
from
students
⑹用SQL語句實現對以上三個表進行相關數據的查詢,查詢的結果中應包括學號、姓名、性別、課程名稱、成績等內容。
⑺製作窗體,表示三個表數據
⑻將分別製作三個表的列印報表及⑹查詢結果的列印報表。
Ⅱ vfp中除了查詢以外其他操作可以直接生成SQL語句嗎
SQL語句在VFP實際是一個字元串。只要是合法的字元串,語法沒有問題,你怎麼生成這個SQL語句,程序是不管你的。
生成SQL語句,按照我使用的經驗,我用過下面幾個方法:
1、直接在程序代碼中設計,字元串變數=字元串1+字元串2+字元串3。。。,然後把生成的字元串變數,代入我要用的函數,如sqlexec()等,執行,得到我要的結果;
2、如果sql語句太長,程序代碼要分幾行,兩行之間用分號「;」連接;
3、更簡單辦法,把sql語句寫好,保存在DBF表中,如果很長呢,建議用memo類型;使用時,只要引用格式——「表名.欄位名(memo欄位)」,使用效率跟字元串變數類似(方法1)。
從上面引申出去,只要能得到我們需要的字元串,就可以得到SQL語句,各種方法都可以。
Ⅲ 如題,用sql語句怎麼寫
sql語句是用來編寫選擇查詢,追加查詢,刪除查詢,更新查詢等的一種工具。
您說的創建用戶,設置密碼,設置許可權等應當用編程語言來編寫。
Ⅳ 怎麼給已有的SQL語句用程序添加查詢條件
用流程式控制制語句拼接就可以了,比如(Java為例):
String sql="select * from XXX where 1=1";
if(條件)sql+=" and 欄位=值";
if(條件)sql+=" and 欄位=值";
if(條件)sql+=" and 欄位=值";對於編程語言來說,sql就是一個字元串,拼接成能執行的sql就行了。
Ⅳ 生成表查詢、更新查詢、追回查詢和刪除查詢各使用何SQL語句,其與選擇查詢有何關聯
回答你這個問題還是比較繁雜的,下面還是生成表查詢、更新查詢、追回查詢和刪除查詢一個一個來說吧
生成表查詢:
從一個或多個表中檢索數據,然後將結果集載入到一個新表中。該新表可以駐留在已打開的資料庫中,您也可以在其他資料庫中創建該表。
通常,在需要復制或存檔數據時,可創建生成表查詢。
若要創建生成表查詢,請首先創建選擇查詢,然後將其轉換為生成表查詢。選擇查詢可以使用計算欄位和表達式來幫助返回所需的數據。
更新查詢:
使用更新查詢可以添加、更改或刪除一條或多條現有記錄中的數據。可以將更新查詢視為一種功能強大的「查找和替換」對話框形式。可以輸入選擇條件(大致相當於搜索字元串)和更新條件(大致相當於替換字元串)。與「查找和替換」對話框不同,更新查詢可接受多個條件,使您可以一次更新大量記錄,並使您可以一次更改多個表中的記錄。
在運行更新查詢之前,應當先備份資料庫。更新查詢的結果無法撤消,因此進行備份可確保始終能夠取消更改。
使用更新查詢的最可靠方法是先創建一個可測試選擇條件的選擇查詢。例如,假設您要為某一給定客戶將一系列「是/否」欄位從「否」更新為「是」。為此,可以向選擇查詢中添加條件,直到它為該客戶返回所有在記錄中包含「否」的記錄。在確定該查詢返回正確的記錄後,可將其轉換為更新查詢,輸入更新條件,然後運行查詢以更改選定值。本節中的步驟說明如何創建選擇查詢,然後將其轉換為更新查詢。
追加查詢:
追加查詢可將一組記錄(行)從一個或多個源表(或查詢)添加到一個或多個目標表。通常,源表和目標表位於同一資料庫中,但並非必須如此。例如,假設您獲得了一些新客戶以及一個包含有關這些客戶的信息表的資料庫。為了避免手動輸入這些新數據,可以將這些新數據追加到資料庫中相應的表中。
創建追加查詢的過程的基本步驟如下:
創建選擇查詢。
將選擇查詢轉換為追加查詢。
為追加查詢中的每一列選擇目標欄位。
運行該查詢以追加記錄。
刪除查詢:
刪除查詢將刪除每個欄位中的所有數據,包括唯一標識記錄的鍵值。運行該查詢時,它始終會從表中刪除整個行。此過程包括以下主要步驟:創建一個選擇查詢並確保該查詢返回您要刪除的記錄,然後將此查詢轉換為刪除查詢,並運行該查詢以刪除數據。
從上面可以看出來行為查詢(生成表查詢、更新查詢、追回查詢和刪除查詢)因為在ACCESS資料庫中都具有不可即時還原即ROLLBACK功能,都會先用選擇查詢確認語句的效果及需要處理的記錄集合
其實ACCESS都提供了可視化的操作界面來做這些行為,如果要用SQL來一一對應的話,就是
生成表查詢 create table
更新查詢 update table
追回查詢 insert into table
刪除查詢 delete table
具體的寫法你可以看一些SQL語句的實例,還有什麼問題的話可以QQ留言給我。
Ⅵ 關於SQL查詢追加記錄的問題
SELECT "城鎮" AS 類型, Count(總數據.order) AS 人數, sum(總數據.total)/count(總數據.total) AS 總平均分, sum(總數據.study)/count(總數據.study) AS 學習平均分, sum(總數據.intercourse)/count(總數據.intercourse) AS 交往平均分, sum(總數據.acclimatize)/count(總數據.acclimatize) AS 適應平均分, sum(總數據.oneself)/count(總數據.oneself) AS 自身平均分 FROM 總數據 WHERE 總數據.origin="2"
union
SELECT "農村" AS 類型, Count(總數據.order) AS 人數, sum(總數據.total)/count(總數據.total) AS 總平均分, sum(總數據.study)/count(總數據.study) AS 學習平均分, sum(總數據.intercourse)/count(總數據.intercourse) AS 交往平均分, sum(總數據.acclimatize)/count(總數據.acclimatize) AS 適應平均分, sum(總數據.oneself)/count(總數據.oneself) AS 自身平均分 FROM 總數據 WHERE 總數據.origin="1";
Ⅶ 如何對一個欄位追加內容。SQL語句怎麼實現
對一個欄位追加內容是需要將原欄位內容保留,在其內容後增加新的內容,語法是:
列名=列名+'追加內容'
使用【+】號將原欄位內容與追加內容合並後並賦值給欄位
例如在表【table_Temp】中列【ID】等於3的時候,在列【value1】中追加數據可以這樣寫:
updatetable_Tempsetvalue1=value1+'需要追加的數據'whereID=3
當然,有個前題,就是列【Value1】的長度足夠存儲下這么長的數據
Ⅷ 怎麼把追加查詢切換到sql視圖
可以使用T-SQL語句添加視圖:
CREATE VIEW view_name
AS
<select語句>
IF EXISTS (SELECT * FROM sysobjects WHERE /*檢測是否存在*/
name = 'view_stuInfo_stuMarks')
DROP VIEW view_stuInfo_stuMarks /*刪除視圖*/
GO
CREATE VIEW view_stuInfo_stuMarks /*創建視圖*/
AS
SELECT 姓名=stuName,學號=stuInfo.stuNo,
筆試成績 =writtenExam, 機試成績=labExam,
平均分=(writtenExam+labExam)/2
FROM stuInfo LEFT JOIN stuMarks
ON stuInfo.stuNo=stuMarks.stuNo
GO
SELECT * FROM view_stuInfo_stuMarks /*使用視圖*/
從一個或者多個表或視圖中導出的虛擬表,結構和數據建立在對表的查詢基礎上的。
理論上它可以像普通的物理表一樣使用,例如增、刪、改、查等,修改視圖中的數據實際上是修改原始數據表。
因為修改視圖有許多限制,所以在實際開發中一般視圖僅做查詢使用。
Ⅸ ACCESS 追加查詢 SQL語句
追加語句:
InsertInto目的表名(目的表名.欄位1,目的表名.欄位2)Values('值1','值2');
上面是標準的語法。跟T_SQL操作查詢是一樣的。所以他也能嵌套擴展,比如我要表對表追加查詢:
InsertInto目的表名(目的表名.欄位1,目的表名.欄位2)Select來源表.欄位1,來源表.欄位2from來源表
你也可以給他有選擇性的篩選:
InsertInto目的表名(目的表名.欄位1,目的表名.欄位2)Select來源表.欄位1,來源表.欄位2from來源表where條件加在這
你也可以嵌套連接查詢,舉個例子,我要向A表追加B表數據,當A表有重復某個欄位就不重復追加,沒有就追加,通過這種方法避免重復追加:
InsertIntoA(A.欄位1,A.欄位2)SelectB.欄位1,B.欄位2fromBLeftjoinAonB.欄位1=A.欄位1where((A.欄位1)isnull)
Ⅹ 在多個條件查詢,怎麼動態生成sql語句
string sql="select * from table where 1=1 ";
if(XXXXXX)
{
sql+="*********";
}
if(XXXXXX)
{
sql+="*********";
}
if(XXXXXX)
{
sql+="*********";
}
......