网页教学网
 当前位置: 网页教学网 >> 网络编程 >> 数据库编程技术 >> 收录的一些常用的SQL语句,也许你能用上
[ HTML ] [ FW ] [ DW ] [ FP ] [ JS ] [ XML ] [ CSS ] [ 图象 ] [ FLASH ] [ .NET ] [ ASP ] [ JSP ] [ PHP ] [ 数据 ] [ 系统 ] [ 安全 ] [ 素材 ] [ 建站 ] [ 主机 ] [ 入门 ] [ 技巧 ]

收录的一些常用的SQL语句,也许你能用上

http://www.webjx.com  更新日期:2007-09-23 21:16  出处:网页教学网  作者:站长整理

收录的一些基础的SQl语句,有些用处,平时用的。

创建某一个表:
CREATE TABLE [weekyc] (
    [yc_product] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
    [yc_max] [numeric](18, 0) NULL ,
    [yc_min] [numeric](18, 0) NULL ,
    [yc_situation] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
    [yc_time] [datetime] NULL ,
    [id] [numeric](18, 0) IDENTITY (1, 1) NOT NULL ,
    [Authority] [int] NOT NULL CONSTRAINT [DF_weekyc_Authority] DEFAULT (3),
    [remark] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NULL 
) ON [PRIMARY]
GO

修改某一个表:
alter table weekyc add yc_max  numeric(18,0)  null
ALTER TABLE [weekyc] ADD   DEFAULT '0' FOR [yc_max] 

删除一个约束:
declare @name varchar(8000)
select @name=b.name from syscolumns a,sysobjects b where a.id=object_id('weekyc') and b.id=a.cdefault and
  a.name='yc_max' and b.name like 'DF%'
exec('alter table weekyc drop constraint '+@name)


if not exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[tablespaceinfo]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
create table tablespaceinfo --创建结果存储表
(nameinfo varchar(50) , 
rowsinfo int , reserved varchar(20) , 
datainfo varchar(20) , 
index_size varchar(20) , 
unused varchar(20) )

delete from tablespaceinfo --清空数据表

declare @tablename varchar(255) --表名称

declare @cmdsql varchar(500)

DECLARE Info_cursor CURSOR FOR 
select o.name 
from dbo.sysobjects o where OBJECTPROPERTY(o.id, N'IsTable') = 1 
and o.name not like N'#%%' order by o.name

OPEN Info_cursor

FETCH NEXT FROM Info_cursor 
INTO @tablename 

WHILE @@FETCH_STATUS = 0
BEGIN

if exists (select * from dbo.sysobjects where id = object_id(@tablename) and OBJECTPROPERTY(id, N'IsUserTable') = 1)
execute sp_executesql 
N'insert into tablespaceinfo exec sp_spaceused @tbname',
N'@tbname varchar(255)',
@tbname = @tablename

FETCH NEXT FROM Info_cursor 
INTO @tablename 
END

CLOSE Info_cursor
DEALLOCATE Info_cursor
GO

数据库执行进程:sp_cmdshell 

查询/修改/删除中影响的列:
RowCount

删除表中的重复数据:

(假设ID是Identity列,Title相同者将被删除)
delete from TableName where id not in(select max(id) from TableName  group by Title)

查看表信息:
select * from tablespaceinfo

清空数据库:
truncate table XX;


查看某库下面每个表占用的空间信息:
use XXDB;

select object_name(id) tablename,8*reserved/1024 reserved,rtrim(8*dpages/1024)+'Mb' used,8*(reserved-dpages)/1024 unused,8*dpages/1024-rows/1024*minlen/1024 free,
rows,* from sysindexes 
where indid=1 
order by reserved desc

sp_helptext XX;这是查看源码。
查看数据库进程sp_who;或者sp_who2更加详细;
绑定默认值 sp_binddefault xx;或者alter table xx add default xx for 列;

修改数据库名称,修改表名称,修改存储过程名称,修改视图名称:sp_rename 老的名字,新的名字


一个比较复杂的:DBCC,具体怎么用,太多了。

删除SQL日志
dump   transaction   databasename   with   no_log     and     truncate_only

关键词:数据库,SQL,语句
推荐给好友】【关闭】【收藏本文
最新五条评论
查看全部评论
评论总数 0
您的评论
用户名: 新注册) 密 码: 匿名:
·用户发表意见仅代表其个人意见,并且承担一切因发表内容引起的纠纷和责任
·本站管理人员有权在不通知用户的情况下删除不符合规定的评论信息或留做证据
·请客观的评价您所看到的资讯,提倡就事论事,杜绝漫骂和人身攻击等不文明行为