
SQL
donghaima
这个作者很懒,什么都没留下…
展开
-
SQL语句
//UPDATE 表1 SET KHNY=(SELECT B.XSNY FROM OPENDATASOURCE(SQLOLEDB,Data Source=......;User ID=......;Password=......).[YDZD].[DBO].表2 B WHERE B.DWDH=表1.DWDH)//UPDATE 表1 SET A.KHNY=B.XSNY FROM 表1 A原创 2007-06-15 10:38:00 · 595 阅读 · 0 评论 -
库存减少销售增加的事务例子
(1)Private Sub Do(ByVal SL As Integer)Dim oConn As New ADODB.ConnectionDim oRs As New ADODB.RecordsetDim oRs2 As New ADODB.RecordsetOn Error GoTo ErrorHandleroConn.ConnectionTimeout = 15oConn.Open原创 2009-02-26 12:32:00 · 527 阅读 · 0 评论 -
数据库导出实际使用中的问题
一,从SQL2005到SQL2005 复制数据库:所有内容都能复制,但在内网成功,想通过因特网的却失败了。使用脚本:必须选择编写索引命令true,选择编写触发器命令true,否则索引和外键等都无法创建。由于使用脚本导出,并没有数据,数据导出时不能导入步进字段。 二,从SQL2005到SQL2000 我尝试附加数据库失败。 使用脚本:为服务器版本编写脚本为原创 2008-12-16 13:54:00 · 305 阅读 · 0 评论 -
抄来的一点SELECT知识
有个复杂的查询出现了除0错误,而我以为自己在WHERE子句中已经作了判断,这次教训是: SQL Select语句完整的执行顺序:1、from子句组装来自不同数据源的数据;2、where子句基于指定的条件对记录行进行筛选;3、group by子句将数据划分为多个分组;4、使用聚集函数进行计算;5、使用having子句筛选分组;6、计算所有的表达式;7、使用order by对结果集进行排序原创 2009-03-05 15:28:00 · 348 阅读 · 0 评论 -
SQL2005 CLR触发器实战
CLR触发器[Microsoft.SqlServer.Server.SqlTrigger(Name = "Trigger1", Target = "ERP_STOCKYaoHuoDingDan", Event = "FOR INSERT")] public static void DingDanIDSameGongYingShangGUIDMustSame() {原创 2009-08-06 13:42:00 · 695 阅读 · 0 评论 -
一些心得
DataSet转XML: DataSet dataSet = new DataSet();SqlConnection sqlConn = null;sqlConn = new SqlConnection("Data Source=10.108.0.1;Initial Catalog=EPSS;User ID=***;Password=***");sqlConn.Open();SqlDa原创 2009-08-26 10:40:00 · 293 阅读 · 0 评论 -
ISA防火墙客户端和SQLSERVER客户端的问题
有外来程序安装基于.NET FRAMEWORK 3.5的应用程序在内网的PC上,需要通过ISA防火墙客户端经过服务器上的ISA2006 SP1访问外网的SQLSERVER2005数据库。 按照以往经验,需要配置一条SQLSERVER2005服务器所在的IP地址的出站规则,并且并不需要设置一条基于域名的规则。 该应用程序通过域名访问目标数据库一切正常。原创 2009-09-03 13:31:00 · 687 阅读 · 0 评论 -
对SQL2005各种备份的一点理解
完全备份,提交所有事务日志并且截断它。差异备份,备份从上一次完全备份后的所有更改,而非上一次差异备份。提交所有事务日志并且截断它。日志备份,上一次完全或差异备份,或者事务日志备份后的修改,日志会被截断。 我目前所用的备份:周六晨完全备份,周日晨清理工作,周一至周五晨差异备份,周一至周五每隔一小时事务日志备份。原创 2009-10-18 20:09:00 · 439 阅读 · 0 评论 -
触发器心得
触发器中的INSERT事件中,被触发的表中已经包含了要插入的数据了,INSERTED表中也包含相同的数据;触发器中的DELETE事件中,被触发的表中已经没有了要删除的数据了,数据只存在于DELETED表中;INSERT事件中,DELETED是空表;DELETE事件中,INSERTED是空表;UPDATE事件就是执行一个DELETE在执行一个INSERT,两个表都是有内容的。 又:原创 2009-10-30 16:04:00 · 617 阅读 · 0 评论 -
SqlDbType.VarChar的问题
ShangPinBianHao字段是 nchar 10,sqlCommand = new SqlCommand(@"SELECT GUID, ShangPinBianHao, ShangPinMingCheng FROM stock_ShangPinXinXi WHERE (ShangPinBianHao LIKE @ShangPinBianHao + N%)", conn);这是使用C原创 2009-11-02 14:39:00 · 3325 阅读 · 0 评论 -
with(tablockx)的测试
with(tablockx)和普通的SELECTwith(tablockx)先执行,普通的SELECT将等待前者完成.普通的SELECT先执行, with(tablockx)也将等待前者结束才执行,如果前者长时间不结束,with(tablockx)将失败。 with(tablockx)和带事务的SELECT或者with(tablockx) 不管原创 2009-11-09 11:47:00 · 4621 阅读 · 0 评论 -
事务的试验
redo: try { using (TransactionScope ts = new TransactionScope()) { using (SqlConnection conn = new SqlConnection(...))原创 2009-11-18 16:43:00 · 443 阅读 · 0 评论 -
2010-01-21杂的知识
//解决IE8,ReportViewer没有横向滚动条的问题if (!IsPostBack){ string userAgent = Request.ServerVariables.Get("HTTP_USER_AGENT"); if (userAgent.Contains("MSIE 7.0") || userAgent.Contains("MSIE 8.0")) ReportVie原创 2010-01-21 14:36:00 · 416 阅读 · 0 评论 -
SQLSERVER数据库还原实战
1)新建数据库RESTORE2)在该数据库上选择:任务->还原->数据库3)在还原数据库-RESTORE的对话框中 目标数据库是RESTORE 指定用于还原的备份集的源和位置->源设备->选择最后一个完全的备份BAK文件 勾中还原CheckBox4)选择左上角的选项 在还原选项中,勾中覆盖现有数据库 修改还原为的文件名,比如:F:/RESTORE.MDF,F:/REST原创 2010-01-21 14:34:00 · 631 阅读 · 0 评论 -
DBF表用ADO访问的一个问题
oRs.CursorLocation = adUseClientoRs.Open "SELECT * FROM ZCYZK.DBF", oConn, adOpenForwardOnly, adLockReadOnly返回E_FAIL错误必须oRs.Open "SELECT BH,PM,KCS FROM ZCYZK.DBF", oConn, adOpenForwardOnly, adLock原创 2009-02-23 15:20:00 · 823 阅读 · 0 评论 -
CLR存储过程取回表内容
CLR存储过程public partial class StoredProcedures{ [Microsoft.SqlServer.Server.SqlProcedure] public static void StoredProcedure1() { // 在此处放置代码 SqlConnection sqlConnection = new S原创 2009-02-01 10:22:00 · 415 阅读 · 0 评论 -
旧知识
SQL2000多实例的问题SQL2000可以安装默认的数据库实例[LOCAL],在ADO的连接串中SERVER等于主机名称,比如SERVER=ML350;也可以安装SQL2000的非默认实例,比如ML350/ML350,这个时候ADO的连接串中SERVER等于主机名+数据库名,即:ML350/ML350;可以在SQL客户工具中使用别名:ML350映射ML350/ML350,这样的话原创 2008-07-07 13:16:00 · 321 阅读 · 0 评论 -
SQLSERVER2005数据库还原实战
周二上午10点一个误操作导致XS数据库发生致命的数据丢失,于是决定还原。现在有该数据库周日凌晨0:00的完全备份A,周一凌晨1:00的差异备份B,凌晨2:00的事物日志C。 理论上选择数据库的任务-〉还原,SQLSERVER应该自动帮你选中这三个文件,因为要还原的数据库是存在的,所以我们需要在选项-〉还原选项->勾中覆盖现有数据库,其他都为默认。如果有用户正在使用要还原创 2008-07-08 13:46:00 · 429 阅读 · 0 评论 -
从来没有用过触发器,练习一下
SQL Server为每个触发器都创建了两个专用表:Inserted表和Deleted表。这两个表由系统来维护﹐它们存在于内存中而不是在数据库中。这两个表的结构总是与被该触发器作用的表的结构相同。触发器执行完成后﹐与该触发器相关的这两个表也被删除。Deleted表存放由于执行Delete或Update语句而要从表中删除的所有行。Inserted表存放由于执行Insert或Updat原创 2008-08-05 14:57:00 · 323 阅读 · 0 评论 -
制作在SQL2005下的CLR触发器
建立SQLSERVER的数据库项目,新建一个触发器:public partial class Triggers{ // 为目标输入现有表或视图并取消对属性行的注释 [Microsoft.SqlServer.Server.SqlTrigger (Name="TriggerCLR1", Target="TRANSTEST", Event="FOR UPDATE")] public原创 2008-08-06 11:30:00 · 359 阅读 · 0 评论 -
制作在SQL2005下的CLR存储过程
public partial class StoredProcedures{ [Microsoft.SqlServer.Server.SqlProcedure] public static int StoredProcedure1(string param) { SqlConnection sqlConnection = new SqlConnection("c原创 2008-08-06 13:36:00 · 316 阅读 · 0 评论 -
SQL2005 XML 的例子
CONTEXT字段类型为XML insert into T (CONTEXT) values (2007-12-31500)insert into T (CONTEXT) values (2007-12-31600)insert into T (CONTEXT) values (112007-12-31500)insert into T (CONTEXT) values原创 2008-08-06 15:46:00 · 413 阅读 · 0 评论 -
制作SQL2005 CLR 聚合函数(二)
//计算分组值的平均值 //用来测试Merge(),结果是正确的,但感觉效率并没有T-SQL高 private SqlInt32 donutCount; private int count; public void Init() { donutCount = 0; count = 0; } public原创 2008-08-27 16:21:00 · 315 阅读 · 0 评论 -
SQLSERVER 2008 CTPt同步复制
分别在两台WINDOWS 2008 SERVER的机器上安装SQLSERVER2008 CTP,分别是WINA和WINB。准备工作: 1) 为了测试方便,将它们的防火墙全部关闭,实际生产环境,可以开启1433端口。 2) SQLSERVER代理必须运行。 3) SQLSERVER2008 CTP默认不允许远程访问,在两台机器上各自执行S原创 2008-06-24 15:57:00 · 718 阅读 · 0 评论 -
对于追加数据必须有事务操作的补充
对于追加数据必须有事务操作的补充 对于事务方1) 这条语句开始:oRs.Open "DELETE FROM DTZK", oConn, adOpenForwardOnly, adLockReadOnly 其他用户就暂时不能访问DTZK数据库了直到事务提交。2) 如果没有上述语句,直接是:oRs.Open "SELECT * FROM DTZK", oConn, adOpenFor原创 2008-07-03 14:10:00 · 433 阅读 · 0 评论 -
SQLSERVER高可用性镜像的困惑
SQLSERVER2005 SP1之后提供的镜像功能是一个新的故障转移的功能。网上有很多用TSQL语句来配置的教程,而当我看到SQLSERVER MANAGERMENT STUDIO有专门的菜单完成这项任务,我就对用TSQL的人不是很理解。作为企业用户,我不关心具体的命令是什么,只要任务完成。我们的精力主要放在业务上面,并不需要了解所谓底层的什么东西。搭建了三个WINDOWS原创 2008-07-04 14:06:00 · 1562 阅读 · 1 评论 -
C#3.5+ORACLE8i和VB6.0+ORACLE8i
OracleConnection oracleConnection = new OracleConnection(@"Data Source=lys;Persist Security Info=True;User ID=system;Password=manager;Unicode=True");try{ oracleConnection.Open(); //OracleC原创 2008-10-06 13:27:00 · 794 阅读 · 0 评论 -
打印控件失败
2008年10月17日微软安全更新KB956391导致报表服务的RSClientPrint控件不能工作了. IE用到的RSClientPrint.Class报表打印控件有GDI+漏洞,微软的补丁直接将这个控件封杀了。 解决方法:(第一步)尝试给SQL Server 2005 Service Pack 2打补丁(KB954606),但似乎因为版本问题,不成功。尝试给SQL Serve原创 2008-11-06 10:26:00 · 2482 阅读 · 0 评论 -
参数化查询
DataSet dataSet = new DataSet(); //select="SELECT * FROM XXXX WHERE BH=@BH AND KSRQ=@KSRQ AND JSRQ=@JSRQ" sqlCommand = new SqlCommand(select, conn); sqlC原创 2009-01-21 14:18:00 · 451 阅读 · 0 评论 -
对TransactionScope()事务的问题的补充
TransactionScope()事务的问题 using (TransactionScope ts = new TransactionScope()){ using (SqlConnection conn = new SqlConnection(@"XXX")) { conn.Open(); SqlCommand sqlCommand = new SqlCommand原创 2010-02-22 13:04:00 · 582 阅读 · 0 评论