【java工具】使用jdbc访问数据库获取某个存储过程信息及下面参数信息

来源:互联网 发布:域名dns劫持怎么解决 编辑:程序博客网 时间:2024/06/07 02:20

首先,我们先写一个包含了最经常使用的参数的存储过程,然后利用jdbc获得该存储过程的信息及它对应所有参数的信息及内容。

【该测试针对的是sqlserver2005.】


【测试用存储过程如何:请自行运行】


CREATE PROCEDURE proc_paras_test@testBITINT BIGINT =0,@testBINARY BINARY,@test1BIT BIT ,@testCHAR CHAR,@testDATETIME DATETIME,@testDECIMAL DECIMAL,@testFLOAT FLOAT,@testINT INT,@testMONEY MONEY,@testNCHAR NCHAR,@testNTEXT NTEXT,@testNUMBERIC NUMERIC,@testNVARCHAR NVARCHAR,@testREAL REAL,@testSMALLDATETIME SMALLDATETIME,@testSMALLINT SMALLINT,@testSMALLMONEY SMALLMONEY,@testTINYINT TINYINT,@testXML XML,@testVARCHAR VARCHAR(200),@testOUTPUT_INT INT OUTPUT ,@testOUTPUT_BIT BIT OUTPUT,@testOUTPUT_NVARCHAR NVARCHAR(200) OUTPUTASBEGINSELECT 'ok';END

【程序编写】

下面将编写程序从Connection对象里面获取DataBaseMetaData ,从中获得我们需要的存储过程信息及对应参数,为了以后可以对照着来写代码生成器,我特意将所有常用的参数都加进去存储过程了,并且我也在程序里显示出从数据库里面获得的所有信息,


