CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  ASP.NET

关于使用sql存储过程中遇到的问题

楼主shidabbs(开心就好)2005-02-04 13:38:24 在 .NET技术 / ASP.NET 提问

程序出错,提示@outurl需要一个参数  
  也就是说,不能输入一个空值  
  那么我要怎么设置才可以让它接受一个空值? 问题点数:30、回复次数:13Top

1 楼foolnet(foolnet)回复于 2005-02-04 13:44:51 得分 0

试试     =DataType.DbNull  
  Top

2 楼liulxmooo(娃娃)回复于 2005-02-04 13:49:07 得分 0

upTop

3 楼shidabbs(开心就好)回复于 2005-02-04 14:00:08 得分 0

是修改Vb.net中的代码,还是修改Sql存储过程的代码?  
  @outurl等列都是需要保存的,只是要设置为允许用户输入空值。Top

4 楼hs_tang7788(hs_tang)回复于 2005-02-04 14:02:16 得分 0

试试在存储过程中定义   @outurl=nullTop

5 楼fangwancong(聪头.珠海)回复于 2005-02-04 14:07:00 得分 0

用楼上的就可以啦。。  
   
  试试在存储过程中定义   @outurl=null  
  Top

6 楼snowpine999([彼岸烟花][当你看到☆河灿烂,可会想起我?])回复于 2005-02-04 14:07:05 得分 0

upTop

7 楼qzb0818(漂来漂去)回复于 2005-02-04 14:17:19 得分 0

应该是设计表时@outurl对应的列允许null就可以了吧,  
  调用存储过程时只要声明了参数@outurl就可以了,传null也是可以的Top

8 楼wang2855()回复于 2005-02-04 14:35:50 得分 0

试试在存储过程中定义   @outurl=null  
  我们都是这样用的Top

9 楼shidabbs(开心就好)回复于 2005-02-04 15:41:00 得分 0

具体是在哪个地方呢……  
   
  CREATE   PROCEDURE   [Art_Topic_insert]  
  (@ClassId_1   [int],  
    @BeOrder_2   [int],  
    @Title_3   [varchar](255),  
    @Content_4   [ntext],  
    @isShowRe_5   [bit],  
    @TitlePicUrl_6   [varchar](255),  
    @SubjectId_7   [int],  
    @OutUrl_8   [varchar](255),  
    @Summary_9   [ntext],  
    @isA_10   [bit],  
    @isHighLight_11   [bit],  
    @isClassTop_12   [bit],  
    @isIndexTop_13   [bit],  
    @isAllowRe_14   [bit],  
    @KeywordId_15   [varchar](255),  
    @Author_16   [varchar](50),  
    @ContactTheWay_17   [varchar](255),  
    @Source_18   [varchar](100),  
    @SourceUrl_19   [varchar](255),  
    @UserName_20   [varchar](20),  
    @UserId_21   [int],  
    @UserIp_22   [varchar](20),  
    @isBlog_23   [bit],  
    @BlogId_24   [bit],  
    @UseTable_25   [varchar](20),  
    @isOk_26   [bit],  
    @TemplateId_27   [int])  
  AS  
  INSERT   INTO   [duoluojie].[dbo].[Art_Topic]    
    (   [ClassId],  
    [BeOrder],  
    [Title],  
    [Content],  
    [isShowRe],  
    [TitlePicUrl],  
    [SubjectId],  
    [OutUrl],  
    [Summary],  
    [isA],  
    [isHighLight],  
    [isClassTop],  
    [isIndexTop],  
    [isAllowRe],  
    [KeywordId],  
    [Author],  
    [ContactTheWay],  
    [Source],  
    [SourceUrl],  
    [UserName],  
    [UserId],  
    [UserIp],  
    [isBlog],  
    [BlogId],  
    [UseTable],  
    [isOk],  
    [TemplateId])      
  VALUES    
  (   @ClassId_1,  
    @BeOrder_2,  
    @Title_3,  
    @Content_4,  
    @isShowRe_5,  
    @TitlePicUrl_6,  
    @SubjectId_7,  
    @OutUrl_8,  
    @Summary_9,  
    @isA_10,  
    @isHighLight_11,  
    @isClassTop_12,  
    @isIndexTop_13,  
    @isAllowRe_14,  
    @KeywordId_15,  
    @Author_16,  
    @ContactTheWay_17,  
    @Source_18,  
    @SourceUrl_19,  
    @UserName_20,  
    @UserId_21,  
    @UserIp_22,  
    @isBlog_23,  
    @BlogId_24,  
    @UseTable_25,  
    @isOk_26,  
    @TemplateId_27)  
  Top

10 楼atliu(好好学习、天天向上)回复于 2005-02-04 15:45:38 得分 0

CREATE   PROCEDURE   [Art_Topic_insert]  
  (@ClassId_1   [int],  
    @BeOrder_2   [int],  
    @Title_3   [varchar](255),  
    @Content_4   [ntext],  
    @isShowRe_5   [bit],  
    @TitlePicUrl_6   [varchar](255),  
    @SubjectId_7   [int],  
    @OutUrl_8   [varchar](255),------------------在这里啦Top

11 楼mazekui(悠悠春竹)回复于 2005-02-04 15:50:59 得分 0

在as后面一行就是insert前一行加上  
  if   @OutUrl_8   is   null  
    set   @OutUrl_8=''  
  就可以了Top

12 楼slhuang(★Shawn★)回复于 2005-02-05 00:28:19 得分 0

1,   用存储过程默认参数,比如  
  create   procedure   testproc    
    @pram1   int   =   1  
  as  
    ……  
  go  
   
  2,   前台传一个空值过去,比如  
  YourParam.Value   =   DBNull.Value;Top

13 楼ldljlq(越搞越不明白)回复于 2005-02-05 02:49:34 得分 30

CREATE   PROCEDURE   [Art_Topic_insert]  
  (@ClassId_1   [int]=null,  
    @BeOrder_2   [int]=null,  
    @Title_3   [varchar]=null(255),  
  在类型后面加上“=默认值”,默认值看你的需要来,如@classid_1   int=0  
  另外输出参数也可以设置默认值的,如@classid_1   int=0   output  
  只要设置了默认值的,在程序中调用存储过程时,这个参数就可以不传值。Top

相关问题

  • 使用sql存储过程时遇到尴尬的事情,真郁闷,大家是怎么解决的?
  • 使用“存储过程”和“使用SQL语句”的区别?
  • asp.net中的存储过程,是否一定先在在SQL Server 中写有存储过程,才可以使用?
  • 使用SQL跟踪器如何能实现跟踪存储过程中嵌套的子存储过程
  • 能否使用ASP创建SQL SERVER存储过程,
  • VB中如何使用SQL中的存储过程?
  • 请问DELPHI,SQL Server 中如何使用存储过程?
  • 怎样在SQL Server存储过程中使用临时表?
  • sybase存储过程中如何使用动态sql?
  • vb.net里如何使用SQL存储过程

关键词

  • 存储过程
  • null
  • outurl
  • 默认值
  • beorder
  • varchar
  • 参数
  • 试试
  • 空值
  • 定义

得分解答快速导航

  • 帖主:shidabbs
  • ldljlq

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo