表名 table_name 要操作的 欄位名 field_name
如果刪除欄位的值,可以將所有值清空:
如果刪除欄位(這個欄位從此就沒有了):
基本的語法為:alter table <表名> drop column <欄位名>;
1.增加一個欄位
2.刪除一個欄位
3.修改一個欄位
http://blog.csdn.net/qustdjx/article/details/8875827
㈡ Mysql 刪除表
DROP TABLE table_name (刪除表);delete from 表名 where 刪除條件(刪除表內數據,用delete);truncate table 表名(清除表內數據,保存表結構,用truncate)。
(2)mysql刪除表數據sql擴展閱讀:
1、MySQL中刪除數據表是非常容易操作的, 但是你再進行刪除表操作時要非常小心,因為執行刪除命令後所有數據都會消失。
2、命令提示窗口中刪除數據表:SQL語句為DROP TABLE 。
3、使用PHP腳本刪除數據表:PHP使用 mysqli_query 函數來刪除 MySQL 數據表。該函數有兩個參數,在執行成功時返回 TRUE,否則返回 FALSE。語法mysqli_query(connection,query,resultmode)。
4、當你不再需要該表時, 用drop;當你仍要保留該表,但要刪除所有記錄時, 用truncate;當你要刪除部分記錄時, 用delete。
5、drop table table_name: 刪除表全部數據和表結構,立刻釋放磁碟空間,不管是 Innodb 和 MyISAM。實例,刪除學生表:drop table student。
6、truncate table table_name: 刪除表全部數據,保留表結構,立刻釋放磁碟空間 ,不管是 Innodb 和 MyISAM。實例,刪除學生表:truncate table student。
7、delete from table_name: 刪除表全部數據,表結構不變,對於 MyISAM 會立刻釋放磁碟空間,InnoDB 不會釋放磁碟空間。實例,刪除學生表:delete from student。
8、delete from table_name where xxx: 帶條件的刪除,表結構不變,不管是 innodb 還是 MyISAM 都不會釋放磁碟空間。實例,刪除學生表中姓名為 "張三" 的數據:delete from student where T_name = "張三"。
9、delete 操作以後,使用optimize table table_name會立刻釋放磁碟空間,不管是 innodb 還是 myisam。實例,刪除學生表中姓名為 "張三" 的數據:delete from student where T_name = "張三"。
10、delete from表以後雖然未釋放磁碟空間,但是下次插入數據的時候,仍然可以使用這部分空間。
㈢ mysql 刪除整張表的sql語句
MySQL中多表刪除的方法如下:
1、從MySQL數據表t1中把那些id值在數據表t2里有匹配的記錄全刪除掉
DELETE t1 FROM t1,t2 WHERE t1.id=t2.id 或DELETE FROM t1 USING t1,t2 WHERE t1.id=t2.id
2、從MySQL數據表t1里在數據表t2里沒有匹配的記錄查找出來並刪除掉
DELETE t1 FROM t1 LEFT JOIN T2 ON t1.id=t2.id WHERE t2.id IS NULL 或
DELETE FROM t1,USING t1 LEFT JOIN T2 ON t1.id=t2.id WHERE t2.id IS NULL
3、從兩個表中找出相同記錄的數據並把兩個表中的數據都刪除掉
DELETE t1,t2 from t1 LEFT JOIN t2 ON t1.id=t2.id WHERE t1.id=25
注意此處的delete t1,t2 from 中的t1,t2不能是別名
如:delete t1,t2 from table_name as t1 left join table2_name as t2 on t1.id=t2.id where table_name.id=25 在數據裡面執行是錯誤的(MySQL 版本不小於5.0在5.0中是可以的)
上述語句改寫成
delete table_name,table2_name from table_name as t1 left join table2_name as t2 on t1.id=t2.id where table_name.id=25 在數據裡面執行是錯誤的(MySQL 版本小於5.0在5.0中是可以的)
㈣ 15個MySQL常用基本SQL語句
在學習SQL語句之前,首先需要區分幾個概念,我們常說的資料庫是指資料庫軟體,例如MySQL、Oracle、SQL Server等,而本文提到的資料庫是指資料庫軟體中的一個個用於存儲數據的容器。
在MySQL中,資料庫稱為database,數據表稱為table,一個資料庫軟體中有多個資料庫(databases),每個資料庫中又可以有多個數據表(tables),最終,數據是存儲在數據表中。
資料庫和數據表之間的關系可以用下面這個圖來表示,對於一個資料庫來說,有多個數據表。
在正式開始寫SQL語句之前,需要說明兩點。
這里通過MySQL Workbench來寫SQL代碼,在Workbench中,執行一條SQL語句的方式有兩種。
了解了這之後,接下來介紹一些常見的命令,分兩部分:資料庫常用命令和數據表常用命令。
1、查看有哪些資料庫
2、創建資料庫
創建一個名為Testdb的資料庫。
3、創建資料庫並指定編碼格式
有些時候,為了防止中文亂碼,創建資料庫的時候需要指定編碼格式。
4、使用某個資料庫
使用mydb這個資料庫,或者進入mydb這個資料庫。
5、刪除資料庫
刪除Testdb這個資料庫。
1、查看有哪些數據表
進入某個資料庫之後,想查看有哪些數據表,SQL語句為:
mydb是一個新建的資料庫,所以自然是沒有數據表。
2、創建數據表
建表SQL語句格式為:
說明: 每個欄位以逗號分隔,最後一個欄位不加逗號。
例如,給定一個學員信息表,如下表所示。
根據以上表格,建表SQL語句如下。
以上語句中,primary key表示主鍵,意思是這個欄位作為記錄的唯一標識,就像每個人的身份證號,都是唯一確定的。
3、查看錶結構
查看錶結構的SQL命令為:
執行該命令會顯示表stuinfo的基本結構,例如有哪些欄位,每個欄位是什麼類型,誰是主鍵等。
4、修改數據表
修改數據表通過drop子句進行,比如,建完表後,想增加一個欄位,SQL語句的格式為:
想在指定位置增加一個欄位,例如,在某個欄位後增加一個欄位,SQL語句的格式為:
如果在某個欄位之前增加欄位,用before即可。
例如,在欄位age後增加一個欄位major(專業),SQL語句為:
執行這個命令,再通過describe查看錶結構,會發現表中多了一個欄位major。
如果要刪除major這個欄位,通過drop子句,SQL語句為:
5、重命名表
重命名表通過alter+rename來實現,SQL語句格式為:
這里為了不影響之前創建的表,我們創建一個新表,SQL語句如下。
以上創建一個名為stuInfoTest的表,現在想將它的名稱改成stuinfotest1,SQL語句為:
6、刪除數據表
刪除數據表通過drop進行,SQL語句格式為:
例如,刪除數據表stuinfotest1,SQL語句為:
7、插入記錄
此時的表stuinfo是空的,沒有數據,我們要向表中插入記錄。
插入記錄通過insert into進行,SQL語句格式為:
例如,向表stuinfo插入一條記錄,SQL語句為:
注意:上方是一條SQL語句,為了可讀性換行,記住一條SQL語句默認以分號結尾。
如果需要一次性插入多條記錄,SQL語句格式為:
例如,向表stuinfo再插入兩條記錄,SQL語句為:
注意:如果設置了主鍵,插入記錄的主鍵欄位是不能重復的,也就是不能插入重復的記錄。
作業:大家可以按照上述方法將上面的學員信息表中的所有記錄都插入表stuinfo中。
8、查詢記錄
有了數據之後,就可以查詢記錄了,查詢記錄通過select子句進行。
例如,想查詢表stuinfo中的所有記錄,SQL語句為:
執行之後,就可以看到表stuinfo中的所有記錄了。
如果想查詢符合某個條件的記錄,就要用到where子句了,SQL格式為:
例如,想查詢stuid為20161001的記錄,SQL語句為:
9、刪除記錄
刪除記錄通過delete子句進行,SQL語句格式為:
例如,想刪除stuid為20161002的記錄,SQL語句為:
10、修改記錄
修改記錄通過update子句進行,update就是更新的意思,SQL語句格式為:
例如,想將學號(stuid)為20161001的記錄的姓名(stuname)更新為Jack,SQL語句為:
以上,就是MySQL中的基本SQL語句。
零基礎如何學習數據分析?查看下方專欄。
㈤ mysql如何清空表
mysql有兩種方式可以清空表。分別為:delete from 表名和truncate table 表名。
delete from 表名,刪除表數據,全部刪除則是可以清空表,相當於一條條刪除,需要注意的是,如果有欄位是自增的(一般為id),這樣刪除後,id 值還是存在的。舉例來說,就是加入你在刪除之前最大的id為100,你用這種方式清空表後 ,新插入一條數據其id為101,而不是1。
㈥ mysql刪除語句
mysql刪除語句如下:
1、delete刪除一行:delete from student where id=1。
2、delete刪除多行:delete from student where in (1,2,3)3。
3、刪除表的所有數據:delete from student,請使用不帶where子句的delete語句。
語法說明如下:
<資料庫名>:指定要刪除的資料庫名。
IF EXISTS:用於防止當資料庫不存在時發生錯誤。
DROP DATABASE:刪除資料庫中的所有表格並同時刪除資料庫。使用此語句時要非常小心,以免錯誤刪除。如果要使用 DROP DATABASE,需要獲得資料庫 DROP 許可權。
(6)mysql刪除表數據sql擴展閱讀:
MySQL因為其速度、可靠性和適應性而備受關注。大多數人都認為在不需要事務化處理的情況下,MySQL是管理內容最好的選擇。
常用命令:
1、使用SHOW語句找出在伺服器上當前存在什麼資料庫:mysql> SHOW DATABASES。
2、創建一個資料庫MYSQLDATA:mysql> CREATE DATABASE MYSQLDATA。
3、選擇你所創建的資料庫:mysql> USE MYSQLDATA。(按回車鍵出現Database changed 時說明操作成功!)
4、查看現在的資料庫中存在什麼表:mysql> SHOW TABLES。
參考資料:網路—MySQL資料庫
參考資料:網路—delete
㈦ mysql資料庫刪除表數據
MySQL 刪除數據表
MySQL中刪除數據表是非常容易操作的, 但是你再進行刪除表操作時要非常小心,因為執行刪除命令後所有數據都會消失。
具體語法參考
以下為刪除MySQL數據表的通用語法:
希望對您有所幫助哦~
㈧ MySQL中刪除數據的方法有哪些
在MySQL中有兩種方法可以刪除數據,一種是DELETE語句,另一種是TRUNCATE TABLE語句。DELETE語句可以通過WHERE對要刪除的記錄進行選擇。而使用TRUNCATE TABLE將刪除表中的所有記錄。因此,DELETE語句更靈活。
如果要清空表中的所有記錄,可以使用下面的兩種方法:
DELETE FROM table1
TRUNCATE TABLE table1
其中第二條記錄中的TABLE是可選的。
如果要刪除表中的部分記錄,只能使用DELETE語句。
DELETE FROM table1 WHERE ...;
如果DELETE不加WHERE子句,那麼它和TRUNCATE TABLE是一樣的,但它們有一點不同,那就是DELETE可以返回被刪除的記錄數,而TRUNCATE TABLE返回的是0。
如果一個表中有自增欄位,使用TRUNCATE TABLE和沒有WHERE子句的DELETE刪除所有記錄後,這個自增欄位將起始值恢復成1.如果你不想這樣做的話,可以在DELETE語句中加上永真的WHERE,如WHERE 1或WHERE true。
DELETE FROM table1 WHERE 1;
上面的語句在執行時將掃描每一條記錄。但它並不比較,因為這個WHERE條件永遠為true。這樣做雖然可以保持自增的最大值,但由於它是掃描了所有的記錄,因此,它的執行成本要比沒有WHERE子句的DELETE大得多。
DELETE和TRUNCATE TABLE的最大區別是DELETE可以通過WHERE語句選擇要刪除的記錄。但執行得速度不快。而且還可以返回被刪除的記錄數。而TRUNCATE TABLE無法刪除指定的記錄,而且不能返回被刪除的記錄。但它執行得非常快。
和標準的SQL語句不同,DELETE支持ORDER
BY和LIMIT子句,通過這兩個子句,我們可以更好地控制要刪除的記錄。如當我們只想刪除WHERE子句過濾出來的記錄的一部分,可以使用LIMIB,如果要刪除後幾條記錄,可以通過ORDER
BY和LIMIT配合使用。假設我們要刪除users表中name等於"Mike"的前6條記錄。可以使用如下的DELETE語句:
DELETE FROM users WHERE name = 'Mike' LIMIT 6;
一般MySQL並不確定刪除的這6條記錄是哪6條,為了更保險,我們可以使用ORDER BY對記錄進行排序。
DELETE FROM users WHERE name = 'Mike' ORDER BY id DESC LIMIT 6;
㈨ sql怎麼刪除一個表中的所有數據
刪除表數據有兩種方法:delete和truncate。具體語句如下:
一、RUNCATE TABLE name :
刪除表中的所有行,而不記錄單個行刪除操作。在這個指令之下,表格中的資料會完全消失,可是表格本身會繼續存在。
TRUNCATE TABLE 的語法:TRUNCATE TABLE name ,參數 name 是要截斷的表的名稱或要刪除其全部行的表的名稱。
二、Delete from tablename where 1=1
1、delete語法:
DELETE FROM 表名稱 WHERE 列名稱 = 值。
2、刪除所有行:
可以在不刪除表的情況下刪除所有的行。這意味著表的結構、屬性和索引都是完整的:DELETE FROM table_name。
(9)mysql刪除表數據sql擴展閱讀:
truncate和delete的共同點及區別:
1、 truncate和 delete只刪除數據不刪除表的結構(定義) 。
2、delete語句是dml,這個操作會放到rollback segement中,事務提交之後才生效;如果有相應的trigger,執行的時候將被觸發。
truncate是ddl, 操作立即生效,原數據不放到rollback segment中,不能回滾. 操作不觸發trigger。
3、delete語句不影響表所佔用的extent, 高水線(high watermark)保持原位置不動 。truncate 語句預設情況下見空間釋放到 minextents個 extent,除非使用reuse storage; truncate會將高水線復位(回到最開始)。
4、速度,一般來說: truncate >delete 。