随笔分类 - Stored Procedures
摘要:使用System.IO名称空间下的DriveInfo类别,可以获取磁盘相关信息。代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->privateDataTableGetDriveInfo(stringdriveName){//new一个实例表DataTabledataTable=newDataTable();DataColumndataColumn;//new一个字段dataColumn=newDataColumn();//字段存储的数据类
阅读全文
摘要:下面这段SQL code是获取SQL Server默认的备份目录,创建一个用户自定义函数。代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->IFOBJECT_ID('dbo.udf_SQLServerBackupDirectory')ISNOTNULLDROPFUNCTIONdbo.udf_SQLServerBackupDirectoryGOCREATEFUNCTIONdbo.udf_SQLServerBackupDirec
阅读全文
摘要:SQL Server的master数据库中有一个扩展存储过程xp_fixeddrives,可以获取硬盘分区与分区剩余容量,参考下面代码:代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->IFOBJECT_ID('#TempDrive')ISNOTNULLDROPTABLE#TempDriveCREATETABLE#TempDrive([DriveName]NVARCHAR(10),[DriveFreeSpace]BIGINT
阅读全文
摘要:前段时间写了一些SQL语句或存储过程,可以参考此篇:http://www.cnblogs.com/insus/articles/1899336.html原本只是为了自己方便工作,但是用户永远满足不了,他们也有跟自己需求一样,只有写成一个类别,并在asp.net界面显示出来。Authorizations.cs 代码片断:代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->usingSystem;usingSystem.Collections.G
阅读全文
摘要:做Syteline System维护,用户特多要求,今天需要为用户修改一个Material Transaction Report. 具体实现如下,可以参考:代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->CREATEPROCEDURE[dbo].[usp_SyteLine_GetMaterialTransactionsReport](@ConditionExpressionnvarchar(3000))ASDECLARE@sqlnvarc
阅读全文
摘要:只显示on hand quantity and wharehouse而且quantity 大于零。Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->SELECTi.[item],i.[description],iw.[qty_on_hand],iw.[whse]FROM[dbo].[item]iINNERJOIN[dbo].[itemwhse]iwON(i.[item]=iw.[item])WHEREiw.[qty_on_hand]>0下
阅读全文
摘要:在Syteline system中,默认Goods Receiving Note Report格式不适合自己需求,再加上添加了一些自定义字段,因此写了一个存储过程,能在SQL查询分析器得到需要结果。代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->CREATEPROCEDURE[dbo].[usp_SyteLine_GetGoodsReceivingNoteReport](@ConditionExpressionnvarchar(3000)
阅读全文
摘要:实施Syteline system, 在authorizations时,经常需要写的几个SQL语句,因此把它写成存储过程,在使用时,执行这些存储过程即可,纯粹是为了方便工作。取到所有用户:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->CREATEPROCEDURE[dbo].[usp_SyteLine_GetUserNames]ASSELECT[userId],[username],[userDesc]FROM[dbo].[UserName
阅读全文
摘要:用户经常需要把Excel的数据导入SQL中,只有这样先导入到一个表中,然后再对这个表进行处理。由于目标表的数据不能清空。数据存在的,需要作更新动作,不存在的,需要做插入动作。代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->DECLARE@NINT=1DECLARE@ROWSINT=(SELECTMAX([ID])FROM[dbo].[Loose04])WHILE@N<=@ROWSBEGIN--宣告临时变量,存储每笔记录需要异动的字段
阅读全文
摘要:[Fqa]表与[FqaVisual]表,是一对多的关系,即是说[FqaVisual]表中有一[FqaId]字段是FOREIGN KEY也是[Fqa]表的主键。还有一点重点,就是[Fqa]表的[VisualPassed]字段,与[FqaVisual]表的[Result]字段,这两个字段的数据类型均为BIT。当[VisulaPasswd]字段值为0时,[FqaVisual]表可添加一笔或多笔记录,但最后一笔记录的[Result]字段值为1,一旦[Result]字段值为1时,还要更新[Fqa]表的[VisualPassed]字段为1。当[VisulaPasswd]字段值为1时,无法再对[FqaVis
阅读全文
摘要:在aspx页面中检查用户拥有访问此页权限之后,即可检查到用户是否拥有相关的操作权限,如“添加”,“编辑”,“更新”,“删除”等操作权限。存储过程:代码 Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATEPROCEDURE[dbo].[usp_CheckOperationAction](@UsersIdint,@PagesIdint,@Operation
阅读全文
摘要:如何实现用户是否有访问页面的权限,我们可以在asp.net的Page_Load中,取得当前网页名称与当前用户,来检查到用户是否有对此页访问权。可以通过检索[UsersRole]表和[UsersModule]表,是否有相关记录,如果有即有访问权限,反之,即是拒绝访问。存储过程:代码 Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATEPROCEDURE[d
阅读全文
摘要:用户与模块关系功能,您可以写成跟用户与角色关系一样。不过下面实现方法会看到更多的权限控制。介面如下截图:数据表结构如下:代码 Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATETABLE[dbo].[UsersModule]([UsersId][int]NOTNULL,[ModuleId][smallint]NOTNULL,[Purview][int]
阅读全文
摘要:把控制的页面分类,即以模块来分类,如同角色所拥有页面一样,最终我们只为用户分配某一模块,来控制到用户只能访问相关的页面。asp.net前端介面:在数据库,表[ModulePages]结构如下,代码参考角色与页面关系表结构一样:实现为模块分配页面的事件,还得写分配事件的存储过程:代码 Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATEPROCEDURE[
阅读全文
摘要:权限管理,不但有角色大方面来控制用户所拥有的权限,还是以模块来控制,这样可以让权限分得更细些。这方法与角色管理表结构与存储过程是一样的,只是一些表名写字段名称不一样而已。在asp.net后台管理介面如下截图:数据表[Module]结构如下:代码 Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATETABLE[dbo].[Module]([ModuleId
阅读全文
摘要:做权限管理,我们要做好某一个角色所拥有的控制页面,因此,会在数据库中,建立一张[RolePages]来存储角色与控制页面的关系信息。在Asp.net介面,如下示图:表结构如下:代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATETABLE[dbo].[RolePages]([RoleId][smallint]NOTNULL,[PagesId][int
阅读全文
摘要:权限管理,必涉及到用户与角色关系。下面的做法,是对某一个用户授权拥有某个角色。一个用户可拥有多个角色。建立一张表[UsersRole]其中有三个字段,[UsersId]注册用户ID,[RoleId]角色表的主ID,还有一个字段[IsEnable]数据类型为BIT是记录用户是否拥有此角色。表的结构如下:代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREAT
阅读全文
摘要:下面示图为角色管理介面。在数据表[Role]中,最少需要两个字段[RoleId]和[RoleName]。Project中所有角色在此介面进行管理。下面为表[Role]结构,直接拷贝在sql Server2008查询分析器执行:代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->ETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATETABLE[dbo].[Role]([RoleId][smallint]ID
阅读全文
摘要:在Project中,实现权限管理,首先要管理好需要权限控制的页面,因此,我们可以在SQL Server建立一个表[Pages]来存储页面。下面为表[pages]结构,可参考:代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATETABLE[dbo].[Pages]([PagesId][int]IDENTITY(1,1)NOTNULL,[PagesNam
阅读全文
摘要:我们可以在专案中,实现用户登录日志记录。简单实现方法,如下:在数据中建立一张表,存储一些相关的信息。代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATETABLE[dbo].[LoginLog]([LoginLogId][int]IDENTITY(1,1)NOTNULL,[UsersId][int]NOTNULL,[IP][nvarchar](20)
阅读全文