修改數據庫的一個sql語句
Update 語句
Update 語句用于修改表中的數據,語法: update 表名 set 字段名1=值1,。 Where 關鍵字=值
1、使用Update語句,如果省略“ Where條件”,將更新數據表內的全部記錄。
2、賦值時,注意字段的類型。若為文本型或備注型,則字段值兩邊要加引號,若為日期/時間型,則字段值兩邊要加上#號(加引號也可以);若為布爾類型,則該字段的值為True或 False;若為自動編號類型,則不要給該字段賦值。
拓展資料
批量修改數據
update 表名 set 字段名=stuff(字段名,1,3,'新內容');
如:將表test中name字段的前3個字符改成'test'
update test set name=stuff(name,1,3,'test');
sqlserver stuff用法
1、作用
刪除指定長度的字符,并在指定的起點插入另一組字符。
2、語法
STUFF ( character_expression , start , length ,character_expression )
3、示例
在第一個字符串stringtest中刪除從第3個位置(字符r)開始的三個字符,然后在刪除的起始位置插入第二個字符串,返回一個新的字符串。
select stuff('stringtest',3,3,'ok')
結果 stroktest
4、參數
character_expression
一個字符數據表達式。character_expression可以是常量、變量,也可以是字符列或二進制數據列。
start
一個整數,指定要刪除和插入的開始位置。如果start或length為負,則返回空字符串。如果start比第一個character_expression長,則返回空字符串。start可以是bigint類型。
length
一個整數,指定要刪除的字符串數。如果length比第一個character_expression長,則最多刪除到最后一個character_expression中的最后一個字符。length可以是bigint類型。
5、返回類型
如果character_expression是受支持的字符數據類型,則返回字符數據。如果character_expression是一個不受支持的binary數據類型,則返回二進制數據。
6、備注
如果結果值大于返回類型支持的最大數,則產生錯誤
sql 刪除語句
1、delete 語句用于刪除表中的行。
delete語句執行刪除的過程是每次從表中刪除一行,并且同時將該行的刪除操作作為事務記錄在日志中保存 語法:DELETE FROM 表名稱 WHERE 列名稱 = 值, 如:刪除student表中姓名為張三豐的學生信息-delete from studentwhere name='張三豐'; 2、drop (刪除表):刪除內容和定義,釋放空間。簡單來說就是把整個表去掉.以后要新增數據是不可能的,除非新增一個表。
drop語句將刪除表的結構被依賴的約束(constrain),觸發器(trigger)索引(index);依賴于該表的存儲過程/函數將被保留,但其狀態會變為:invalid。 3、truncate (清空表中的數據):刪除內容、釋放空間但不刪除定義(保留表的數據結構)。
與drop不同的是,只是清空表數據而已。 注意:truncate 不能刪除行數據,要刪就要把表清空。
擴展資料: 數據庫操作中,經常要用到刪除表和刪除表數據,在實際應用中,三者的區別是明確的。 當你不再需要該表時, 用 drop; 當你仍要保留該表,但要刪除所有記錄時, 用 truncate; 當你要刪除部分記錄時(always with a WHERE clause), 用 delete。
truncate 與delete 比較: 1、truncate table 在功能上與不帶 WHERE 子句的 delete語句相同:二者均刪除表中的全部行。 2、truncate 比 delete速度快,且使用的系統和事務日志資源少。
3、truncate 操作后的表比Delete操作后的表要快得多。
SQL 的 增刪改查 語句
SQL常用語句一覽
(1)數據記錄篩選:
sql="select*from數據表where字段名=字段值orderby字段名[desc]"
sql="select*from數據表where字段名like'%字段值%'orderby字段名[desc]"
sql="selecttop10*from數據表where字段名orderby字段名[desc]"
sql="select*from數據表where字段名in('值1','值2','值3')"
sql="select*from數據表where字段名between值1and值2"
(2)更新數據記錄:
sql="update數據表set字段名=字段值where條件表達式"
sql="update數據表set字段1=值1,字段2=值2……字段n=值nwhere條件表達式"
(3)刪除數據記錄:
sql="deletefrom數據表where條件表達式"
sql="deletefrom數據表"(將數據表所有記錄刪除)
(4)添加數據記錄:
sql="insertinto數據表(字段1,字段2,字段3…)values(值1,值2,值3…)"
sql="insertinto目標數據表select*from源數據表"(把源數據表的記錄添加到目標數據表)
SQL語言中的修改語句ALTER和UPDATE有何區別
1、作用區別:
ALTRT用來修改基本表,是對表的結構進行操作,比如對字段的增加、刪除、修改類型
UPDATE用來修改表中的數據,修改某一行某一列的值
2、從本質上區分:
Alter是數據定義語言(Data difinition Language),在修改表的結構時,不需要Commit和Rollback。
Update是數據數據操作語言(Data manipulation Language),在修改數據值時,需要Commit和Rollback,否則提交的結構無效
擴展資料
Alter用法
1、刪除列
ALTER TABLE 【表名】 DROP 【列名】
2、增加列
ALTER TABLE 【表名】 ADD 【列名】 【類型】
3、重命名列
ALTER TABLE 【表名】 CHANGE 【列名】【新名】
4、修改表字段
alter table 表名稱 change 字段名稱 字段名稱 字段類型 [是否允許非空]
Update用法
修改表中字段
update 表名 set 字段=新值 where 主鍵=值
參考資料:Mysql官方參考手冊
Sql 修改語句
如果你的這個“位置”是一個字段的話,就直接用 Update 語句更改其內容。
如果這個“位置”不是字段,只是顯示出來的順序,那就難說了。原因是這樣的:SQL中其實沒有一個物理位置的概念,所有數據記錄的順序依賴于索引及查詢時的排序指令。
所以不要去關心數據的物理位置先后,要改變位置得從自己的數據和查詢語句上著手。
不過呢,有一個聚集索引的與數據的存放順序有關系,LZ可以查查相關資料。只是說,聚集索引會改變存放順序,但它的核心是為其他索引服務的,設置得好,整個數據庫都會受益,查詢速度飛快,設置得不好,數據庫就的響應就會變慢了,甚至拖垮系統。
【求】 一些常用的SQL 添加 查詢 修改語句
(1) 數據記錄篩選:
sql="select * from 數據表 where 字段名=字段值 order by 字段名 "
sql="select * from 數據表 where 字段名 like '%字段值%‘ order by 字段名 "
sql="select top 10 * from 數據表 where 字段名 order by 字段名 "
sql="select * from 數據表 where 字段名 in ('值1','值2','值3')"
sql="select * from 數據表 where 字段名 between 值1 and 值2"
(2) 更新數據記錄:
sql="update 數據表 set 字段名=字段值 where 條件表達式"
sql="update 數據表 set 字段1=值1,字段2=值2 …… 字段n=值n where 條件表達式"
(3) 刪除數據記錄:
sql="delete from 數據表 where 條件表達式"
sql="delete from 數據表" (將數據表所有記錄刪除)
(4) 添加數據記錄:
sql="insert into 數據表 (字段1,字段2,字段3 …) valuess (值1,值2,值3 …)"
sql="insert into 目標數據表 select * from 源數據表" (把源數據表的記錄添加到目標數據表)
(5) 數據記錄統計函數:
AVG(字段名) 得出一個表格欄平均值
COUNT(*|字段名) 對數據行數的統計或對某一欄有值的數據行數統計
MAX(字段名) 取得一個表格欄最大的值
MIN(字段名) 取得一個表格欄最小的值
SUM(字段名) 把數據欄的值相加
引用以上函數的方法:
sql="select sum(字段名) as 別名 from 數據表 where 條件表達式"
set rs=*(sql)
用 rs("別名") 獲取統的計值,其它函數運用同上。
(5) 數據表的建立和刪除:
CREATE TABLE 數據表名稱(字段1 類型1(長度),字段2 類型2(長度) …… )
例:CREATE TABLE tab01(name varchar(50),datetime default now())
DROP TABLE 數據表名稱 (永久性刪除一個數據表)
(6) 記錄集對象的方法:
*xt 將記錄指針從當前的位置向下移一行
*evious 將記錄指針從當前的位置向上移一行
*rst 將記錄指針移到數據表第一行
*st 將記錄指針移到數據表最后一行
*teposition=N 將記錄指針移到數據表第N行
*tepage=N 將記錄指針移到第N頁的第一行
*ze=N 設置每頁為N條記錄
*unt 根據 pagesize 的設置返回總頁數
*count 返回記錄總數
* 返回記錄指針是否超出數據表首端,true表示是,false為否
* 返回記錄指針是否超出數據表末端,true表示是,false為否
* 刪除當前記錄,但記錄指針不會向下移動
* 添加記錄到數據表末端
* 更新數據表記錄
判斷所填數據是數字型
if not isNumeric(request("字段名稱")) then
* "不是數字"
else
* "數字"
end if