当前位置: 首页 > 编程日记 > 正文

SqlParameter参数方式操作数据库(存储过程)

访问数据库:

View Code using System;
using System.Data;
using System.Configuration;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.SqlClient;/// <summary>
///DataBase 的摘要说明
/// </summary>
public class DataBase
{//私有变量,数据库连接protected SqlConnection Connection;protected string ConnectionString;//构造函数public DataBase(){ConnectionString = ConfigurationSettings.AppSettings["strCon"];}//保护方法,打开数据库连接private void Open(){//判断数据库是否连接if(Connection == null){//不存在,新建并打开Connection = new SqlConnection(ConnectionString);Connection.Open();}else{//存在,判断是否处于关闭状态if(Connection.State.Equals(ConnectionState.Closed))Connection.Open();//连接处于关闭状态,重新打开
        }}//公有方法,关闭数据库连接public void Close(){if (Connection.State.Equals(ConnectionState.Open)){Connection.Close();//连接处于打开状态,关闭连接
        }}//公有方法,释放资源public void Dispose(){if (Connection != null){Connection.Dispose();Connection = null;}}//私有方法,获得一个用来调用存储过程的SqlCommand//输入://      ProcName - 存储过程名//      Params   - 用来调用存储过程的参数表public SqlCommand CreatCommand(string ProcName, SqlParameter[] Prams){//打开数据库连接
        Open();//创建一个命令对象SqlCommand Cmd = new SqlCommand(ProcName, Connection);//指定命令对象的类型为存储过程Cmd.CommandType = CommandType.StoredProcedure;// 依次把参数传入命令文本if (Prams != null){foreach (SqlParameter Parameter in Prams)Cmd.Parameters.Add(Parameter);}return Cmd;}/// <summary>/// 初始化参数值/// </summary>/// <param name="ParamName">存储过程名称或命令文本</param>/// <param name="DbType">参数类型</param>/// <param name="Size">参数大小</param>/// <param name="Direction">参数方向</param>/// <param name="Value">参数值</param>/// <returns>新的 parameter 对象</returns>public SqlParameter MakeParam(string ParamName,SqlDbType DbType, Int32 Size,ParameterDirection Direction,object Value){SqlParameter Param;if(Size>0)Param = new SqlParameter(ParamName,DbType,Size);else Param = new SqlParameter(ParamName,DbType);Param.Direction = Direction;if(!(Direction == ParameterDirection.Output && Value == null))Param.Value = Value;return Param;}//公有方法,实例化一个用于调用存储过程的输入参数//输入://     ParamName - 参数名称//     DbType   -  参数类型//     Size     - 参数大小 //     Value     - 值public SqlParameter MakeInParam(string ParamName, SqlDbType DbTpye, int Size, object Value){return MakeParam(ParamName, DbTpye, Size, ParameterDirection.Input, Value);}//公有方法,调用存储过程(带参数)//输入://      ProcName - 存储过程名//      Params   - 用来调用存储过程的参数表//输出://      对Update、Insert、Delete操作返回影响到的行数,其他情况为-1public int RunProc(string ProcName, SqlParameter[] Params){int Count = -1;SqlCommand Cmd = CreatCommand(ProcName, Params);Count = Cmd.ExecuteNonQuery();Close();return Count;}//公有方法,调用存储过程(不带参数)//输入://            ProcName存储过程名//输出://            将执行结果以DataSet返回  public DataSet GetDataSet(string ProcName){Open();SqlDataAdapter da = new SqlDataAdapter(ProcName, Connection);DataSet ds = new DataSet();da.Fill(ds);Close();return ds;}//公有方法,调用存储过程(带参数)//输入://            ProcName - 存储过程名//      Params     - 存储过程需要的参数//输出://            将执行结果以SqlDataReader返回//注意:使用后主意调用SqlDataReader.Close()方法public SqlDataReader RunProcGetReader(string ProcName, SqlParameter[] Params){SqlCommand Cmd = CreatCommand(ProcName, Params);return Cmd.ExecuteReader(System.Data.CommandBehavior.CloseConnection);}
}

实体类以及增删改查方法:

