有时候我们手头上的数据库可能只剩下了mdf文件,而日志文件丢失了或者损坏了, 那么你可以尝试使用以下方法重建事务日志,注意sql 2K不是这个语句
1 | USE master; GOCREATE DATABASE nuke ON |
一个简单的博客
有时候我们手头上的数据库可能只剩下了mdf文件,而日志文件丢失了或者损坏了, 那么你可以尝试使用以下方法重建事务日志,注意sql 2K不是这个语句
1 | USE master; GOCREATE DATABASE nuke ON |
大家以前应该碰到过这样的情况: 在作业或者项目数据库中,创建和映射了数据库帐号aspuser,当你重装了数据库,或者备份了到另外的服务器上去还原的时候,你的aspuser帐号不能对数据库正常访问了,即使在数据库的登录帐号中创建了相同的aspuser帐号,也不行。 今天在嘉为培训的时候,主将老师谈到这个问题,提供了很好的方案:
–报告孤立用户 Exec sp_change_users_login ‘Report’
执行这个存储过程可以查出数据库中,存在相同问题的帐号的列表
–修复用户与已经存在的登录账号间的映射 Exec sp_change_users_login ‘Auto_Fix’,’aspuser’ –通过更新用户,共修复了 1 个孤立用户。这个就是修复帐号的存储过程(前提是数据库登录帐号中有aspuser)
–创建登录并修复用户与登录账号间的映射 Exec sp_change_users_login ‘Auto_Fix’,’aspuser’,null,’000000’
创建aspuser帐号的同时,对帐号进行修复,一举两得
如果系统中存在端口冲突就有可能发生本情况. IIS默认使用80端口进行HTTP通信. 如果除IIS外的应用程序正在运行并且正在相同的IP地址上使用80端口,在您试图使用IIS管理器启动网站时您也可能收到该错误讯息. 解决办法
前台 <script> var a = ''; a = '<%# PrintStr()%>'; alert(a); </script>
值得注意的是这个调用的方法不能是private或者internal的. 如果PrintStr()该方法是有返回值的时候需要在page_load里加入Page.DataBind()方法,不然不会成功返回值的 方法需要传参数的话,不知道咋搞了
表ChooseAuthorize和membership的User表,联合查询
1 | /// <summary> |
环境:有一张Global_CollectInfo_tb来存放有关收藏的记录包括收藏者ID,收藏的记录的主表ID,收藏的记录在具体副表里的ID,收藏记录在主表里的ID,具体的数据记录放在各个副表里. Global_TableDetail_tb里存放有关表的具体信息,包括列名,列类型, USE [cys] GO /** 对象: StoredProcedure [dbo].[getMyCollectList_sp] 脚本日期: 07/15/2010 08:46:24 **/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO – ============================================= – Author: dzd – Create date: 2010-7-14 – Description: 收藏库多表查询 – ============================================= ALTER PROCEDURE [dbo].[getMyCollectList_sp] – Add the parameters for the stored procedure here @UserId nvarchar(50) AS –定义sql语句变量 declare @nsql nvarchar(2000) DECLARE @strOrder varchar(400); – 排序类型 DECLARE @StrGetFields varchar(1000); – 需要返回的列 –定义临时表 create TABLE #t([id] nvarchar(50),[字段1] nvarchar(500),[字段2] nvarchar(500),[字段3] nvarchar(500),[字段4] nvarchar(500),[字段5] nvarchar(500),[来源表] nvarchar(500)) –定义游标 DECLARE tnames_cursor CURSOR FOR SELECT Global_TableDetail_tb.TableName,Global_TableDetail_tb.TableDetailId FROM Global_TableDetail_tb INNER JOIN Global_CollectInfo_tb ON Global_TableDetail_tb.TableDetailId = Global_CollectInfo_tb.CollectTableId WHERE (Global_CollectInfo_tb.CollectorId = @UserId) and Global_TableDetail_tb.IsShow=’true’ group by Global_TableDetail_tb.TableName,Global_TableDetail_tb.TableDetailId –打开游标 OPEN tnames_cursor declare @TableName nvarchar(100),@TableDetailId nvarchar(100) FETCH next from tnames_cursor into @TableName,@TableDetailId while @@fetch_status=0 begin select top 5 @StrGetFields=isnull(@StrGetFields+’,’,’’)+case when ColumnType =’date’ then ‘convert(nvarchar(100), ‘ else ‘’ end + ColumnName+ case when ColumnType =’date’ then ‘,120)’ else ‘’ end from Global_ColumnConfiger_tb where TableId=@TableDetailId order by ColumnIndex asc SET @nsql = ‘SELECT id,’ +@StrGetFields +’,TableName FROM Global_TableDetail_tb INNER JOIN Global_CollectInfo_tb ON Global_TableDetail_tb.TableDetailId = Global_CollectInfo_tb.CollectTableId INNER JOIN ‘ + @TableName + ‘_副表 ON Global_CollectInfo_tb.CollectRecordId = ‘+ @TableName+’_副表.id WHERE (Global_CollectInfo_tb.CollectorId = ‘’’+@UserId+’’’) AND (Global_TableDetail_tb.IsShow = ‘’true’’)’ print(@nsql) insert into #t execute(@nsql) set @StrGetFields = null FETCH next from tnames_cursor into @TableName,@TableDetailId end CLOSE tnames_cursor DEALLOCATE tnames_cursor select * from #t
我在开发过程中发现有需要根据数据库传来的表的不同,产生不同的gridview的列,但是,其中根据数据表生成的列是要放到几个模板列之间的.前台代码如下
1 | <div id="divGv" style="margin: 0 auto; text-align: center;" runat="server"> |
后台代码相当多,可能有人说为什么前台里的模板列里没有控件呢?这个是因为我现在要做的是插入列,使用的是insert,如果是使用了add,那么这个是可以直接在前台完全写好模板列的,也没有下面的这么麻烦了,贴出后台代码,希望有人可以给出更简单的办法.
1 | //创建及设置字段 |
看到这里,是不是觉得很简单呢?错了.麻烦的在后面呢.这个使用了列的insert方法后,进行翻页的时候模板列如果本来在前台写了控件的就会消失,这个还不知道原因,网上找了找,据说是微软的bug.所以我追加下面的代码来解决这个问题
1 | //行创建时候添加模板列的控件 |
其中类似lbtn4.CommandArgument = e.Row.RowIndex.ToString();
的代码是绑定行值,以方便后面进行操作 而
1 | if (e.Row.RowType == DataControlRowType.Header) { |
则是为了生成全选按钮,并订阅CheckedChanged事件.以用来激发下面的事件,来全选上所有复选框
1 | protected void cb_CheckedChanged(object sender, EventArgs e) { |
从数据文件向 Microsoft SQL Server 实例大容量导入数据时,请遵循下列原则: