刪除一個表的sql 語句怎么寫啊
使用drop語句,drop table (需要刪除表的名字)。
drop是刪除整個表,delete是刪除表的內容。 drop語句的作用:刪除內容和定義,釋放空間,簡單來說就是把整個表去掉。
以后要新增數據是不可能的,除非新增一個表。 刪除表時需要注意的事項: 1、如果刪除應用表別名,則delete 后面一定要接對應的別名,然后再接表名,不然報錯。
2、delete刪除sql后面不可接通配符*,即delete * from ,這樣會報錯。 3、delete刪除sql默認的返回值為int數據類型,當刪除一條數據時,返回int數據1,當刪除num條數據時,則返回int類型num。
擴展資料: SQL即結構化查詢語言(Structured Query Language),是一種特殊目的的編程語言,是一種數據庫查詢和程序設計語言,用于存取數據以及查詢、更新和管理關系數據庫系統;同時也是數據庫腳本文件的擴展名。 SQL語句無論是種類還是數量都是繁多的,很多語句也是經常要用到的,SQL查詢語句就是一個典型的例子,無論是高級查詢還是低級查詢,SQL查詢語句的需求是最頻繁的。
常用語句: 創建數據庫 CREATE DATABASE database-name 刪除數據庫 drop database dbname 創建新表 create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..) 刪除新表 drop table tabname 參考資料:百度百科—sql語句大全。
如何一個SQL語句就刪除表中所有的數據
使用 TRUNCATE TABLE 刪除所有行
若要刪除表中的所有行,則 TRUNCATE TABLE 語句是一種快速、無日志記錄的方法。該語句總是比不帶條件的 DELETE 語句要快,因為 DELETE 語句要記錄對每行的刪除操作,而 TRUNCATE TABLE 語句只記錄整個數據頁的釋放。TRUNCATE TABLE 語句立即釋放由該表的數據和索引占用的所有空間。所有索引的分發頁也將釋放。
與 DELETE 語句相同,使用 TRUNCATE TABLE 清空的表的定義,同其索引和其它相關的對象一起仍保留在數據庫中。必須使用 DROP TABLE 語句才能除去表的定義。
TRUNCATE TABLE tablename
----------------------
TRUNCATE TABLE
刪除表中的所有行,而不記錄單個行刪除操作。語法TRUNCATE TABLE name參數name
是要截斷的表的名稱或要刪除其全部行的表的名稱。注釋TRUNCATE TABLE 在功能上與不帶 WHERE 子句的 DELETE 語句相同:二者均刪除表中的全部行。但 TRUNCATE TABLE 比 DELETE 速度快,且使用的系統和事務日志資源少。
DELETE 語句每次刪除一行,并在事務日志中為所刪除的每行記錄一項。TRUNCATE TABLE 通過釋放存儲表數據所用的數據頁來刪除數據,并且只在事務日志中記錄頁的釋放。
TRUNCATE TABLE 刪除表中的所有行,但表結構及其列、約束、索引等保持不變。新行標識所用的計數值重置為該列的種子。如果想保留標識計數值,請改用 DELETE。如果要刪除表定義及其數據,請使用 DROP TABLE 語句。
對于由 FOREIGN KEY 約束引用的表,不能使用 TRUNCATE TABLE,而應使用不帶 WHERE 子句的 DELETE 語句。由于 TRUNCATE TABLE 不記錄在日志中,所以它不能激活觸發器。
TRUNCATE TABLE 不能用于參與了索引視圖的表。示例下例刪除 authors 表中的所有數據。
sql刪除數據庫所有表
1.搜索出所有表名,構造為一條SQL語句 declare @trun_name varchar(8000)
set @trun_name=''
select @trun_name=@trun_name + 'truncate table ' + [name] + ' ' from sysobjects where xtype='U' and status > 0
exec (@trun_name)該方法適合表不是非常多的情況,否則表數量過多,超過字符串的長度,不能進行完全清理. 2.利用游標清理所有表 declare @trun_name varchar(50)
declare name_cursor cursor for
select 'truncate table ' + name from sysobjects where xtype='U' and status > 0
open name_cursor
fetch next from name_cursor into @trun_name
while @@FETCH_STATUS = 0
begin
exec (@trun_name)
print 'truncated table ' + @trun_name
fetch next from name_cursor into @trun_name
end
close name_cursor
deallocate name_cursor
這是我自己構造的,可以做為存儲過程調用, 能夠一次清空所有表的數據,并且還可以進行有選擇的清空表. 3.利用微軟未公開的存儲過程 exec sp_msforeachtable "truncate table ?"
刪除表中一個字段的SQL語句怎么寫
1、首先需要打開SQL Developer,右擊要操作的數據庫,選擇【連接】。
2、在彈出對話框中,輸入口令,點擊【確定】。
3、展開【表】目錄,右擊要操作的表,選擇【編輯】。
4、此時進入表編輯界面。
5、選擇要操作的字段,如LOCATION字段后,點擊【X】,再點擊【確定】。
6、此時表字段就刪除了。
如何使用一條SQL語句刪除表中重復記錄
數據庫結構的腳本:if exists (select * from dbo。
sysobjects where id = object_id(N'[dbo]。[TempA]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)drop table [dbo]。
[TempA]GO CREATE TABLE [dbo]。[TempA] ( [id] [int] IDENTITY (1, 1) NOT NULL , [PositionName] [varchar] (256) COLLATE Chinese_PRC_CI_AS NULL , [EnglishPositionName] [varchar] (256) COLLATE Chinese_PRC_CI_AS NULL ) ON [PRIMARY]GOALTER TABLE [dbo]。
[TempA] ADD CONSTRAINT [PK_TempA] PRIMARY KEY CLUSTERED ( [id] ) ON [PRIMARY] GOTempA表中有三個字段,id唯一且為主鍵,自動增長; PositionName,EnglishPositionName中有重復的記錄,比如:id PositionName EnglishPositionName20 其他 Others21 質量工程師 QC Engineer 22 其他 Others。 。
。100 質量工程師 QC Engineer 需要剔除重復的"其他","質量工程師"等記錄。
采用的SQL語句:Delete from TempA where id not in ( select max(t1。id) from TempA t1 group by t1。
PositionName,t1。EnglishPositionName)說明: (1)需要剔除那幾個用于判斷重復的字段,則將它們放在group by語句之后。
(2)max(t1。id) 也可以改成:min(t1。
id)。
怎么用sql語句刪除表格中的某列
--刪除列ALTER TABLE 表名 DROP COLUMN column_b--知識點衍生--A.添加新列ALTER TABLE 表名 ADD 列名 VARCHAR(20)--B.修改列名EXEC sp_rename 'dbo.表名.列名', '新列名', 'COLUMN'--C.更改列的數據類型ALTER TABLE 表名 ALTER COLUMN 列 DECIMAL (5, 2) --D.添加包含約束的列(唯一約束)ALTER TABLE 表 ADD 列 VARCHAR(20) NULL CONSTRAINT 約束名 UNIQUE --E.添加一個未驗證的check約束ALTER TABLE 表 WITH NOCHECK ADD CONSTRAINT 約束名 CHECK (列 > 1)--F.在現有列中添加一個DEFAULT約束ALTER TABLE 表ADD CONSTRAINT 約束名DEFAULT 50 FOR 列名 --G.刪除約束ALTER TABLE 表 DROP CONSTRAINT 約束名--H.更改排序規則ALTER TABLE 表ALTER COLUMN 列 varchar(50) COLLATE Latin1_General_BIN --I.修改表名EXEC sp_rename 'dbo.表名', '新表名'--J.重命名索引EXEC sp_rename N'dbo.表名.索引名', N'新索引名', N'INDEX'。