Sql scripts

terryisme發表於2009-03-10

下面是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 ([約束欄位] <= '2000-1-1')

刪除約束:
Alter TABLE [表名] Drop CONSTRAINT 約束名

新建預設值
Alter TABLE [表名] ADD CONSTRAINT 預設值名 DEFAULT '51WINDOWS.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'

'新增欄位通用函式
Sub AddColumn(TableName,ColumnName,ColumnType)
Conn.Execute("Alter Table "&TableName&" Add "&ColumnName&" "&ColumnType&"")
End Sub

'更改欄位通用函式
Sub ModColumn(TableName,ColumnName,ColumnType)
Conn.Execute("Alter Table "&TableName&" Alter Column "&ColumnName&" "&ColumnType&"")
End Sub

'檢查表是否存在

sql="select count(*) as dida from sysobjects where id = object_id(N'[所有者].[表名]') and OBJECTPROPERTY(id, N'IsUserTable') = 1"

set rs=conn.execute(sql)

response.write rs("dida")'返回一個數值,0代表沒有,1代表存在


判斷表的存在:
select * from sysobjects where id = object_id(N'[dbo].[tablename]') and OBJECTPROPERTY(id, N'IsUserTable') = 1

某個表的結構
select * from syscolumns where id = object_id(N'[dbo].[你的表名]') and OBJECTPROPERTY(id, N'IsUserTable') = 1

[@more@]None

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/93029/viewspace-1018414/,如需轉載,請註明出處,否則將追究法律責任。

相關文章