2、sql express 安装 如果在XP下,直接双击安装就好了。 先安装 [在vista下如果直接双击可能会出现 安装sql server express 出错29506 ] [Vista安装的时候,需要使用“以管理员身份运行”安装] SQLServer2005_SSMSEE.msi安装结束 studio已经安装上去,但是你有没有发现,安装sql的时候没有发现有用户sa的密码设置?》 所以,打开studio的时候,,根本就链接不上。 别急,再安装下一个软件 。。 在vista下我们仍用管理员身份执行。安装过程中就会有sa的身份设置咯。 好。这个软件安装完毕,菜单齐全。 再看如何设置一下。 》》》》 ......
安装完毕之后,还需要设置一下才能使sql服务链接成功。 选择第一个:服务和链接的外围应用配置器 点击“远程链接”,再选择本地链接和远程链接。选择第3个选项。 好了。我们可以到开studio了。 记得在服务器名称输入:localhost\SQLEXPRESS
登录名sa。密码就是安装的时候输入的密码。 ok。。。好了。。。。链接成功。 express的使用和sql2000大同小异。 新增数据库的时候,右键数据库新增便可。 sql链接字符串: server=localhost\SQLEXPRESS;User ID=sa;Password=123456;database=db_test;Connection Reset=FALSE;Max Pool Size=512 完成!!! ......
创建一个简单的触发器
触发器是一种特殊的存储过程,类似于事件函数,SQL Server? 允许为 INSERT、UPDATE、DELETE 创建触发器,即当在表中插入、更新、删除记录时,触发一个或一系列 T-SQL语句。
触发器可以在查询分析器里创建,也可以在表名上点右键->“所有任务”->“管理触发器”来创建,不过都是要写 T-SQL 语句的,只是在查询分析器里要先确定当前操作的数据库。
创建触发器用 CREATE TRIGGER
CREATE TRIGGER 触发器名称
ON 表名
FOR INSERT、UPDATE 或 DELETE
AS
T-SQL 语句
注意:触发器名称是不加引号的。
如下是联机丛书上的一个示例,当在 titles 表上更改记录时,发送邮件通知 MaryM。
CREATE TRIGGER reminder
ON titles
FOR INSERT, UPDATE, DELETE
AS
EXEC master..xp_sendmail 'MaryM',
'Don''t forget to print a report for the distributors.'
重命名触发器
用查询分析器重命名:
exec sp_rename 原名称, 新名称
sp_rename 是 SQL Server? 自带的一个存储过程,用于更改当前数据库中用户创建的对象的名称,如表名、列表、索引名等。
用企业管理器重命名:
在表上点右键->“所有任务”->&l ......
SQL触发器实例1
定义: 何为触发器?在SQL Server里面也就是对某一个表的一定的操作,触发某种条件,从而执行的一段程序。触发器是一个特殊的存储过程。
常见的触发器有三种:分别应用于Insert , Update , Delete 事件。
我为什么要使用触发器?比如,这么两个表:
Create Table Student( --学生表
StudentID int primary key, --学号
....
)
Create Table BorrowRecord( --学生借书记录表
BorrowRecord int identity(1,1), --流水号
......
今天要同步远程数据库时出错,报错“实际的服务器名称。。。。”,以下是解决方法
SQL code--查看当前服务名称
select @@servername
--如果与当前计算机名不一致,则用以下语句修改SQL Server服务器名
sp_dropserver 'old_name' --先删除原名称
GO
sp_addserver 'new_name', local --然后添加新的和计算机名相同的名称
GO
重启,OK ......
1、与group by搭配使用的函数
在数据库中,我们可以使用GROUP BY函数把数据组合在一起,从而获得总计信息。可以把此功能看成是一种当数据从数据库中返回时把相同类型的信息集中到一起的能力。下面给出了完整列表。
avg([distinct]column_name)
求所有雇员薪水的平均值。
select AVG(emp_salary)
from employee;
求取column_name中的所有值的平均值。如果使用DISTINCT选项,则只使用不同的非空的数值。
count([distinct]value)
统计雇员的数目。
select COUNT(emp_name)
from employee;
统计选择行的数目,并忽略VALUE中的空值。如果使用了DISTINCT选项
则只统计不同的非空数值。VALUE可以是列名,也可以是表达式。
max(value)
返回薪水的最大值
select MIN
emp_salary)
from employee;
从选定 ......