-
判断触发器正在处理的是插入,删除还是更新触发
但是有时候,可以视看处进逻辑程度,可以把三者写成一个触发器,只是在其中稍作判断而已。你可以根据从下面方法判断触发器是是处理了插入,删除还是更新触发的:复制代码代码如下:--宣告两个变量DECLARE@DBIT=0DECLARE@IBIT=0--如果在DELETED内部临时触发表找到记录,说明旧数据被删除IFEXISTS(SELECTTOP11FROMDELETED)SET@D=1--如果在INSERTED内部临时触发表找到记录,说明有新数据插入IFEXISTS(SELECTTOP11FROMINSERTED)SET@I=1--如果两个表都有记录,说明触发器是执行更新触发IF@I=1AND@D=1PRINT(N'更新...
数据库操作教程 2022-09-23 17:07:51 -
存储过程配合UpdateDaset方法批量插入Dataset数据实现代码
复制代码代码如下:publicboolSaveSMSMessage(SMSBatchsmsBatch,DataSetsmsMessages){//using(TransactionScopets=newTransactionScope(TransactionScopeOption.Suppress))//{foreach(DataRowrowinsmsMessages...
数据库操作教程 2022-09-23 17:06:08 -
向数据库中插入数据并返回当前插入的行数及全局变量@@IDENTITY应用
数据库中有张表User,字段是ID和Name,ID自增。利用存储过程实现插入时返回当前的行数复制代码代码如下:CREATEPROCProc_InsertUser@namenvarchar(100)ASINSERTINTOdbo.User(Name)VALUES(@name)SELECT@@IDENTITYASID利用全局变量@@IDENTITY实现...
数据库操作教程 2022-09-23 17:00:59 -
SQLServer批量插入数据的两种方法
运行下面的脚本,建立测试数据库和表值参数。复制代码代码如下:--CreateDataBasecreatedatabaseBulkTestDB;gouseBulkTestDB;go--CreateTableCreatetableBulkTestTable(Idintprimarykey,UserNamenvarchar(32),Pwdvarchar(16))go--CreateTableValuedCREATETYPEBulkUdtASTABLE(Idint,UserNamenvarchar(32),Pwdvarchar(16))下面我们使用最简单的Insert语句来插入100万条数据,代码如下:复制代码代码如下:Stopwatchsw=newStopwatch();SqlConnectionsqlConn=newSqlConnection(ConfigurationManager.ConnectionStrings["ConnStr"].ConnectionString);//连接数据库SqlCommandsqlComm=newSqlCommand();sqlComm.CommandT...
数据库操作教程 2022-09-23 16:57:58 -
LinqtoSQL插入数据时的一个问题
复制代码代码如下:createtableRSSFeedRight(FeedIdintForeignKey(FeedId)ReferencesRSSFeed(FeedId)NOTNULL,--FeedId,UserIdintForeignKey(UserId)ReferencesUserInfo(UserId)NOTNULL,--UserId,RightValuebigintNOTNULLPrimarykey(UserId,FeedId),)插入数据的代码RSSFeedRightfeedRight=newRSSFeedRight();feedRight.UserId=userId;feedRight.FeedId=feedId;feedRight.RightValue=0;_Db.RSSFeedRights.InsertOnSubmit(feedRight);_Db.SubmitChanges();每次插入时都提示说FeedId不能插入空值,郁闷的不行,分明是给了非空值的!后来仔细检查,发现这个RSSFeedRight实体类中居然还有两个指向UserInfo和RSSFeed表的字段,后来...
数据库操作教程 2022-09-23 16:57:00 -
Excel导入Sqlserver数据库脚本
受以前旧同事之托,在博客里发这段脚本:execsp_configure'showadvancedoptions',1reconfigureexecsp_configure'AdHocDistributedQueries',1reconfigureSELECT*INTOtmp_assetFROMOPENROWSET('Microsoft.Jet...
数据库操作教程 2022-09-23 16:54:58 -
SQL批量插入数据几种方案的性能详细对比
公司技术背景:数据库访问类(xxx.DataBase.Dll)调用存储过程实现数据库的访问。技术方案一:压缩时间下程序员写出的第一个版本,仅仅为了完成任务,没有从程序上做任何优化,实现方式是利用数据库访问类调用存储过程,利用循环逐条插入...
数据库操作教程 2022-09-23 16:52:31 -
得到自增列的下一个会插入的id
复制代码代码如下:declare@Table_namevarchar(60)set@Table_name='Pay_inputpay';Selectso.nameTable_name,--表名字sc...
数据库操作教程 2022-09-23 16:52:15 -
SQL直接操作excel表(查询/导入/插入)
复制代码代码如下:--配置权限EXECsp_configure'showadvancedoptions',1;GORECONFIGURE;GOEXECsp_configure'AdHocDistributedQueries',1;GORECONFIGURE;GOSQLSERVER和EXCEL的数据导入导出1、在SQLSERVER里查询Excel数据:--======================================================复制代码代码如下:SELECT*FROMOpenDataSource('Microsoft.Jet.OLEDB.4.0','DataSource="c:book1.xls";UserID=Admin;Password=;Extendedproperties=Excel5.0')...[Sheet1$]下面是个查询的示例,它通过用于Jet的OLEDB提供程序查询Excel电子表格。SELECT*FROMOpenDataSource('Microsoft.Jet.OLEDB.4.0','DataSource="c:Financeacc...
数据库操作教程 2022-09-23 16:47:48 -
把excel表格里的数据导入sql数据库的两种方法
本来最近在研究微信公众平台的,老大临时交我个任务,把excel表格里的数据导入sql数据库,我想这soeasy嘛。没想都在上面消磨了两天...把情况介绍下:在数据库中有如下这样结构的表(A表)我只取关键的及列里面还有很多数据...
数据库操作教程 2022-09-23 16:46:12 -
使用用SQL语句从电脑导入图片到数据库的方法
使用SQL语句从电脑导入图片到数据库的方法,具体代码如下所示:--创建图片表CREATETABLEW_PIC(IDINT,--编号WPATHVARCHAR(80),--完整路径PICVARCHAR(80),--图片名称,不带后缀imgimage--图片内容)--图片表中插入数据INSERTINTOW_PIC(ID,WPATH,PIC)SELECT1,'C:UserswDesktop产品图片2#加工图34-C专用.jpg','2#加工图34-C专用'UNIONALLSELECT2,'C:UserswDesktop产品图片129.jpg','129'--创建游标DECLARECUR_PICCURSORFORSELECTID,WPATH,PICFROMW_PIC;DECLARE@IDint,@PATHVARCHAR(80),@PICVARCHAR(80),@STRVARCHAR(100);OPENCUR_PIC;FETCHNEXTFROMCUR_PICINTO@ID,@PATH,@PIC;WHILE@@FETCH_STATUS=0BEGINSET@STR=STR(@ID);--插入图片数据E...
数据库操作教程 2022-09-23 16:42:59