數據庫基本操作語句-請教數據庫的問題想問一下~1.學習數據庫~是不是
操作數據庫的語言很多,C和Java、VB都有操作數據庫的接口。
數據結構是學習編程的基礎,是讓教會你如何將要解決的問題的數據化的方法,以及一些基本的算法。 學習數據庫看你要從哪個方面去學習,如果只是簡單的管理數據庫或是對數據庫做有限的操作的話,學習好SQL就可以了,由于目前比較多得企業單位用的都是甲骨文公司的Oracle,所以學習好PL/SQL就可以解決很多問題,網上有PL/SQL編程基礎下載,看看足亦。
如果你是要做以數據庫為依托的大型管理分析程序的話,建議還要學習其他語言,設計界面和處理數據,可以學習Delphi,PB,。net 這里要說明一下,數據結構不是以C為基礎,而是因為C語言是早期流行的語言,而且因為其簡單易學,用以闡敘數據結構的思想和演示算法有著很好的教學效果,所以很多數據結構的教材都使用了C語言作為講解的例子。
數據結構還是上面我說的,它教會得不是一種方式,而是一種思想,他不是某種程序的思想,而是寫所有程序的思想。也有用C++寫就的數據結構,也有用Java寫就的,關鍵是教授怎么去教,教得好,什么語言都可以教。
我個人推崇Delphi編程入門 + 數據庫基礎+PL/SQL編程基礎 這樣得書籍組合,數據庫重點掌握視圖和范式,對于數據庫,算法不是關鍵,而數據庫得設計才是影響效率得關鍵。 只要上面三本書讀懂了,應該對付一般得數據庫問題不是太大了。
而且,最好還要多學習一下網絡知識,現在得數據庫應用很多都不是簡單得一臺機器上又是應用程序,又是數據庫存儲。而是應用和存儲分開得模式。
就如同電信得工作方式,每個客戶的信息都式在電信中心機房的專門的存儲設備上也就是數據庫里,而在服務大廳里,接待員面前的終端處理信息的時候,他們操作的都是應用程序,但是應用程序最后產生的結果就是讀寫數據庫的操作。 因此,這種存儲和應用分離的方式就需要對網絡也要有所了解。
另外真正的大型企業的數據庫大多都是UNIX系統管理數據庫,使用小型機處理數據。所以想真正學好數據庫,就要在數據庫、小型機、網絡這三個方面有所突破。
這樣的人才是真正實用的人才,在哪里都吃的香。 。
搜集SQL常用的操作語句
結構化查詢語言(Structured Query Language)簡稱SQL(發音:/?es kju? ?el/ "S-Q-L"),是一種特殊目的的編程語言,是一種數據庫查詢和程序設計語言,用于存取數據以及查詢、更新和管理關系數據庫系統;同時也是數據庫腳本文件的擴展名。
一、插入(復制)表數據
1、INSERT INTO 語句:
(1)插入新的一行數
[sql] view plain copy;
INSERT INTO Persons VALUES ('Gates', 'Bill', 'Xuanwumen 10', 'Beijing');
(2)在指定的列中插入數據
[sql] view plain copy;
INSERT INTO Persons (LastName, Address) VALUES ('Wilson', 'Champs-Elysees');
2、SQL SELECT INTO 語句可用于創建表的備份復件
(1)在建表時復制所有數據
[sql] view plain copy;
create table userinfo_new as select * from userinfo;
(2)在建表時復制部分數據
[sql] view plain copy;
create table userinfo_new1 as select id,username from userinfo;
(3)在添加時復制所有數據
[sql] view plain copy;
insert into userinfo_new select * from userinfo;
(4)在添加時復制部分數據
[sql] view plain copy;
insert into userinfo_new(id,username) select id,username from userinfo;
二、修改表數據
Update 語句
(1)無條件更新
[sql] view plain copy;
update userinfo set userpwd='111',email='111@*';
(2)有條件更新
[sql] view plain copy;
update userinfo set userpwd='123456' where username='xxx';
三、刪除表數據
1、DELETE 語句
(1)無條件刪除
[sql] view plain copy;
dalete from userinfo;
(2)有條件刪除
[sql] view plain copy;
delete from userinfo where username='yyy';
四、查詢表數據
1、SELECT 語句:
(1)查詢所有字段
[sql] view plain copy;
select * from users;
(2)查詢指定字段
[sql] view plain copy;
select username,salary from users;
2、SELECT DISTINCT 語句
從 Company" 列中僅選取唯一不同的值,需要使用 SELECT DISTINCT 語句:
[sql] view plain copy;
SELECT DISTINCT Company FROM Orders;
操作數據庫結構的SQL語句是什么
Sql Server 和 Access 操作數據庫結構的常用Sql,希望對你有所幫助。
新建表: create table [表名] ( [自動編號字段] int IDENTITY (1,1) PRIMARY KEY , [字段1] nVarChar(50) default '默認值' null , [字段2] ntext null , [字段3] datetime, [字段4] money null , [字段5] int default 0, [字段6] Decimal (12,4) default 0, [字段7] image null , ) 刪除表: Drop table [表名] 插入數據: INSERT INTO [表名] (字段1,字段2) VALUES (100,'51WINDOWS。 NET') 刪除數據: DELETE FROM [表名] WHERE [字段名]>100 更新數據: UPDATE [表名] SET [字段1] = 200,[字段2] = '51WINDOWS。
NET' WHERE [字段三] = 'HAIWA' 新增字段: ALTER TABLE [表名] ADD [字段名] NVARCHAR (50) NULL 刪除字段: ALTER TABLE [表名] DROP COLUMN [字段名] 修改字段: ALTER TABLE [表名] ALTER COLUMN [字段名] NVARCHAR (50) NULL 重命名表:(Access 重命名表,請參考文章:在Access數據庫中重命名表) sp_rename '表名', '新表名', 'OBJECT' 新建約束: ALTER TABLE [表名] ADD CONSTRAINT 約束名 CHECK ([約束字段] NET' FOR [字段名] 刪除默認值 ALTER TABLE [表名] DROP CONSTRAINT 默認值名 刪除Sql Server 中的日志,減小數據庫文件大小 dump transaction 數據庫名 with no_log backup log 數據庫名 with no_log dbcc shrinkdatabase(數據庫名) exec sp_dboption '數據庫名', 'autoshrink', 'true'。
數據庫得一些常用語句及其使用方法
數據的操作(增刪改查)
1.插入數據:
(1)單行INSERT語句
INSERT INTO [表名] (字段1,字段2) VALUES (100,'*')
(2)多行INSERT語句
INSERT INTO [表名] (字段1,字段2) SELECT (字段1,字段2) FROM [表名2] WHERE [條件]
2.刪除數據:
DELETE FROM [表名] WHERE [字段名]>100
更新數據:
UPDATE [表名] SET [字段1] = 200,[字段2] = '*' WHERE [字段三] =
\'HAIWA\'
3.查詢數據:
select (字段1,字段2) from [表名] where [條件] order by [字段] desc;
4.刪除表:
Drop table [表名]
5.新增字段:
ALTER TABLE [表名] ADD [字段名] NVARCHAR (50) NULL
6.刪除字段:
ALTER TABLE [表名] DROP COLUMN [字段名]
7.修改字段:
ALTER TABLE [表名] ALTER COLUMN [字段名] NVARCHAR (50) NULL
SQL最基本的語句是哪些
掌握SQL四條最基本的數據操作語句:Insert,Select,Update和Delete。
練掌握SQL是數據庫用戶的寶貴財 富。在本文中,我們將引導你掌握四條最基本的數據操作語句?SQL的核心功能?來依次介紹比較操作符、選擇斷言以及三值邏輯。
當你完成這些學習后,顯然你已經開始算是精通SQL了。在我們開始之前,先使用CREATE TABLE語句來創建一個表(如圖1所示)。
DDL語句對數據庫對象如表、列和視進行定義。它們并不對表中的行進行處理,這是因為DDL語句并不處理數據庫中實際的數據。
這些工作由另一類SQL語句?數據操作語言(DML)語句進行處理。SQL中有四種基本的DML操作:INSERT,SELECT,UPDATE和DELETE。
由于這是大多數SQL用戶經常用到的,我們有必要在此對它們進行一一說明。在圖1中我們給出了一個名為EMPLOYEES的表。
其中的每一行對應一個特定的雇員記錄。請熟悉這張表,我們在后面的例子中將要用到它。
INSERT語句用戶可以用INSERT語句將一行記錄插入到指定的一個表中。例如,要將雇員John Smith的記錄插入到本例的表中,可以使用如下語句:INSERT INTO EMPLOYEES VALUES('Smith','John','1980-06-10','Los Angles',16,45000);通過這樣的INSERT語句,系統將試著將這些值填入到相應的列中。
這些列按照我們創建表時定義的順序排列。在本例中,第一個值“Smith”將填到第一個列LAST_NAME中;第二個值“John”將填到第二列FIRST_NAME中……以此類推。
我們說過系統會“試著”將值填入,除了執行規則之外它還要進行類型檢查。如果類型不符(如將一個字符串填入到類型為數字的列中),系統將拒絕這一次操作并返回一個錯誤信息。
如果SQL拒絕了你所填入的一列值,語句中其他各列的值也不會填入。這是因為SQL提供對事務的支持。
一次事務將數據庫從一種一致性轉移到另一種一致性。如果事務的某一部分失敗,則整個事務都會失敗,系統將會被恢復(或稱之為回退)到此事務之前的狀態。
回到原來的INSERT的例子,請注意所有的整形十進制數都不需要用單引號引起來,而字符串和日期類型的值都要用單引號來區別。為了增加可讀性而在數字間插入逗號將會引起錯誤。
記住,在SQL中逗號是元素的分隔符。同樣要注意輸入文字值時要使用單引號。
雙引號用來封裝限界標識符。對于日期類型,我們必須使用SQL標準日期格式(yyyy-mm-dd),但是在系統中可以進行定義,以接受其他的格式。
當然,2000年臨近,請你最好還是使用四位來表示年份。既然你已經理解了INSERT語句是怎樣工作的了,讓我們轉到EMPLOYEES表中的其他部分:INSERT INTO EMPLOYEES VALUES('Bunyan','Paul','1970-07-04','Boston',12,70000);INSERT INTO EMPLOYEES VALUES('John','Adams','1992-01-21','Boston',20,100000);INSERT INTO EMPLOYEES VALUES('Smith','Pocahontas','1976-04-06','Los Angles',12,100000);INSERT INTO EMPLOYEES VALUES('Smith','Bessie','1940-05-02','Boston',5,200000);INSERT INTO EMPLOYEES VALUES('Jones','Davy','1970-10-10','Boston',8,45000);INSERT INTO EMPLOYEES VALUES('Jones','Indiana','1992-02-01','Chicago',NULL,NULL);在最后一項中,我們不知道Jones先生的工薪級別和年薪,所以我們輸入NULL(不要引號)。
NULL是SQL中的一種特殊情況,我們以后將進行詳細的討論。現在我們只需認為NULL表示一種未知的值。
有時,像我們剛才所討論的情況,我們可能希望對某一些而不是全部的列進行賦值。除了對要省略的列輸入NULL外,還可以采用另外一種INSERT語句,如下:INSERT INTO EMPLOYEES(FIRST_NAME, LAST_NAME,HIRE_DATE, BRANCH_OFFICE)VALUE('Indiana','Jones','1992-02-01','Indianapolis');這樣,我們先在表名之后列出一系列列名。
未列出的列中將自動填入缺省值,如果沒有設置缺省值則填入NULL。請注意我們改變了列的順序,而值的順序要對應新的列的順序。
如果該語句中省略了FIRST_NAME和LAST_NAME項(這兩項規定不能為空),SQL操作將失敗。讓我們來看一看上述INSERT語句的語法圖:INSERT INTO table[(column { ,column})]VALUES(columnvalue [{,columnvalue}]);和前一篇文章中一樣,我們用方括號來表示可選項,大括號表示可以重復任意次數的項(不能在實際的SQL語句中使用這些特殊字符)。
VALUE子句和可選的列名列表中必須使用圓括號。SELECT語句SELECT語句可以從一個或多個表中選取特定的行和列。
因為查詢和檢索數據是數據庫管理中最重要的功能,所以SELECT語句在SQL中是工作量最大的部分。實際上,僅僅是訪問數據庫來分析數據并生成報表的人可以對其他SQL語句一竅不通。
SELECT語句的結果通常是生成另外一個表。在執行過程中系統根據用戶的標準從數據庫中選出匹配的行和列,并將結果放到臨時的表中。
在直接SQL(direct SQL)中,它將結果顯示在終端的顯示屏上,或者將結果送到打印機或文件中。也可以結合其他SQL語句來將結果放到一個已知名稱的表中。
SELECT語句功能。
SQL操作語句
樓上的都是用join連接實現的
1、(關系代數符號有的難打,那個選取的就用6來表示了)
(1)select a.學號,a.姓名,a.高考分數
from 學生 a , 成績 b
where a.學號=b.學號 and b.課程號='101311'
對應的關系代數:
π學號,姓名,高考分數(學生 * 6課程號='101311'(成績))(2)select distinct a.學號,a.姓名,d.學院名稱,d.電話
from 學生 a ,成績 b ,教師 c ,學院 d
where b.學號=a.學號 and c.教師號=b.教師號 and d.學院號=c.學院號 and a.學號='1012010101'
對應關系代數表達式:
π學號,姓名,學院名稱,電話 (成績 * 教師 * 學院 * 6學號='1012010101'(學生))2.(1)select a.學號,a.姓名,d.課程名,c.教師姓名,b.分數
from 學生 a 成績 b, 教師 c,課程 d
where a.學號=b.學號 and c.教師號=b.教師號 and d.課程號=b.課程號and b.課程號='101001'
或者:向樓上那樣寫(2)select 學號,avg(分數) as 平均分
from 成績group by 學號* view 成績單asselect a.學號,a.姓名,d.學院名稱,e.課程名,b.分數from 學生 a,成績 b ,, 教師 c,學院 d ,課程 e,
where b.學號=a.學號 and c.教師號=b.教師號 and d.學院號=c.學院號 and e.課程號=b.課程號
常用SQL語句大全
常用的也好多啊,更多主到:
--數據操作
SELECT --從數據庫表中檢索數據行和列
INSERT --向數據庫表添加新數據行
DELETE --從數據庫表中刪除數據行
UPDATE --更新數據庫表中的數據
--數據定義
CREATE TABLE --創建一個數據庫表
DROP TABLE --從數據庫中刪除表
ALTER TABLE --修改數據庫表結構
CREATE VIEW --創建一個視圖
DROP VIEW --從數據庫中刪除視圖
CREATE INDEX --為數據庫表創建一個索引
DROP INDEX --從數據庫中刪除索引
CREATE PROCEDURE --創建一個存儲過程
DROP PROCEDURE --從數據庫中刪除存儲過程
CREATE TRIGGER --創建一個觸發器
DROP TRIGGER --從數據庫中刪除觸發器
CREATE SCHEMA --向數據庫添加一個新模式
DROP SCHEMA --從數據庫中刪除一個模式
CREATE DOMAIN --創建一個數據值域
ALTER DOMAIN --改變域定義
DROP DOMAIN --從數據庫中刪除一個域
--數據控制
GRANT --授予用戶訪問權限
DENY --拒絕用戶訪問
REVOKE --解除用戶訪問權限
--事務控制
COMMIT --結束當前事務
ROLLBACK --中止當前事務
SET TRANSACTION --定義當前事務數據訪問特征
--程序化SQL
DECLARE --為查詢設定游標
EXPLAN --為查詢描述數據訪問計劃
OPEN --檢索查詢結果打開一個游標
FETCH --檢索一行查詢結果
CLOSE --關閉游標
PREPARE --為動態執行準備SQL 語句
EXECUTE --動態地執行SQL 語句
DESCRIBE --描述準備好的查詢
---局部變量
declare @id char(10)
--set @id = '10010001'
select @id = '10010001'
---全局變量
---必須以@@開頭
--IF ELSE