SQL数据库
1. 存储过程(定义&编写)
l 创建存储过程
CREATE PROCEDURE storedproc1
AS
SELECT *
from tb_project
WHERE 预计工期<= 90
ORDER BY 预计工期 DESC
GO
exec storedproc1
GO
l 修改存储过程
ALTER PROCEDURE storedproc1
AS
SELECT 项目名称,预计工期
from tb_project
WHERE 预计工期>=90
ORDER BY 预计工期 DESC
GO
exec storedproc1
GO
CREATE PROCEDURE store7
@name varchar(10),@avgpbiaodi int OUTPUT
AS
DECLARE @errorsave int
SET @errorsave=0
SELECT @avgpbiaodi=AVG(预计工期)
from tb_project AS p INNER JOIN tb_employee AS e
ON p.客户编号= e.编号
WHERE e.姓名=@name
IF(@@error<>0)
SET @errorsave=@@error
RETUREN @errorsave
GO
DECLARE @returnvalue int,@avg int
exec @returnvalue=store7 '孙小丽',@avg OUTPUT
PRINT '执行的结果'
PRINT '返回值='+CAST(@returnvalue AS char(2))
PRINT 'sun负责项目的平均工期:' +CAST(@avg AS char(10))
GO
2. EXEC &GO(使用存储过程)
l 查看存储过程
EXEC sp_helptext storedproc1
EXEC sp_depends storedproc1
EXEC sp_help storedproc1 ---在当前数据库中查找对象
实例239//////////////////////////////
USE sml
GO
CREATE VIEW 视图
AS
SELECT *
from tb_employee
WHERE 工资=600
EXEC sp_helptext '视图' --显示该对象的定义信息,对象必须在当前数据库中
USE sml
EXEC sp_depends '视图' --被检查相关行的数据库对象,对象可以是表,视图,存储过程,或触发器,对象的--数据类型为varchar(766).若一个对象引用另一个对象,则人权诶前者依赖后者,通过检查sysdepends表--确定相关性
GO
//////////////////////////////////
EXEC sp_rename'人员表','人员信息表'
EXEC sp_rename'人员信息表.电话','联系电话','COLUMN'
EXEC sp_detach_db @dbname = 'pubs'
EXEC sp_attach_single_file_db @dbname = 'pubs',
@physname = 'c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs.mdf'
////////////////////
USE master
EXEC sp_addextendedproc xp_hello, 'xp
相关文档:
http://www.umgr.com/blog/PostView.aspx?bpId=36294
1. 执行sql语句
int sqlite3_exec(sqlite3*, const char *sql, sqlite3_callbacksql 语法
, void *, char **errmsg );
这就是执行一条 sql 语句的函数。
第1个参数不再说了,是前面open函数得到的指针。说了是关键数据结构。
第2个参数const char ......
在数据库应用的设计中,我们往往会需要获取某些表的记录总数,用于判断表的记录总数是否过大,是否需要备份数据等。我们通常的做法是:select count(*) as c from tableA 。然而对于记录数巨大的表,上述做法将会非常耗时。在DELL 4400 服务器上做试验,MS Sqlserver 2000 数据库对于100万记录的简单数据表执行上述语句,时 ......
问题
当sql server启动时,我很想运行一个存储过程。有没有一种方法可以在每次SQL Server服务启动时都会自动执行这个存储过程呢?
专家解答
sql Server提供了系统存储过程sp_procoption,这个存储过程可以用于当SQL Server服务启动时指派一个或者多个存储过程自动执行。这是一个很不错的选择,它可以用于多种 ......
正确的修改方法:sql批量修改字段内容的语句
1、没试过,网上搜索的
引用
update '表名' set 要修改字段名 = replace (要修改字段名,'被替换的特定字符','替换成的字符')
2、自己按照一个一个修改是看数据表总结的
例如偶修改自己博客boblog_replies表中的adminrepid和adminreplier字段值:
UPDATE `xxx`.`boblog_ ......
在学习SQL时看到的一片很好的文章,特贴出来和大家一起分享!
我们要做到不但会写SQL,还要做到写出性能优良的SQL语句。
(1)选择最有效率的表名顺序(只在基于规则的优化器中有效):
Oracle的解析器按照从右到左的顺序处理from子句中的表名,from子句中写在最后的表(基础表 driving table)将被最先处 ......