解决sql server触发器的影响行数对程序的影响
解决方法:
方法很简单,就是直接在触发器内关闭触发器的影响行数。使用如下语句:
set nocount on——-关闭影响行数
set nocount off——-打开影响行数
解决方法:
方法很简单,就是直接在触发器内关闭触发器的影响行数。使用如下语句:
set nocount on——-关闭影响行数
set nocount off——-打开影响行数
打开不重复记录的单个字段
select distinct name from table
打开不重复记录的所有字段值
select * from table where fid in(Select min(fid) FROM table group by name)
打开不重复任意次数的所有记录
select * from table where name in(select name from table group by name having count(name)=1)
–建立测试环境
Create Table A
(ID Int,
fatherID Int,
NameVarchar(10)
)
Insert A Select 1, NULL, ‘tt’
Union All Select 2, 1, ‘aa’
Union All Select 3, 1, ‘bb’
Union All Select 4, 2, ‘cc’
Union All Select 5, 2, ‘gg’
Union All Select 6, 4, ‘yy’
Union All Select 7, 4, ‘jj’
Union All Select 8, 7, ‘ll’
Union All Select 9, NULL, ‘uu’
Union All Select 10, 9, ‘oo’
GO
–建立函数 阅读全文…
表:
ID RQ DATA
A 2009-7-15 1W
B 2009-7-15 2W
C 2009-7-15 1W
D 2009-7-15 1.5W
A 2009-7-16 1.2W
B 2009-7-16 2.2W
C 2009-7-16 1.2W
D 2009-7-16 1.4W
我想查询后成为这种格式:
RQ A B C D
2009-7-15 1W 2W 1W 1.5W
2009-7-16 1.2W 2.2W 1.2W 1.4W 阅读全文…
if object_Id('testTb')is not null drop table testTb
go
create table testTb (A int , B int ,C int)
insert into testTb
select 1,2,3 union all
select 1,3,2 union all
select 2,1,3 union all
select 3,1,4
select (case when A > B then A else B end) as E, (case when B > C then B else C end) as F from testTb drop table testTb
创建组
--ALTER DATABASE HZ ADD FILEGROUP [GH1] --ALTER DATABASE HZ ADD FILEGROUP [GH2] --ALTER DATABASE HZ ADD FILEGROUP [GH3] --ALTER DATABASE HZ ADD FILEGROUP [GH4] --ALTER DATABASE HZ ADD FILEGROUP [GH5] --ALTER DATABASE HZ ADD FILEGROUP [GH6] --ALTER DATABASE HZ ADD FILEGROUP [GH7] --ALTER DATABASE HZ ADD FILEGROUP [GH8] --ALTER DATABASE HZ ADD FILEGROUP [GH9] --ALTER DATABASE HZ ADD FILEGROUP [GH10] --ALTER DATABASE HZ ADD FILEGROUP [GH11] --ALTER DATABASE HZ ADD FILEGROUP [GH12]
创建数据库文件 阅读全文...
nian gz
2000 100
2001 200
2002 300
2003 400
第一种:select nian, (select sum(gz) from mp b where b.nian<= a.nian) gz from mp a group by nian
第二种:select b.id,sum(a.gz) from mp a,mp b where a.gz<=b.gz group by b.id 阅读全文...
返回方法1:
排序:select * from (select min(id) as id,name from mp group by name) as d order by d.id desc 不排序: select min(id) as id,name from mp group by name
返回方法2:
select * from mp t1 where not exists(select * from mp t where t1.name=t.name and t.id<t1.id)
SqlDataSourceEnumerator instance =SqlDataSourceEnumerator.Instance;
System.Data.DataTable table = instance.GetDataSources();
或
System.Data.Sql.SqlDataSourceEnumerator.Instance.GetDataSources();
返回Datatable 阅读全文…
下列语句部分是Mssql语句,不可以在access中使用。
SQL分类:
DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE)
DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT)
DCL—数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK)
首先,简要介绍基础语句: 阅读全文…
生产线的sqlserver数据库infoservice星期日做全盘备份,备份名为:infoservice_database.7,星期一做差异备份:infoservice_database.1,星期二:infoservice_database.2…
对应的本地模拟库infoserviceonline要定期恢复,恢复顺序与备份顺序相反. 如今天是星期一,要先还原上个星期日的全盘备份,再还原今天的差异备份.
本程序支持在数据库服务器恢复,也支持在工作站恢复.
sql: 阅读全文…
SQLDMO (SQL Distributed Management Objects,SQL分布式管理对象)封装 Microsoft SQL Server 2000 数据库中的对象。SQL-DMO 允许用支持自动化或 COM 的语言编写应用程序,以管理 SQL Server 安装的所有部分。SQL-DMO 是 SQL Server 2000 中的 SQL Server 企业管理器所使用的应用程序接口 (API);因此使用 SQL-DMO 的应用程序可以执行 SQL Server 企业管理器执行的所有功能。 阅读全文…
C#实现SQLSERVER2000数据库备份还原的两种方法
: 方法一(不使用SQLDMO):
///
///备份方法
///
SqlConnection conn = new SqlConnection("Server=.;Database=master;User ID=sa;Password=sa;"); 阅读全文...
第一种方法
最简单的方法就是调用 osql.exe .
具体方法如下(以sql server200 数据库为例):
try
{
System.Diagnostics.Process pr = new System.Diagnostics.Process();
pr.StartInfo.FileName = “osql.exe “;
pr.StartInfo.Arguments = “-U sa -P sa -d master -s 127.0.0.1 -i Sql.sql”;
pr.StartInfo.UseShellExecute = false;
pr.StartInfo.RedirectStandardOutput = true; //重定向输出
pr.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;//隐藏输出窗口
pr.Start();
System.IO.StreamReader sr = pr.StandardOutput;
Console.WriteLine(sr.ReadToEnd());
pr.WaitForExit();
pr.Close();
}
catch(Exception err)
{
MessageBox.Show(err.ToString());
} 阅读全文…