成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

C#向SQL Server中插入記錄時的問題

開發 后端
本文介紹了C#向Sql Server中插入記錄時單引號的兩種處理方式。

asp.net中使用c#, 向coredb.mybbs表中插入記錄值(title, content)【文章的標題和內容】,由于content, title中可能包含單引號,直接使用sql的insert命令會報錯,對此有兩種處理方法,一種將單引號替換成兩個單引號,第2種方法是使用存儲過程。

表mybbs的格式定義如下:

  1. create table [dbo].[mybbs] (   
  2. [id] [bigint] identity (1, 1) not null ,   
  3. [title] [char] (160) collate chinese_prc_ci_as null ,   
  4. [author] [char] (20) collate chinese_prc_ci_as null ,   
  5. [date_of_created] [datetime] null ,   
  6. [abstract] [char] (480) collate chinese_prc_ci_as null ,   
  7. [content] [ntext] collate chinese_prc_ci_as not null   
  8. ) on [primary] textimage_on [primary]   

1、C#向Sql Server中插入記錄時單引好問題處理方法之一:將單引號用兩個單引號替換:

  1. sqlconnection coredb=new sqlconnection();   
  2. coredb.connectionstring= "workstation id=\"gqa-eric-lv\";packet size=4096;integrated security=sspi;" +   
  3. "data source=\"gqa-eric-lv\";persist security info=false;initial catalog=coredb";   
  4.  
  5. //單引號用""替換,以插入到sql server中;   
  6. string title=textbox1.text.replace("","");   
  7. string content=textbox2.text.replace("","");   
  8. if(title.trim()==""||content.trim()=="")return;   
  9. string insertcmd =@"insert into mybbs (title,content) values("+ title + "," +content+")";   
  10.  
  11. sqlcommand mycommand = new sqlcommand(insertcmd,coredb);   
  12. coredb.open();   
  13. sqldatareader myreader = mycommand.executereader();   
  14. myreader.close();   
  15. coredb.close();   
  16.  

2、C#向Sql Server中插入記錄時單引好問題處理方法之二:使用存儲過程來插入

1) 創建存儲過程:

  1. create proc insertmybbsproc(@title char(160), @author char(20), @content ntext)   
  2. as   
  3. insert into mybbs(title,author,content) values(@title, @author, @content)  

2) 查詢分析器中測試存儲過程:

  1. declare @title char(160)   
  2. declare @author char(20)   
  3. declare @content char(600)   
  4. set @title=test title 3   
  5. set @author=david euler 3   
  6. set @content=it is the content 3   
  7. exec insertmybbsproc @title, @author, @content   

3) c#中通過sqlcommand執行存儲過程:

  1. sqlconnection coredb=new sqlconnection();   
  2. coredb.connectionstring= "workstation id=\"gqa-eric-lv\";packet size=4096;integrated security=sspi;" +   
  3. "data source=\"gqa-eric-lv\";persist security info=false;initial catalog=coredb";   
  4.  
  5. string title=textbox1.text;   
  6. string content=textbox2.text;   
  7.  
  8. if(title.trim()==""||content.trim()=="")return;   
  9.  
  10. //insertmybbsproc是向mybbs中插入數據的procedure:   
  11. sqlcommand insertcmd = new sqlcommand("insertmybbsproc",coredb);   
  12.  
  13. insertcmd.commandtype=commandtype.storedprocedure;//命令類型為存儲過程;下面定義參數對象:   
  14. sqlparameter prm1=new sqlparameter("@title", sqldbtype.char,160);   
  15. sqlparameter prm2=new sqlparameter("@author", sqldbtype.char,20);   
  16. sqlparameter prm3=new sqlparameter("@content",sqldbtype.ntext,1073741823);   
  17. prm1.direction=parameterdirection.input;   
  18. prm2.direction=parameterdirection.input;   
  19. prm3.direction=parameterdirection.input;   
  20. //為insertcmd添加sql參數:   
  21. insertcmd.parameters.add(prm1);   
  22. insertcmd.parameters.add(prm2);   
  23. insertcmd.parameters.add(prm3);   
  24. //為sql參數賦值:   
  25. prm1.value=title;   
  26. prm2.value="david euler";   
  27. prm3.value=content;   
  28.  
  29. coredb.open();   
  30. int recordsaffected=insertcmd.executenonquery();   
  31. if(recordsaffected==1)response.write("< script>alert(""插入成功" +");< /script>");   
  32. coredb.close();   

以上就是C#向SQL Server中插入記錄時的單引號問題的處理方法。

【編輯推薦】

  1. C# Thread類的應 用
  2. C#線程:BeginInvoke和EndInvoke方法
  3. 學習C#:Attribute與Property
  4. C#編碼標準66條
  5. C#委托事件及自定義事件的處理 

責任編輯:book05 來源: cnblogs
相關推薦

2009-08-12 16:39:50

C#向Excel插入數

2009-08-24 15:41:50

C#連接SQL Ser

2009-08-06 18:15:13

C# SQL Serv

2010-09-13 10:43:22

SQL Server

2009-02-05 15:32:23

接口委托

2011-07-18 10:45:55

C#SQL Server數

2010-07-22 10:45:45

SQL Server數

2009-08-17 18:30:29

C# SQL Serv

2009-08-24 16:11:35

C#項目開發

2024-04-10 12:56:00

C#批量插入開發

2010-11-11 10:53:22

SQL Server遍

2009-09-04 17:44:35

2009-08-03 14:17:18

C#連接AccessC#連接SQL Ser

2009-09-04 17:29:01

C#創建SQL Ser

2011-04-01 14:14:42

SQL Server空值

2011-06-09 09:08:00

C#循環結構

2009-06-24 17:32:40

動態加載AppDoma

2009-08-12 13:11:24

C#實現遠程線程插入

2023-01-03 11:22:23

C#代碼SQL Server

2009-05-26 10:21:07

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 99色在线视频 | 欧美一区二区大片 | 中文字幕日韩一区 | 久久综合狠狠综合久久综合88 | 18性欧美 | 亚洲一区二区在线播放 | 亚洲国产中文字幕 | 色婷婷综合网站 | 一级黄色播放 | 久久天天综合 | 日韩在线免费视频 | 精品久久久久久久久久久久久久 | 毛片a级| www.玖玖玖| 日韩欧美在线播放 | 欧美日韩一区二区三区四区 | 久久精品国产v日韩v亚洲 | 久久精品小视频 | 欧美日韩高清在线观看 | 一级片在线视频 | 日韩成人在线观看 | 国产在线资源 | 国产精品99免费视频 | 精品在线观看一区 | 日韩a在线 | 在线色网址 | 久久亚洲欧美日韩精品专区 | av黄色在线观看 | 中文字幕日韩欧美一区二区三区 | 中文在线一区二区 | 亚洲一区中文字幕在线观看 | 天天拍夜夜爽 | 在线一级片 | 久久日本| 国产精品久久久久久久久久软件 | a级在线免费 | 亚洲国产成人精品女人久久久野战 | 天天操天天摸天天干 | 成人午夜av | 午夜视频在线 | 亚洲视频免费在线观看 |