zoukankan      html  css  js  c++  java
  • 抓虫子:RA06550...nPLS00306: 调用 'MEETING_NOTICE_CREATE' 时参数个数或类型

    抓虫子:"System.Data.OracleClient.OracleException: ORA-06550: 第 1 行, 第 7 列: \nPLS-00306: 调用 'MEETING_NOTICE_CREATE' 时参数个数或类型

    这个错误折腾了我好久好久(几个小时),然后扔到一边,今天一个一个参数的排除,终于知道原因啦 T.T

    实体类的属性没有赋初始值,null值插入就会出现这种错误  所以记得赋值呀,string就设为string.empty得了吧

    扔个实体类的codesmith:

    <%@ CodeTemplate Language="C#" TargetLanguage="Text" Src="" Inherits="" Debug="False" Description="Template description here." %>
    <%@ Assembly Name="SchemaExplorer" %>
    <%@ Assembly Name="System.Design" %>
    <%@ Assembly Name="System.Data.OracleClient" %>
    <%@ Import Namespace="System.Data.OracleClient" %>
    <%@ Import Namespace="SchemaExplorer" %>
    <%@ Property Name="SourceTables" Type="SchemaExplorer.TableSchemaCollection" Category="Connection" Description="Tables of the sytem." %>
    <%@ Assembly Name="System.Data" %>
    <%@ Import Namespace="System.Data" %>
    <% WriteData();%>
    <script runat="template">
    // My methods here.
    public void WriteData(){
        Response.Write(@
    "private const int INT_INIT = 0;
    private const string INT_STRING = string.Empty;
    private const DateTime INI_DATE = System.DateTime.MaxValue;
    ");
    Response.Write(
    "\r\n\r\n");

        foreach(TableSchema table 
    in SourceTables){
            
    //Response.Write("public class "+table.Name+"\r\n{\r\n");
            foreach(ColumnSchema column in table.Columns){
                Response.Write(
    "private "+GetDbType(column.DataType)[0]+" _"+column.Name.ToLower()+ GetDbType(column.DataType)[1+ ";\r\n");
                Response.Write(
    "///<summary>\r\n///"+column.Description+"\r\n///</summary>\r\n");
                Response.Write(
    "public "+GetDbType(column.DataType)[0]+" "+column.Name+"\r\n{\r\n");
                Response.Write(
    "get{return _"+column.Name.ToLower()+";}\r\n");
                Response.Write(
    "set{_"+column.Name.ToLower()+"=value;}\r\n}\r\n\r\n");
            }

            
    //Response.Write("\r\n}\r\n");
        }

    }
     

    public string GetDbTypeStr(System.Data.DbType type)
    {
        
    return type.ToString();
        }


    public string[] GetDbType(System.Data.DbType type)
    {
        string ret
    =string.Empty;
        string iv 
    = string.Empty;
        
        
    switch(type){
            
    case DbType.String :
                ret
    ="string";
                iv
    =" = INI_STRING";
                
    break;
            
    case (DbType)System.Data.OracleClient.OracleType.Number:
            
    case DbType.Int32 :
                ret
    ="int";
                iv
    =" = INI_INT";
                
    break;
            
    case DbType.Int16 :
                ret
    ="short";
                iv
    =" = INI_INT";
                
    break;
            
    case DbType.Int64 :
                ret
    ="int";
                iv
    =" = INI_INT";
                
    break;
            
    case DbType.DateTime :
                ret
    ="DateTime" ;
                iv
    =" = INI_DATE";
                
    break;
            
    case DbType.Boolean:
                ret
    ="bool";
                
    break;
            
    case DbType.Decimal:
                ret
    ="decimal";
                
    break;
            
    case DbType.Double:
                ret
    ="double";
                
    break;
        }

        
    return new string[]{ret,iv};
    }

    </script>


  • 相关阅读:
    模拟测试20190806
    替罪羊树学习日记
    [Usaco2015 Jan]Moovie Mooving
    [NOIP2016]愤怒的小鸟
    [BZOJ1556]墓地秘密
    [SDOI2009]学校食堂Dining
    [SCOI2008]奖励关
    [洛谷3930]SAC E#1
    [BZOJ2809/APIO2012]dispatching
    [Usaco2018 Open]Disruption
  • 原文地址:https://www.cnblogs.com/syveen/p/885229.html
Copyright © 2011-2022 走看看