View Code using System;
using System.Data;
using System.Configuration;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.SqlClient;/// <summary>
///Users 的摘要说明
/// </summary>
public class Users
{#region 私有成员private string _userID;private string _userPwd;private string _userName;#endregion 私有成员#region 属性public string UserID{set{this._userID = value;}get{return this._userID;}}public string UserPwd{set{this._userPwd = value;}get{return this._userPwd;}}public string UserName{set{this._userName = value;}get{return this._userName;}}#endregion 属性#region 方法//向Users表中添加用户信息(采用存储过程)//输出://      插入成功:返回True;//      插入失败:返回False;public bool InsertByProc(){SqlParameter[] Params = new SqlParameter[3];DataBase mydb = new DataBase();//用户编号Params[0] = mydb.MakeInParam("@UserID", SqlDbType.VarChar, 50, UserID);//用户姓名Params[1] = mydb.MakeInParam("@UserName", SqlDbType.VarChar, 50, UserName);//用户密码Params[2] = mydb.MakeInParam("@UserPwd", SqlDbType.VarChar, 64, UserPwd); int Count = -1;Count = mydb.RunProc("Proc_UsersAdd", Params);if (Count > 0)return true;else return false;}//更新用户//输入://      XUserID - 用户编号;//输出://      更新成功:返回True;//      更新失败:返回False;public bool UpdateByProc(string XUserID){SqlParameter[] Params = new SqlParameter[2];DataBase mydb = new DataBase();Params[0] = mydb.MakeInParam("@UserID", SqlDbType.VarChar, 50, XUserID);               //用户编号           Params[1] = mydb.MakeInParam("@UserName", SqlDbType.VarChar, 50, UserName);int Count = -1;Count = mydb.RunProc("Proc_UsersModify", Params);if (Count > 0)return true;else return false;//用户姓名 
    }//删除用户//输入://      XUserID - 用户编号;//输出://      删除成功:返回True;//      删除失败:返回False;public bool DeleteByProc(string XUserID){//定义参数类型SqlParameter[] Params = new SqlParameter[1];DataBase mydb = new DataBase();//用户编号Params[0] = mydb.MakeInParam("@UserID", SqlDbType.VarChar, 50, XUserID);                         int Count = -1;Count = mydb.RunProc("Proc_UsersDelete", Params);if (Count > 0)return true;else return false;}//查询用户//查询所用用户//不需要参数public DataSet QueryUsers(){DataBase mydb = new DataBase();return mydb.GetDataSet("Proc_UsersList");}//根据UserID判断该用户是否存在//输入://      XUserID - 用户编号;        //输出://      用户存在:返回True;//      用户不在:返回False;public bool CheckUser(string XUserID){SqlParameter[] Params = new SqlParameter[1];DataBase DB = new DataBase();Params[0] = DB.MakeInParam("@UserID", SqlDbType.VarChar, 50, XUserID);                    SqlDataReader DR = DB.RunProcGetReader("Proc_UsersDetail", Params);if (!DR.Read()){return false;}else{return true;}}#endregion 方法
}

前台页面设计:

