Example #1
0
        public static string DBm_sql_Insert_fkey_column(string RootTableName, Type type, Type col_type, object objValue, List<SQL_Parameter> lsqlPar, System.Data.SqlDbType dbType, bool is_output, int size, List<DBm_col_name_and_param> lPar_DBm_col_name_and_param)
        {
            string sql_DBm_Image_fkey_Insert = "";
            string tbl_name = null;
            string col_name = null;
            string Par_DBm_Image_fkey_ID = null;
            string Par_col_name = null;
            string stype = type.ToString();
            int iLast = stype.LastIndexOf('.');
            int iLen = stype.Length;
            string stype_col_name = col_type.ToString();
            int iLen_col_name = stype_col_name.Length;
            int iLen_col_name_Last = stype_col_name.LastIndexOf('.');

            if (iLast > 0)
            {
                tbl_name = RootTableName + "_" + stype.Substring(iLast + 1, iLen - iLast + 1);
            }
            else
            {
                tbl_name = RootTableName + "_" + stype;
            }

            if (iLen_col_name_Last > 0)
            {
                col_name = stype_col_name.Substring(iLen_col_name_Last + 1, iLen_col_name - iLen_col_name_Last + 1);
            }
            else
            {
                col_name = stype_col_name;
            }

            Par_col_name = "@Par_" + col_name;
            Par_DBm_Image_fkey_ID = "@Par_" + tbl_name + "_" + col_name + "_ID";

            SQL_Parameter SQL_Par = new SQL_Parameter();
            SQL_Par.dbType = dbType;
            SQL_Par.IsOutputParameter = is_output;
            SQL_Par.Name = Par_col_name;
            SQL_Par.size = size;
            SQL_Par.Value = objValue;
            lsqlPar.Add(SQL_Par);

            sql_DBm_Image_fkey_Insert += "declare " + Par_DBm_Image_fkey_ID + " bigint \r\n";
            sql_DBm_Image_fkey_Insert += "select " + Par_DBm_Image_fkey_ID + " = ID from " + tbl_name + " where " + col_name + " = " + Par_col_name + " \r\n";
            sql_DBm_Image_fkey_Insert += @"if (" + Par_DBm_Image_fkey_ID + @" is null)
                                                              begin
                                                                 insert into " + tbl_name + @"
                                                                 (
                                                                    " + col_name + @"
                                                                 )
                                                                 values
                                                                 (
                                                                    " + Par_col_name + @"
                                                                 )
                                                                 set " + Par_DBm_Image_fkey_ID + @" = SCOPE_IDENTITY()
                                                              end
                                                            ";
            DBm_col_name_and_param xDBm_col_name_and_param = new DBm_col_name_and_param(tbl_name + "_ID", Par_DBm_Image_fkey_ID);
            lPar_DBm_col_name_and_param.Add(xDBm_col_name_and_param);
            return sql_DBm_Image_fkey_Insert;
        }
Example #2
0
        public static void Add_DBm_col_name_and_param(string RootTableName, Type type, object objValue, System.Data.SqlDbType dbType, int size, List<SQL_Parameter> lsqlPar, List<DBm_col_name_and_param> lPar_DBm_col_name_and_param)
        {
            string Par_col_name = null;
            string col_name = null;
            string stype_col_name = type.ToString();
            int iLen_col_name = stype_col_name.Length;
            int iLen_col_name_Last = stype_col_name.LastIndexOf('.');
            if (iLen_col_name_Last > 0)
            {
                col_name = stype_col_name.Substring(iLen_col_name_Last + 1, iLen_col_name - iLen_col_name_Last + 1);
            }
            else
            {
                col_name = stype_col_name;
            }

            Par_col_name = "@Par_" + col_name;

            SQL_Parameter SQL_Par = new SQL_Parameter();
            SQL_Par.dbType = dbType;
            SQL_Par.IsOutputParameter = false;
            SQL_Par.Name = Par_col_name;
            SQL_Par.size = size;
            SQL_Par.Value = objValue;
            lsqlPar.Add(SQL_Par);

            DBm_col_name_and_param xDBm_col_name_and_param = new DBm_col_name_and_param(col_name, Par_col_name);
            lPar_DBm_col_name_and_param.Add(xDBm_col_name_and_param);
        }