程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> 其他數據庫知識 >> 更多數據庫知識 >> 數據庫更新Sqlserver腳本總結

數據庫更新Sqlserver腳本總結

編輯:更多數據庫知識

表復制:
1. INSERT INTO SELECT語句
 語句形式為:Insert into Table2(field1,field2,...) select value1,value2,... from Table1
 要求目標表Table2必須存在,由於目標表Table2已經存在,所以我們除了插入源表Table1的字段外,還可以插入常量。
 示例如下:
復制代碼 代碼如下:
--創建測試表
create TABLE Users1
(
UserID int identity (1,1) primary key not null,
UserName varchar(10),
UserAddress varchar(20)
)
GO
create TABLE Users2
(
ID int identity (1,1) primary key not null,
Name varchar(10),
Address varchar(20)
)
GO
--創建測試數據
Insert into Users1 values('趙','asds')
Insert into Users1 values('錢','asds')
Insert into Users1 values('孫','asds')
Insert into Users1 values('李','asds')
GO
select * from Users2
--INSERT INTO SELECT語句復制表數據
Insert into Users2(Name,Address) select UserName,UserAddress from Users1
GO
--顯示更新後的結果
select * from Users2
GO
--刪除測試表
drop TABLE Users1
drop TABLE Users2

2. SELECT INTO FROM語句
語句形式為:SELECT vale1, value2 into Table2 from Table1
要求目標表Table2不存在,因為在插入時會自動創建表Table2,並將Table1中指定字段數據復制到Table2
示例如下:
復制代碼 代碼如下:
--創建測試表
create TABLE Users1
(
UserID int identity (1,1) primary key not null,
UserName varchar(10),
UserAddress varchar(20)
)
GO
--創建測試數據
Insert into Users1 values('趙','asds')
Insert into Users1 values('錢','asds')
Insert into Users1 values('孫','asds')
Insert into Users1 values('李','asds')
GO
--SELECT INTO FROM語句創建表Users2並復制數據
select UserName,UserAddress INTO Users2 from Users1
GO
--顯示更新前後的結果
select * from Users1
select * from Users2
GO
--刪除測試表
drop TABLE Users1
drop TABLE Users2

表更改:
3.ALTER TABLE 語句
 ALTER TABLE 語句用於在已有的表中添加、修改或刪除列。
 語句形式為:
復制代碼 代碼如下:
在表中添加列 :
ALTER TABLE table_name
ADD column_name datatype
刪除表中的列
ALTER TABLE table_name
DROP COLUMN column_name
改變表中列的數據類型
ALTER TABLE table_name
ALTER COLUMN column_name datatype

示例如下:
復制代碼 代碼如下:
--創建測試表
create TABLE Users
(
UserID int identity (1,1) primary key not null,
UserName varchar(10),
UserAddress varchar(20)
)
GO
--在Users表中添加一個名為 "Birthday" 的新列 數據類型為datetime
ALTER TABLE Users ADD Birthday datetime
GO
--在Users表中把 "Birthday" 列的數據類型改為nvarchar(20)
ALTER TABLE Users ALTER COLUMN Birthday nvarchar(20)
GO
--刪除 "Person" 表中的 "Birthday" 列:
ALTER TABLE Users DROP COLUMN Birthday
GO
--刪除測試表
drop TABLE Users

使用Sp_rename 存儲過程[SQLCE不支持]
 Sp_rename 存儲過程可以修改當前數據庫中用戶對象的名稱,如表、列、索引、存儲過程等待。但在SqlCe下面測試只能改表名
 語法如下:
 Sp_rename[@objname=]'object_name',
  [@newname=]'new_name'
  [,[@objtype=]'object_type']
 其中[@objtype=]'object_type'是要改名的對象的類型,其值可以為
  'Column' 列
  'Database' 數據庫
  'Index' 索引
  'Userdatatype'用戶自定義類型
  'Object' 對象
 值'Object'指代了系統表sysobjects中所有對象,如表、視圖、存儲過程、觸發器、規則、約束等。'object'值為默認值。
 示例如下:
復制代碼 代碼如下:
例1:更改orders表的列p_id 名稱為 products_id
exec sp_rename 'orders.[p_id]','product_id','column'
例2: 更改orders表的名稱為p_orders
exec sp_rename 'orders','p_orders'

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved