create table dbo.class_bak ( Name nvarchar(25) NOT NULL DEFAULT 'abc' primary key, studentnumber int DEFAULT 0 ); insert into .class_bak (studentnumber) values(23) :则插入的值col1的默认值就是abc. 复制一个表的结构到一个新表. select * into class_bak from class where 1=2 :复制一个表为另一个表,如果不导数据,就将条件置为1=2即可. 显示某表的建表语句: ORACLE: desc table_name INFORMIX: dbschmea SQLSERVER:
Alter table class_bak add monitor varchar(10) ;:增加一列 Alter table class_bak alter COLUMN montior nvarchar(10) :修改一列 Alter table class_bak drop COLUMN monitor ;:删除一列 删除表: Drop table class_bak
用于在查询数据时,加快查询速度, create UNIQUE index idx1_class on class(class) 在字段class上创建唯一索引,即插入时,该字段不允许重复.名称为idx_class insert into class (class,teacher) values('gaoer','lisi'); 此插入语句执行第二次将会失败. 删除索引: drop index idx1_class on class 索引的重新生成,重新组织:当一个表经过多次修改,插入,删除后,需要重建索引,以便以后可提高查询效率.但重建的过程是较为消耗资源的.在SCP等业务繁忙的机器上,一定要选择合适的时间段才能重建索引. ALTER INDEX idx_class on class REBUILD 重新生成索引将会删除并重新创建索引。这将根据指定的或现有的填充因子设置压缩页来删除碎片、回收磁盘空间,然后对连续页中的索引行重新排序。 ALTER INDEX idx_class on class REORGANIZE 使用最少系统资源重新组织索引。
set ANSI_NULLS ON set QUOTED_IDENTIFIER ON go CREATE PROCEDURE [dbo].[get_avage_age] -- Add the parameters for the stored procedure here @class_name nchar(10), @CheckDate [datetime] AS BEGIN -- SET NOCOUNT ON added to prevent extra result sets from -- interfering with SELECT statements. SET NOCOUNT ON; select avg(age) from student where class=@class_name and born<@CheckDate -- Insert statements for procedure here END
USE [gaotest] GO DECLARE @return_value int EXEC @return_value = [dbo].[get_avage_age] @class_name = 'gaosan', @CheckDate = '2009-01-01' SELECT 'Return Value' = @return_value GO 删除存储过程: Drop procedure get_avage_age;
版权声明:本文为博主原创文章,未经博主允许不得转载。
原文地址:http://blog.csdn.net/yxh1157686920/article/details/48047895