package TestCase;import EWeb.DB.DBConnection;import Easis.Common.StringUtil;import Easis.DBUtility.DataColumn;import Easis.DBUtility.DataTable;import Easis.DBUtility.DataTableHelper;import java.sql.Connection;import java.sql.DatabaseMetaData;import java.sql.ResultSet;import Easis.DBUtility.DataRow;public class testDataBaseMetaInfo {    public static void main(String[] args){        Connection myconn= DBConnection.getConnection();        try{            DatabaseMetaData dbMeta=myconn.getMetaData();            Object ob2=dbMeta;            String procTerm= dbMeta.getProcedureTerm();            ResultSet rs= dbMeta.getProcedures(null, "dbo", "proc_paras_test");            DataTable dataTable= DataTableHelper.rs2datatable(rs);            rs.close();            ResultSet rs_columns=  dbMeta.getProcedureColumns(null,"dbo","proc_paras_test",null);            DataTable dt_columns=DataTableHelper.rs2datatable(rs_columns);            rs_columns.close();            //--将相关信息打印出来            for (DataRow dr_proc: dataTable.getRows()){                System.out.print("存储过程序号:"+dr_proc.getRowNumber()+",相关参数如下:");                for (DataColumn column1:dr_proc.getColumns()){                    System.out.println(StringUtil.Lpad(column1.getColumnName(),' ',20)+":"+column1.getString());                }            }            System.out.println("===================下面是相关存储过程的相关参数======================");            for (DataRow drow2:dt_columns.getRows()){            System.out.println("【参数序号:"+drow2.getRowNumber()+"】");                for (DataColumn col2:drow2.getColumns()){                    System.out.println(StringUtil.Lpad(col2.getColumnName(),' ',20)+":"+col2.getString());                }            }            Object ob3="";        }        catch (Exception e){            e.printStackTrace();        }    }}

【这个程序用了我一些工具类,大家是无法直接运行的,现在来看运行结果】

存储过程序号:0,相关参数如下:PROCEDURE_CAT       :JWebBasePROCEDURE_SCHEM     :dboPROCEDURE_NAME      :proc_paras_test;1NUM_INPUT_PARAMS    :-1NUM_OUTPUT_PARAMS   :-1NUM_RESULT_SETS     :-1REMARKS             :PROCEDURE_TYPE      :2===================下面是相关存储过程的相关参数======================【参数序号:0】PROCEDURE_CAT       :JWebBasePROCEDURE_SCHEM     :dboPROCEDURE_NAME      :proc_paras_test;1COLUMN_NAME         :@RETURN_VALUECOLUMN_TYPE         :5DATA_TYPE           :4TYPE_NAME           :intPRECISION           :10LENGTH              :4SCALE               :0RADIX               :10NULLABLE            :0REMARKS             :COLUMN_DEF          :SQL_DATA_TYPE       :4SQL_DATETIME_SUB    :CHAR_OCTET_LENGTH   :ORDINAL_POSITION    :0IS_NULLABLE         :NOSS_DATA_TYPE        :56【参数序号:1】PROCEDURE_CAT       :JWebBasePROCEDURE_SCHEM     :dboPROCEDURE_NAME      :proc_paras_test;1COLUMN_NAME         :@testBITINTCOLUMN_TYPE         :1DATA_TYPE           :-5TYPE_NAME           :bigintPRECISION           :19LENGTH              :8SCALE               :0RADIX               :10NULLABLE            :1REMARKS             :COLUMN_DEF          :SQL_DATA_TYPE       :-5SQL_DATETIME_SUB    :CHAR_OCTET_LENGTH   :ORDINAL_POSITION    :1IS_NULLABLE         :YESSS_DATA_TYPE        :108【参数序号:2】PROCEDURE_CAT       :JWebBasePROCEDURE_SCHEM     :dboPROCEDURE_NAME      :proc_paras_test;1COLUMN_NAME         :@testBINARYCOLUMN_TYPE         :1DATA_TYPE           :-2TYPE_NAME           :binaryPRECISION           :1LENGTH              :1SCALE               :RADIX               :NULLABLE            :1REMARKS             :COLUMN_DEF          :SQL_DATA_TYPE       :-2SQL_DATETIME_SUB    :CHAR_OCTET_LENGTH   :1ORDINAL_POSITION    :2IS_NULLABLE         :YESSS_DATA_TYPE        :37【参数序号:3】PROCEDURE_CAT       :JWebBasePROCEDURE_SCHEM     :dboPROCEDURE_NAME      :proc_paras_test;1COLUMN_NAME         :@test1BITCOLUMN_TYPE         :1DATA_TYPE           :-7TYPE_NAME           :bitPRECISION           :1LENGTH              :1SCALE               :RADIX               :NULLABLE            :1REMARKS             :COLUMN_DEF          :SQL_DATA_TYPE       :-7SQL_DATETIME_SUB    :CHAR_OCTET_LENGTH   :ORDINAL_POSITION    :3IS_NULLABLE         :YESSS_DATA_TYPE        :50【参数序号:4】PROCEDURE_CAT       :JWebBasePROCEDURE_SCHEM     :dboPROCEDURE_NAME      :proc_paras_test;1COLUMN_NAME         :@testCHARCOLUMN_TYPE         :1DATA_TYPE           :1TYPE_NAME           :charPRECISION           :1LENGTH              :1SCALE               :RADIX               :NULLABLE            :1REMARKS             :COLUMN_DEF          :SQL_DATA_TYPE       :1SQL_DATETIME_SUB    :CHAR_OCTET_LENGTH   :1ORDINAL_POSITION    :4IS_NULLABLE         :YESSS_DATA_TYPE        :39【参数序号:5】PROCEDURE_CAT       :JWebBasePROCEDURE_SCHEM     :dboPROCEDURE_NAME      :proc_paras_test;1COLUMN_NAME         :@testDATETIMECOLUMN_TYPE         :1DATA_TYPE           :93TYPE_NAME           :datetimePRECISION           :23LENGTH              :16SCALE               :3RADIX               :NULLABLE            :1REMARKS             :COLUMN_DEF          :SQL_DATA_TYPE       :9SQL_DATETIME_SUB    :3CHAR_OCTET_LENGTH   :ORDINAL_POSITION    :5IS_NULLABLE         :YESSS_DATA_TYPE        :111【参数序号:6】PROCEDURE_CAT       :JWebBasePROCEDURE_SCHEM     :dboPROCEDURE_NAME      :proc_paras_test;1COLUMN_NAME         :@testDECIMALCOLUMN_TYPE         :1DATA_TYPE           :3TYPE_NAME           :decimalPRECISION           :18LENGTH              :20SCALE               :0RADIX               :10NULLABLE            :1REMARKS             :COLUMN_DEF          :SQL_DATA_TYPE       :3SQL_DATETIME_SUB    :CHAR_OCTET_LENGTH   :ORDINAL_POSITION    :6IS_NULLABLE         :YESSS_DATA_TYPE        :106【参数序号:7】PROCEDURE_CAT       :JWebBasePROCEDURE_SCHEM     :dboPROCEDURE_NAME      :proc_paras_test;1COLUMN_NAME         :@testFLOATCOLUMN_TYPE         :1DATA_TYPE           :8TYPE_NAME           :floatPRECISION           :53LENGTH              :8SCALE               :RADIX               :2NULLABLE            :1REMARKS             :COLUMN_DEF          :SQL_DATA_TYPE       :6SQL_DATETIME_SUB    :CHAR_OCTET_LENGTH   :ORDINAL_POSITION    :7IS_NULLABLE         :YESSS_DATA_TYPE        :109【参数序号:8】PROCEDURE_CAT       :JWebBasePROCEDURE_SCHEM     :dboPROCEDURE_NAME      :proc_paras_test;1COLUMN_NAME         :@testINTCOLUMN_TYPE         :1DATA_TYPE           :4TYPE_NAME           :intPRECISION           :10LENGTH              :4SCALE               :0RADIX               :10NULLABLE            :1REMARKS             :COLUMN_DEF          :SQL_DATA_TYPE       :4SQL_DATETIME_SUB    :CHAR_OCTET_LENGTH   :ORDINAL_POSITION    :8IS_NULLABLE         :YESSS_DATA_TYPE        :38【参数序号:9】PROCEDURE_CAT       :JWebBasePROCEDURE_SCHEM     :dboPROCEDURE_NAME      :proc_paras_test;1COLUMN_NAME         :@testMONEYCOLUMN_TYPE         :1DATA_TYPE           :3TYPE_NAME           :moneyPRECISION           :19LENGTH              :21SCALE               :4RADIX               :10NULLABLE            :1REMARKS             :COLUMN_DEF          :SQL_DATA_TYPE       :3SQL_DATETIME_SUB    :CHAR_OCTET_LENGTH   :ORDINAL_POSITION    :9IS_NULLABLE         :YESSS_DATA_TYPE        :110【参数序号:10】PROCEDURE_CAT       :JWebBasePROCEDURE_SCHEM     :dboPROCEDURE_NAME      :proc_paras_test;1COLUMN_NAME         :@testNCHARCOLUMN_TYPE         :1DATA_TYPE           :-15TYPE_NAME           :ncharPRECISION           :1LENGTH              :2SCALE               :RADIX               :NULLABLE            :1REMARKS             :COLUMN_DEF          :SQL_DATA_TYPE       :-8SQL_DATETIME_SUB    :CHAR_OCTET_LENGTH   :2ORDINAL_POSITION    :10IS_NULLABLE         :YESSS_DATA_TYPE        :39【参数序号:11】PROCEDURE_CAT       :JWebBasePROCEDURE_SCHEM     :dboPROCEDURE_NAME      :proc_paras_test;1COLUMN_NAME         :@testNTEXTCOLUMN_TYPE         :1DATA_TYPE           :-16TYPE_NAME           :ntextPRECISION           :1073741823LENGTH              :2147483646SCALE               :RADIX               :NULLABLE            :1REMARKS             :COLUMN_DEF          :SQL_DATA_TYPE       :-10SQL_DATETIME_SUB    :CHAR_OCTET_LENGTH   :2147483646ORDINAL_POSITION    :11IS_NULLABLE         :YESSS_DATA_TYPE        :35【参数序号:12】PROCEDURE_CAT       :JWebBasePROCEDURE_SCHEM     :dboPROCEDURE_NAME      :proc_paras_test;1COLUMN_NAME         :@testNUMBERICCOLUMN_TYPE         :1DATA_TYPE           :2TYPE_NAME           :numericPRECISION           :18LENGTH              :20SCALE               :0RADIX               :10NULLABLE            :1REMARKS             :COLUMN_DEF          :SQL_DATA_TYPE       :2SQL_DATETIME_SUB    :CHAR_OCTET_LENGTH   :ORDINAL_POSITION    :12IS_NULLABLE         :YESSS_DATA_TYPE        :108【参数序号:13】PROCEDURE_CAT       :JWebBasePROCEDURE_SCHEM     :dboPROCEDURE_NAME      :proc_paras_test;1COLUMN_NAME         :@testNVARCHARCOLUMN_TYPE         :1DATA_TYPE           :-9TYPE_NAME           :nvarcharPRECISION           :1LENGTH              :2SCALE               :RADIX               :NULLABLE            :1REMARKS             :COLUMN_DEF          :SQL_DATA_TYPE       :-9SQL_DATETIME_SUB    :CHAR_OCTET_LENGTH   :2ORDINAL_POSITION    :13IS_NULLABLE         :YESSS_DATA_TYPE        :39【参数序号:14】PROCEDURE_CAT       :JWebBasePROCEDURE_SCHEM     :dboPROCEDURE_NAME      :proc_paras_test;1COLUMN_NAME         :@testREALCOLUMN_TYPE         :1DATA_TYPE           :7TYPE_NAME           :realPRECISION           :24LENGTH              :4SCALE               :RADIX               :2NULLABLE            :1REMARKS             :COLUMN_DEF          :SQL_DATA_TYPE       :7SQL_DATETIME_SUB    :CHAR_OCTET_LENGTH   :ORDINAL_POSITION    :14IS_NULLABLE         :YESSS_DATA_TYPE        :109【参数序号:15】PROCEDURE_CAT       :JWebBasePROCEDURE_SCHEM     :dboPROCEDURE_NAME      :proc_paras_test;1COLUMN_NAME         :@testSMALLDATETIMECOLUMN_TYPE         :1DATA_TYPE           :93TYPE_NAME           :smalldatetimePRECISION           :16LENGTH              :16SCALE               :0RADIX               :NULLABLE            :1REMARKS             :COLUMN_DEF          :SQL_DATA_TYPE       :9SQL_DATETIME_SUB    :3CHAR_OCTET_LENGTH   :ORDINAL_POSITION    :15IS_NULLABLE         :YESSS_DATA_TYPE        :111【参数序号:16】PROCEDURE_CAT       :JWebBasePROCEDURE_SCHEM     :dboPROCEDURE_NAME      :proc_paras_test;1COLUMN_NAME         :@testSMALLINTCOLUMN_TYPE         :1DATA_TYPE           :5TYPE_NAME           :smallintPRECISION           :5LENGTH              :2SCALE               :0RADIX               :10NULLABLE            :1REMARKS             :COLUMN_DEF          :SQL_DATA_TYPE       :5SQL_DATETIME_SUB    :CHAR_OCTET_LENGTH   :ORDINAL_POSITION    :16IS_NULLABLE         :YESSS_DATA_TYPE        :38【参数序号:17】PROCEDURE_CAT       :JWebBasePROCEDURE_SCHEM     :dboPROCEDURE_NAME      :proc_paras_test;1COLUMN_NAME         :@testSMALLMONEYCOLUMN_TYPE         :1DATA_TYPE           :3TYPE_NAME           :smallmoneyPRECISION           :10LENGTH              :12SCALE               :4RADIX               :10NULLABLE            :1REMARKS             :COLUMN_DEF          :SQL_DATA_TYPE       :3SQL_DATETIME_SUB    :CHAR_OCTET_LENGTH   :ORDINAL_POSITION    :17IS_NULLABLE         :YESSS_DATA_TYPE        :110【参数序号:18】PROCEDURE_CAT       :JWebBasePROCEDURE_SCHEM     :dboPROCEDURE_NAME      :proc_paras_test;1COLUMN_NAME         :@testTINYINTCOLUMN_TYPE         :1DATA_TYPE           :-6TYPE_NAME           :tinyintPRECISION           :3LENGTH              :1SCALE               :0RADIX               :10NULLABLE            :1REMARKS             :COLUMN_DEF          :SQL_DATA_TYPE       :-6SQL_DATETIME_SUB    :CHAR_OCTET_LENGTH   :ORDINAL_POSITION    :18IS_NULLABLE         :YESSS_DATA_TYPE        :38【参数序号:19】PROCEDURE_CAT       :JWebBasePROCEDURE_SCHEM     :dboPROCEDURE_NAME      :proc_paras_test;1COLUMN_NAME         :@testXMLCOLUMN_TYPE         :1DATA_TYPE           :-16TYPE_NAME           :xmlPRECISION           :1073741823LENGTH              :2147483646SCALE               :RADIX               :NULLABLE            :1REMARKS             :COLUMN_DEF          :SQL_DATA_TYPE       :-10SQL_DATETIME_SUB    :CHAR_OCTET_LENGTH   :2147483646ORDINAL_POSITION    :19IS_NULLABLE         :YESSS_DATA_TYPE        :0【参数序号:20】PROCEDURE_CAT       :JWebBasePROCEDURE_SCHEM     :dboPROCEDURE_NAME      :proc_paras_test;1COLUMN_NAME         :@testVARCHARCOLUMN_TYPE         :1DATA_TYPE           :12TYPE_NAME           :varcharPRECISION           :200LENGTH              :200SCALE               :RADIX               :NULLABLE            :1REMARKS             :COLUMN_DEF          :SQL_DATA_TYPE       :12SQL_DATETIME_SUB    :CHAR_OCTET_LENGTH   :200ORDINAL_POSITION    :20IS_NULLABLE         :YESSS_DATA_TYPE        :39【参数序号:21】PROCEDURE_CAT       :JWebBasePROCEDURE_SCHEM     :dboPROCEDURE_NAME      :proc_paras_test;1COLUMN_NAME         :@testOUTPUT_INTCOLUMN_TYPE         :2DATA_TYPE           :4TYPE_NAME           :intPRECISION           :10LENGTH              :4SCALE               :0RADIX               :10NULLABLE            :1REMARKS             :COLUMN_DEF          :SQL_DATA_TYPE       :4SQL_DATETIME_SUB    :CHAR_OCTET_LENGTH   :ORDINAL_POSITION    :21IS_NULLABLE         :YESSS_DATA_TYPE        :38【参数序号:22】PROCEDURE_CAT       :JWebBasePROCEDURE_SCHEM     :dboPROCEDURE_NAME      :proc_paras_test;1COLUMN_NAME         :@testOUTPUT_BITCOLUMN_TYPE         :2DATA_TYPE           :-7TYPE_NAME           :bitPRECISION           :1LENGTH              :1SCALE               :RADIX               :NULLABLE            :1REMARKS             :COLUMN_DEF          :SQL_DATA_TYPE       :-7SQL_DATETIME_SUB    :CHAR_OCTET_LENGTH   :ORDINAL_POSITION    :22IS_NULLABLE         :YESSS_DATA_TYPE        :50【参数序号:23】PROCEDURE_CAT       :JWebBasePROCEDURE_SCHEM     :dboPROCEDURE_NAME      :proc_paras_test;1COLUMN_NAME         :@testOUTPUT_NVARCHARCOLUMN_TYPE         :2DATA_TYPE           :-9TYPE_NAME           :nvarcharPRECISION           :200LENGTH              :400SCALE               :RADIX               :NULLABLE            :1REMARKS             :COLUMN_DEF          :SQL_DATA_TYPE       :-9SQL_DATETIME_SUB    :CHAR_OCTET_LENGTH   :400ORDINAL_POSITION    :23IS_NULLABLE         :YESSS_DATA_TYPE        :39

参数很长吧?里面很多东西用不到的,现在我们简化一下,来看看哪些地方是将来要用到的。

【改写一下方法获取简洁的结果】

package TestCase;import EWeb.DB.DBConnection;import Easis.Common.StringUtil;import Easis.DBUtility.DataColumn;import Easis.DBUtility.DataTable;import Easis.DBUtility.DataTableHelper;import java.sql.Connection;import java.sql.DatabaseMetaData;import java.sql.ResultSet;import Easis.DBUtility.DataRow;public class testDataBaseMetaInfo {    public static void main(String[] args){        Connection myconn= DBConnection.getConnection();        try{            DatabaseMetaData dbMeta=myconn.getMetaData();            Object ob2=dbMeta;            String procTerm= dbMeta.getProcedureTerm();            ResultSet rs= dbMeta.getProcedures(null, "dbo", "proc_paras_test");            DataTable dataTable= DataTableHelper.rs2datatable(rs);            rs.close();            ResultSet rs_columns=  dbMeta.getProcedureColumns(null,"dbo","proc_paras_test",null);            DataTable dt_columns=DataTableHelper.rs2datatable(rs_columns);            rs_columns.close();            //--将相关信息打印出来            for (DataRow dr_proc: dataTable.getRows()){                System.out.print("存储过程序号:"+dr_proc.getRowNumber()+",相关参数如下:");                for (DataColumn column1:dr_proc.getColumns()){                    System.out.println(StringUtil.Lpad(column1.getColumnName(),' ',20)+":"+column1.getString());                }            }            System.out.println("===================下面是相关存储过程的相关参数======================");            for (DataRow drow2:dt_columns.getRows()){            System.out.println("【参数序号:"+drow2.getRowNumber()+"】");                for (DataColumn col2:drow2.getColumns()){                    System.out.println(StringUtil.Lpad(col2.getColumnName(),' ',20)+":"+col2.getString());                }            }            System.out.println("===================存储过程简化的参数======================");            for (DataRow drow23:dt_columns.getRows()){            String str_res="参数:【"+StringUtil.Lpad(drow23.get("COLUMN_NAME").toString(),' ',25)+"】,架构:"+drow23.get("PROCEDURE_SCHEM")+","+                    "参数类型:【"+StringUtil.Lpad(drow23.get("TYPE_NAME").toString(),' ',14)                    +"】,长度:【"+StringUtil.Lpad(drow23.get("LENGTH").toString(),' ',10)+"】,"+                    "方向:【"+StringUtil.Lpad(drow23.get("COLUMN_TYPE").toString(),' ',2)+"】,"+                    "允许空:【"+StringUtil.Lpad(drow23.get("IS_NULLABLE").toString(),' ',4)+"】,"                    +"所属proc:【"+StringUtil.Lpad(drow23.get("PROCEDURE_NAME").toString(),' ',10)+"】";                System.out.println(str_res);            }            Object ob3="";        }        catch (Exception e){            e.printStackTrace();        }    }}


【运行,结果如下:(只列出需要看到的参数)】

参数:【@RETURN_VALUE            】,架构:dbo,参数类型:【int           】,长度:【4         】,方向:【5 】,允许空:【NO  】,所属proc:【proc_paras_test;1】参数:【@testBITINT              】,架构:dbo,参数类型:【bigint        】,长度:【8         】,方向:【1 】,允许空:【YES 】,所属proc:【proc_paras_test;1】参数:【@testBINARY              】,架构:dbo,参数类型:【binary        】,长度:【1         】,方向:【1 】,允许空:【YES 】,所属proc:【proc_paras_test;1】参数:【@test1BIT                】,架构:dbo,参数类型:【bit           】,长度:【1         】,方向:【1 】,允许空:【YES 】,所属proc:【proc_paras_test;1】参数:【@testCHAR                】,架构:dbo,参数类型:【char          】,长度:【1         】,方向:【1 】,允许空:【YES 】,所属proc:【proc_paras_test;1】参数:【@testDATETIME            】,架构:dbo,参数类型:【datetime      】,长度:【16        】,方向:【1 】,允许空:【YES 】,所属proc:【proc_paras_test;1】参数:【@testDECIMAL             】,架构:dbo,参数类型:【decimal       】,长度:【20        】,方向:【1 】,允许空:【YES 】,所属proc:【proc_paras_test;1】参数:【@testFLOAT               】,架构:dbo,参数类型:【float         】,长度:【8         】,方向:【1 】,允许空:【YES 】,所属proc:【proc_paras_test;1】参数:【@testINT                 】,架构:dbo,参数类型:【int           】,长度:【4         】,方向:【1 】,允许空:【YES 】,所属proc:【proc_paras_test;1】参数:【@testMONEY               】,架构:dbo,参数类型:【money         】,长度:【21        】,方向:【1 】,允许空:【YES 】,所属proc:【proc_paras_test;1】参数:【@testNCHAR               】,架构:dbo,参数类型:【nchar         】,长度:【2         】,方向:【1 】,允许空:【YES 】,所属proc:【proc_paras_test;1】参数:【@testNTEXT               】,架构:dbo,参数类型:【ntext         】,长度:【2147483646】,方向:【1 】,允许空:【YES 】,所属proc:【proc_paras_test;1】参数:【@testNUMBERIC            】,架构:dbo,参数类型:【numeric       】,长度:【20        】,方向:【1 】,允许空:【YES 】,所属proc:【proc_paras_test;1】参数:【@testNVARCHAR            】,架构:dbo,参数类型:【nvarchar      】,长度:【2         】,方向:【1 】,允许空:【YES 】,所属proc:【proc_paras_test;1】参数:【@testREAL                】,架构:dbo,参数类型:【real          】,长度:【4         】,方向:【1 】,允许空:【YES 】,所属proc:【proc_paras_test;1】参数:【@testSMALLDATETIME       】,架构:dbo,参数类型:【smalldatetime 】,长度:【16        】,方向:【1 】,允许空:【YES 】,所属proc:【proc_paras_test;1】参数:【@testSMALLINT            】,架构:dbo,参数类型:【smallint      】,长度:【2         】,方向:【1 】,允许空:【YES 】,所属proc:【proc_paras_test;1】参数:【@testSMALLMONEY          】,架构:dbo,参数类型:【smallmoney    】,长度:【12        】,方向:【1 】,允许空:【YES 】,所属proc:【proc_paras_test;1】参数:【@testTINYINT             】,架构:dbo,参数类型:【tinyint       】,长度:【1         】,方向:【1 】,允许空:【YES 】,所属proc:【proc_paras_test;1】参数:【@testXML                 】,架构:dbo,参数类型:【xml           】,长度:【2147483646】,方向:【1 】,允许空:【YES 】,所属proc:【proc_paras_test;1】参数:【@testVARCHAR             】,架构:dbo,参数类型:【varchar       】,长度:【200       】,方向:【1 】,允许空:【YES 】,所属proc:【proc_paras_test;1】参数:【@testOUTPUT_INT          】,架构:dbo,参数类型:【int           】,长度:【4         】,方向:【2 】,允许空:【YES 】,所属proc:【proc_paras_test;1】参数:【@testOUTPUT_BIT          】,架构:dbo,参数类型:【bit           】,长度:【1         】,方向:【2 】,允许空:【YES 】,所属proc:【proc_paras_test;1】参数:【@testOUTPUT_NVARCHAR     】,架构:dbo,参数类型:【nvarchar      】,长度:【400       】,方向:【2 】,允许空:【YES 】,所属proc:【proc_paras_test;1】



看到了没有?上面就是mssql的参数对照表,然后我们又要硬编码自行转换了。


原创粉丝点击