View Code <%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server"><title>无标题页</title><script type="text/javascript"></script><style type="text/css">.style1{font-size: small;}</style>
</head>
<body><form id="form1" runat="server"><div><table border="0" cellpadding="0" cellspacing="0" height="100%" width="100%"><tr><td style="height:4px;" colspan="2"></td></tr><tr><td  style="width: 4px;  background: url(../Images/line.gif) repeat-y;"> </td>   <td  valign="top" align="left" width="960px"><h4>&gt;&gt;用户管理</h4><asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" AllowPaging="True" OnPageIndexChanging="GridView1_PageIndexChanging" PageSize="8" OnRowCancelingEdit="GridView1_RowCancelingEdit"  OnRowDeleting="GridView1_RowDeleting" OnRowEditing="GridView1_RowEditing" OnRowUpdating="GridView1_RowUpdating" DataKeyNames="UserID" Font-Size="13px" Width="58%" SkinID="gvSkin" CellPadding="4" ForeColor="#333333" GridLines="None"><FooterStyle BackColor="#990000" Font-Bold="True" ForeColor="White" /><RowStyle BackColor="#FFFBD6" ForeColor="#333333" /><Columns>    <asp:TemplateField><ItemTemplate><asp:CheckBox ID="chkSelected" runat="server" Checked="False" Visible="True" /></ItemTemplate></asp:TemplateField><asp:TemplateField HeaderText="ID"><ItemTemplate><%# Container.DataItemIndex+1 %></ItemTemplate></asp:TemplateField>                                        <asp:TemplateField HeaderText="编号">                           <ItemTemplate><asp:Label ID="Label1" runat="server" Text='<%# Eval("ID") %>'></asp:Label></ItemTemplate></asp:TemplateField><asp:TemplateField HeaderText="姓名"><EditItemTemplate><asp:TextBox ID="tbxName" Width="70px" runat="server" Text='<%# Eval("userName") %>'></asp:TextBox></EditItemTemplate><ItemTemplate><asp:Label ID="Label2" runat="server"><%# Eval("userName") %></asp:Label></ItemTemplate></asp:TemplateField><asp:CommandField ShowEditButton="True" HeaderText="编辑" /><asp:CommandField ShowDeleteButton="True" HeaderText="删除" /></Columns><PagerStyle BackColor="#FFCC66" ForeColor="#333333" HorizontalAlign="Center" /><SelectedRowStyle BackColor="#FFCC66" Font-Bold="True" ForeColor="Navy" /><HeaderStyle BackColor="#990000" Font-Bold="True" ForeColor="White" /><AlternatingRowStyle BackColor="White" /></asp:GridView><asp:Label ID="LabelPageInfo" runat="server" style="font-size: small"></asp:Label><br /><asp:CheckBox ID="chkSelectAll" runat="server" AutoPostBack="true" Text="全选" Width="54px" OnCheckedChanged="chkSelectAll_CheckedChanged" style="font-size: small" />&nbsp;<asp:ImageButton ID="ImageButtonDelete" runat="server" ImageUrl="~/Images/删除}.gif" OnClick="ImageButtonDelete_Click"></asp:ImageButton><br /></td></tr><tr><td  style="width: 4px;  background: url(../Images/line.gif) repeat-y;"> &nbsp;</td>   <td  valign="top" align="left" width="960px"><table cellpadding="0" cellspacing="0" border="1"  bordercolor="#cccccc" style="border-collapse:collapse; width: 44%;" frame="below"><tr><td bgcolor="#f6dda4" style="text-align:right;width:100%;" colspan="2"><div class="title" align="left"><h4>添加用户</h4></div></td></tr><tr><td bgcolor="#f6dda4" style="text-align:right;"><span class="style1">编号</span>:</td><td ><div align="left"><asp:TextBox id="txtUserID"  runat="server" MaxLength="20"></asp:TextBox></div></td></tr><tr><td bgcolor="#f6dda4" style="text-align:right;"><span class="style1">姓名</span>:</td><td ><div align="left"><asp:TextBox id="txtUserName" runat="server" MaxLength="20"></asp:TextBox></div></td></tr><tr><td bgcolor="#f6dda4" style="text-align:right;"><span class="style1">密码</span>:</td><td ><div align="left"><asp:TextBox id="txtUserPwd"  runat="server" MaxLength="20" TextMode="Password" Width="128px"></asp:TextBox></div></td></tr><tr><td>&nbsp;</td><td valign="top" >&nbsp;<asp:ImageButton ID="imgBtnSave" runat="server" ImageUrl="~/Images/Save.GIF" OnClick="imgBtnSave_Click" />&nbsp; &nbsp; <asp:ImageButton ID="imgBtnReturn" runat="server" CausesValidation="false" ImageUrl="~/Images/Return.GIF" οnclick="imgBtnReturn_Click" /><asp:Label ID="lblMessage" runat="server" ForeColor=red></asp:Label>&nbsp; &nbsp; &nbsp;</td></tr></table></td></tr></table>  </div></form>
</body>
</html>

后台代码:

View Code using System;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.SqlClient;public partial class _Default : System.Web.UI.Page 
{protected void Page_Load(object sender, EventArgs e){if (!IsPostBack){GridViewBind();}}public void GridViewBind(){//创建Users类对象userUsers user = new Users();//使用使用Users类QueryUsers方法查询所有用户信息DataSet myds = user.QueryUsers();//为GridView控件指定数据源GridView1.DataSource = myds;//设置控件的主键字段值GridView1.DataKeyNames = new string[] { "ID" };//从数据库中绑定数据
        GridView1.DataBind();LabelPageInfo.Text = "你所在的位置:当前(第" + (GridView1.PageIndex + 1).ToString() + "页 共" + GridView1.PageCount.ToString() + "页)";}//GridView控件RowDeleting事件protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e){//取出要删除记录的主键值string userID = GridView1.DataKeys[e.RowIndex].Values[0].ToString();//创建Users类的对象userUsers user = new Users();//根据主键使用DeleteByProc方法删除用户if (user.DeleteByProc(userID)){Response.Write("<script>alert('删除成功!');location='Default.aspx'</script>");   }else{Response.Write("<script>alert('删除失败!');location='Default.aspx'</script>");}GridViewBind();//重新绑定数据
    }protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e){//GridView编辑项索引等于单击行的索引GridView1.EditIndex = e.NewEditIndex;GridViewBind();}//GridView控件RowUpdating事件protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e){//取出记录的主键值string userID = GridView1.DataKeys[e.RowIndex].Values[0].ToString();//创建Users类对象userUsers user = new Users();user.UserName = ((TextBox)GridView1.Rows[e.RowIndex].FindControl("tbxName")).Text;//使用Users类UpdateByProc方法修改用户信息,该方法中主要是调用Proc_UsersAdd存储过程if (user.UpdateByProc(userID)){//绑定数据库中数据
            GridViewBind();//修改成功给予提示Response.Write("<script>alert('修改成功!');location='Default.aspx'</script>");}else{Response.Write("<script>alert('修改失败!');location='Default.aspx'</script>");}//取消编辑状态GridView1.EditIndex = -1;//重新绑定下数据
        GridViewBind();}protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e){GridView1.EditIndex = -1;GridViewBind();}protected void ImageButtonDelete_Click(object sender, ImageClickEventArgs e){for (int i = 0; i < this.GridView1.Rows.Count-1; i++){bool isChecked = ((CheckBox)GridView1.Rows[i].FindControl("chkSelected")).Checked;if (isChecked){string userID = ((Label)GridView1.Rows[i].FindControl("Label1")).Text;//创建Users类对象userUsers user = new Users();//根据主键使用DeleteByProc方法删除用户if (user.DeleteByProc(userID)){Response.Write("<script language=javascript>alert('删除成功!');location='Default.aspx'</script>");}else{Response.Write("<script language=javascript>alert('" + userID + "删除失败!');location='Default.aspx'</script>");}}}GridViewBind();}protected void chkSelectAll_CheckedChanged(object sender, EventArgs e){for (int i = 0; i < GridView1.Rows.Count; i++){((CheckBox)GridView1.Rows[i].FindControl("chkSelected")).Checked = this.chkSelectAll.Checked;}}protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e){GridView1.PageIndex = e.NewPageIndex;GridViewBind();}protected void imgBtnSave_Click(object sender, ImageClickEventArgs e){if (Page.IsValid){Users user = new Users();user.UserID = txtUserID.Text.Trim();if (!user.CheckUser(user.UserID)){user.UserName = txtUserName.Text;string PwdMD5 = System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(txtUserPwd.Text.Trim(), "MD5").ToString();user.UserPwd = PwdMD5;if (user.InsertByProc()){lblMessage.Text = "成功插入该用户信息!";Server.Transfer("Default.aspx");}else{lblMessage.Text = "添加用户失败!";}}else{lblMessage.Text = "数据库中存在具有该编号的用户,请重新输入!";}}}protected void imgBtnReturn_Click(object sender, ImageClickEventArgs e){Server.Transfer("Default.aspx");  }
}

存储过程:

View Code CREATE PROCEDURE [dbo].[Proc_UsersAdd](@UserID         [varchar](50), @UserName         [varchar](50),@UserPwd         [varchar](64))
AS INSERT INTO [db2].[dbo].[tb_user] (ID, [userName],[userPwd]) 
VALUES ( @UserID,     @UserName,@UserPwd)CREATE PROCEDURE [dbo].[Proc_UsersDelete](@UserID        [varchar](50))
AS DELETE [db2].[dbo].[tb_user] 
WHERE ( [ID]     = @UserID)CREATE PROCEDURE [dbo].[Proc_UsersList]
AS SELECT      [db2].[dbo].[tb_user].[ID],         [db2].[dbo].[tb_user].[userName]                            FROM          [db2].[dbo].[tb_user]ALTER PROCEDURE [dbo].[Proc_UsersModify](@UserID         [varchar](50),     @UserName                  [varchar](50))        
AS UPDATE [db2].[dbo].[tb_user] SET          [userName]    = @UserNameWHERE ( [ID]     = @UserID)

转载于:https://www.cnblogs.com/652769324qq/archive/2013/03/19/2968820.html

相关文章:

视频编解码之理论概述 和即时通信

前言 即时通讯应用中的实时音视频技术&#xff0c;几乎是IM开发中的最后一道高墙。原因在于&#xff1a;实时音视频技术 音视频处理技术 网络传输技术 的横向技术应用集合体&#xff0c;而公共互联网不是为了实时通信设计的。有关实时音视频开发时的技术难题请参见《音视频云…

图论:关于二分图的总结(转载)

二分图是这样一个图&#xff0c;它的顶点可以分类两个集合X和Y&#xff0c;所有的边关联在两个顶点中&#xff0c;恰好一个属于集合&#xff38;&#xff0c;另一个属于集合&#xff39;。 最大匹配&#xff1a;图中包含边数最多的匹配称为图的最大匹配。 完美匹配&#xff1a;…

动态加载的html没有js效果,JS利用html5实现loadding动态加载效果代码实例

51前端window.οnlοadfunction(){var Loading function (canvas, options) {this.canvas document.getElementById(canvas);this.options options;};Loading.prototype{constructor: Loading,show: function(){var canvas this.canvas,begin this.options.begin,old thi…

iOS 自动布局框架 – Masonry 详解

来源&#xff1a;伯乐在线 - 刘小壮 如有好文章投稿&#xff0c;请点击 → 这里了解详情 如需转载&#xff0c;发送「转载」二字查看说明 目前iOS开发中大多数页面都已经开始使用Interface Builder的方式进行UI开发了&#xff0c;但是在一些变化比较复杂的页面&#xff0c;还是…

GDC2016 Epic Games【Bullet Train】 新风格的VR-FPS的制作方法

追求“舒适”和“快感”的VR游戏设计方法http://game.watch.impress.co.jp/docs/news/20160318_749016.html【Bullet Train】演讲的状况在游戏的创造历史上&#xff0c;有那种决定性的创新&#xff0c;以及高完成度的作品&#xff0c;对于FPS风格来说&#xff0c;【DOOM】就是这…

例4-1和例4-2和例4-3

public class ComputerCircleArea{ public static void main(String args[]){ double radius; double area; radius163.16; area3.14*radius*radius; System.out.printf("半径是%5.3f的圆的面积:\n%5.3f\n",radius,area); }} class Circle{ double radius; doubl…

html中的两种标记,如何在html选项标记中实现两种不同的对齐?

下面是一个单空间js解决方案,与scott everden的jquery示例一起使用。我只在firefox中测试过,但这应该足够开始了。javascriptvar MIN_SPACES_BETWEEN_VALS 3;function mkOption(left, right, total){var str left;var spaces total - left.length - right.length;for(x 0;x…

html标签(2)--有序列表与无序列表

有一些内容形式&#xff0c;用div来实现非常麻烦&#xff0c;也不适合 例如一些表格形式 无序列表 ul 代表列表 li 代表列表中的项 list-style 控制列表的样式 有序列表 ol 代表列表 li 代表列表中的项 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN…

Swift3实现的绘制股票K线库, FastImageCache提升图片的加载和渲染速度,Chameleon颜色框架

代码1:用Swift3实现的绘制股票K线库 for iOS & macOS代码地址&#xff1a;网页链接代码2:FastImageCache是Path团队开发的一个开源库&#xff0c;用于提升图片的加载和渲染速度&#xff0c;让基于图片的列表滑动起来更顺畅。代码地址&#xff1a;网页链接代码3&#xff1a;…

传智播客还收费 兄弟会都是免费的

【传智播客还收费 兄弟会都是免费的 兄弟连兄弟会it开发培训 www.itxdh.net 企鹅群&#xff1a;499956522 高端人才培养就到【兄弟连兄弟会it开发培训】纯免费的高端IT人才培养】 传智播客&#xff0c;一个多么具有戏剧性的词眼&#xff0c;以前张孝祥老师建校的初衷就是为了让…

用计算机的英语造句process,process的用法总结大全

process的意思n. 过程,工序,做事方法,工艺流程vt. 加工,处理,审阅,审核vi. 列队行进adj. 经过特殊加工(或处理)的变形&#xff1a;过去式: processed&#xff1b; 现在分词&#xff1a;processing&#xff1b; 过去分词&#xff1a;processed&#xff1b;process用法process可以…

iOS进阶之页面性能优化

作者: hi_xgb 地址: http://www.jianshu.com/p/1b5cbf155b31 前言 在软件开发领域里经常能听到这样一句话&#xff0c;“过早的优化是万恶之源”&#xff0c;不要过早优化或者过度优化。我认为在编码过程中时刻注意性能影响是有必要的&#xff0c;但凡事都有个度&#xff0c;不…

LabelMe图像数据集下载

Download MATLAB Toolbox for the LabelMe Image Database 利用Matlab Toolbox工具箱下载图像库 一、下载Matlab Toolbox工具箱 1. Github repository We maintain the latest version of the toolbox on github. To pull the latest version, make sure that "git" …

win8计算机管理没有用户组,Win8右键计算机管理提示“该文件没有与之关联的程序”怎么办?...

最近有Win8用户反映&#xff0c;右键计算机管理的时候&#xff0c;出现提示“该文件没有与之关联的程序来执行该操作”&#xff0c;这让用户非常苦恼。那么&#xff0c;Win8右键计算机管理提示“该文件没有与之关联的程序”怎么办呢&#xff1f;下面&#xff0c;我们就一起往下…

Objective-C 自动生成文档工具:appledoc

来源&#xff1a;iOS_小松哥 www.jianshu.com/p/fd4d8d6b6177 如有好文章投稿&#xff0c;请点击 → 这里了解详情 由于最近琐事比较多&#xff0c;所以好久没有写文章了。今天我们聊一聊Objective-C自动生成文档。 做项目的人多了&#xff0c;就需要文档了。手工写文档是一件…

linux命令--提升

查看系统进程&#xff1a;top 查看磁盘空间&#xff1a; df -h 查询系统负载: uptime , 以下显示输入uptime的信息&#xff1a; 04:03:58 up 10 days, 13:19, 1 user, load average: 0.54, 0.40, 0.20 1.当前时间 04:03:58 2.系统已运行的时间 10 days, 13:19 3.前在线用户…

git 从远程主服务器当中创建新分支

现有版本; h20, h28&#xff0c;h26,i8 h28&#xff0c;h26,i8是从H20下面创建的。 需求: 从H28下面创建新分支继续开发。 思路&#xff1a; 所有代码均是放置到H20上仓库当中&#xff0c;首先下载H20完整仓库&#xff0c;也就是.git文件夹当中内容&#xff0c;其本质是一个ZIP…

涉密计算机用户账号设置审批表,北京邮电大学涉密计算机配置审批表.PDF

北京邮电大学涉密计算机配置审批表北京邮电大学涉密计算机配置审批表使用部门 品牌型号涉密计算机类型 ?台式机 ?便携机 资产编号用途 ?科研 ?办公 ?其他 配置日期硬盘序列号中央处理器硬盘容量CPU基本配置 内 存显示器品牌型号MAC 地址操作系统版本 操作系统安装时间放置…

Oracle 正则表达式

ORACLE中的支持正则表达式的函数主要有下面四个&#xff1a;1&#xff0c;REGEXP_LIKE &#xff1a;与LIKE的功能相似2&#xff0c;REGEXP_INSTR &#xff1a;与INSTR的功能相似3&#xff0c;REGEXP_SUBSTR &#xff1a;与SUBSTR的功能相似4&#xff0c;REGEXP_REPLACE &#x…

制作 Swift 和 Objective-C Mixed 的 Pod

来源&#xff1a;南栀倾寒 www.jianshu.com/p/c7623c31d77b 如有好文章投稿&#xff0c;请点击 → 这里了解详情 知识背景 What is CocoaPods&#xff08;https://guides.cocoapods.org/using/getting-started.html&#xff09; What did CocoaPods do&#xff1f;&#x…

SearchRequestBuilder常用方法说明

SearchRequestBuilder常用方法说明 (1) setIndices(String... indices)&#xff1a;上文中描述过&#xff0c;参数可为一个或多个字符串&#xff0c;表示要进行检索的index&#xff1b;(2) setTypes(String... types)&#xff1a;参数可为一个或多个字符串&#xff0c;表示要进…

计算机知识课后反思,计算机硬件和软件知识课后反思

计算机硬件和软件知识课后反思《计算机系统组成》—计算机硬件和软件知识一课是七年级信息技术中《信息技术基础》里的知识。在学习这之前&#xff0c;学生虽然都使用过计算机&#xff0c;但对于计算机的系统组成、主机内的硬件知识基本知之甚少。但是对这些知识学生又充满了好…

iOS超全开源框架、项目和学习资料汇总:UI篇

2017-01-30 iOS巍 CocoaChina原文 上下拉刷新控件 1. MJRefresh --仅需一行代码就可以为UITableView或者CollectionView加上下拉刷新或者上拉刷新功能。可以自定义上下拉刷新的文字说明。&#xff08;推荐&#xff09; 2. SVPullToRefresh --下拉刷新控件4500star&#xff0c;…

NYOJ 90 —— 求正整数n划分为若干个正整数的划分个数

整数划分 时间限制&#xff1a;3000 ms | 内存限制&#xff1a;65535 KB描述将正整数n表示成一系列正整数之和&#xff1a;nn1n2…nk&#xff0c; 其中n1≥n2≥…≥nk≥1&#xff0c;k≥1。 正整数n的这种表示称为正整数n的划分。求正整数n的不 同划分个数。 例如正整数6有如…

调整命令行的列数和行数 mode con: cols=100 lines=10000

mode con: cols100 lines10000转载于:https://www.cnblogs.com/passer1991/archive/2013/03/25/2980285.html

写一个 iOS 复杂表单的正确姿势

前言 这几天项目的新需求中有个复杂的表单界面&#xff0c;在做的过程中发现要比想象中复杂很多&#xff0c;有好多问题需要处理。有很多东西值得写下来好好梳理下。 需求分析&#xff1a; 6创建网店1.png上图便是UI根据需求给的高保真&#xff0c; 我们先根据这张图片来描述一…

2014计算机三级网络技术,2014计算机三级网络技术综合题解题思路

2014计算机三级网络技术综合题解题思路,全部自码第一小题 IP地址的计算公式正常IP地址计算&#xff1a;已知IP地址&#xff1b;子网掩码&#xff1b;地址类别&#xff1a;A类地址&#xff1a;1—126(00)B类地址&#xff1a;128—191(10)C类地址&#xff1a;192—223(110) D类地…

word 生成HTML

View Code 1 string wordPath Server.MapPath("/Fileword/" FileUpload1.FileName); 2 string htmlPath Server.MapPath("/Fileword/测试.html");3 //上传word文件4 FileUpload1.SaveAs(wordP…

CCF系列之画图(201409-2)

试题编号&#xff1a; 201409-2试题名称&#xff1a; 画图时间限制&#xff1a; 1.0s内存限制&#xff1a; 256.0MB问题描述&#xff1a; 问题描述在一个定义了直角坐标系的纸上&#xff0c;画一个(x1,y1)到(x2,y2)的矩形指将横坐标范围从x1到x2&#xff0c;纵坐标范围从y1到y2…

大连理工计算机专业导师,大连理工大学计算机科学与技术学院研究生导师简介-申彦明...

大连理工大学计算机科学与技术学院研究生导师简介-申彦明大连理工大学 免费考研网/2016-05-04申彦明院系&#xff1a;计算机科学与技术学院办公电话&#xff1a;无电子信箱&#xff1a;shendlut.edu.cn更新时间&#xff1a;2014-4-4其他专业&#xff1a;计算机系统结构个人简介…