完整修改和删除:
当你输入了要删除的用户名,先提示有没有此条数据

先查

后删/后改
------------

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SqlClient; namespace 完整删除_修改_攻击防攻击
{
class Program
{
static void Main(string[] args)
{
Console.Write("请输入要删除的用户名:");
string name = Console.ReadLine(); SqlConnection conn = new SqlConnection("server=.;database=Data1128;user=sa;pwd=123");
SqlCommand com = conn.CreateCommand();
com.CommandText = "select *from Users where usename='"+name+"'"; conn.Open();
SqlDataReader dr=com.ExecuteReader();
if (dr.HasRows)//如果查到此用户信息
{
Console.Write("是否删除该用户:(Y/N)");//如果有此条信息,那么需要进行删除判断
string n = Console.ReadLine();//记录用户的操作
if (n.ToUpper() == "Y")//判断用户操作,如果是Y,说明要删除
{
conn.Close();
//下面的代码是真正删除此条数据
com.CommandText="delete from Users where usename='"+name+"'"; int i = ;
try
{
conn.Open();
i = com.ExecuteNonQuery();
}
catch
{
Console.WriteLine("连接服务器失败!!");
}
finally
{
conn.Close();
}
if (i > )//判断是否删除成功
{
Console.WriteLine("删除成功!");
com.CommandText = "select *from Users";//查询所有用户信息
conn.Open();
SqlDataReader dr1 = com.ExecuteReader();
if (dr1.HasRows)//判断是否有用户信息
{
while (dr1.Read())//判断是否有下一行,若有直接打印
{
Console.WriteLine(dr1["code"] + "\t" + dr1["usename"] + "\t" + dr1["password"] + "\t" + dr1["nick"] + "\t" + (Convert.ToBoolean(dr1["sex"]) ? "男" : "女") + "\t" + dr1["nation"] + "\t" + dr1["class"] + "\t" + (Convert.ToDateTime(dr1["birthday"]).ToShortDateString()));
}
}
else//无用户信息
{
Console.WriteLine("无数据!!");
}
conn.Close();
}
else
{
Console.WriteLine("删除失败!");
}
}
else//用户选择不删除
{
Console.WriteLine("删除操作取消!!");
}
}
else//未查到用户信息
{
Console.WriteLine("用户名输入错误!!");
} conn.Close();
Console.ReadLine(); }
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SqlClient; namespace update
{
class Program
{
static void Main(string[] args)
{
bool has = false;//设置一中间变量判断用输入的数据是否存在,true表示存在,false不存在 Console.Write("请输入要修改的用户名:");
string name = Console.ReadLine(); SqlConnection conn = new SqlConnection("server=.;database=Data1128;user=sa;pwd=123");
SqlCommand com = conn.CreateCommand();
com.CommandText = "select *from Users where usename='"+name+"'"; conn.Open();
SqlDataReader dr = com.ExecuteReader();
if (dr.HasRows)//如果查到此用户信息
{
has = true;//将中间变量更改为true,证明有此条信息
if(dr.Read())//输出修改前要修改的用户的信息
{
Console.WriteLine(dr["code"]+"\t"+dr["usename"]+"\t"+dr["password"]+"\t"+dr["nick"]+"\t"+(Convert.ToBoolean(dr["sex"])?"男":"女")+"\t"+dr["nation"]+"\t"+dr["class"]+"\t"+(Convert.ToDateTime(dr["birthday"]).ToShortDateString()));
}
}
conn.Close();
if (has)
{
Console.Write("已查到此用户信息,是否要修改?(Y/N)");
string mm = Console.ReadLine(); //记录用户的操作
if (mm.ToUpper() == "Y")//判断用户操作,如果是Y,说明要修改
{
Console.Write("请输入要修改的密码:");
string pwd = Console.ReadLine();
Console.Write("请输入要修改的昵称:");
string nick = Console.ReadLine();
Console.Write("请输入要修改的性别:");
string sex = Console.ReadLine();
Console.Write("请输入要修改的生日:");
string bir = Console.ReadLine();
Console.Write("请输入要修改的民族:");
string nation = Console.ReadLine();
Console.Write("请输入要修改的班级:");
string cla = Console.ReadLine();
//防攻击
com.CommandText = "update Users set PASSWORD=@pwd,nick=@nick,sex=@sex,nation=@nation,class=@cla,birthday=@bir where usename=@name";
com.Parameters.Clear();
com.Parameters.AddWithValue("@pwd", pwd);
com.Parameters.AddWithValue("@nick", nick);
com.Parameters.AddWithValue("@sex", sex);
com.Parameters.AddWithValue("@nation", nation);
com.Parameters.AddWithValue("@cla", cla);
com.Parameters.AddWithValue("@name", name);
com.Parameters.AddWithValue("@bir", bir); int i = ;
try
{
conn.Open();
i = com.ExecuteNonQuery();
}
catch(Exception ex)
{
Console.WriteLine("未连接到服务器!\n"+ex);
}
finally
{
conn.Close();
}
if (i > )
{
Console.WriteLine("修改成功!");
com.CommandText = "select code,usename,password,nick,sex,(select nationname from Nation where nationcode=Users.nation) as 民族,(select classname from Class where classcode=Users.class) as 班级,birthday from Users where usename='" + name + "'";
conn.Open();
SqlDataReader dr1 = com.ExecuteReader();
if(dr1.HasRows)
{
while (dr1.Read())//输出修改后用户的信息
{
Console.WriteLine(dr1["code"] + "\t" + dr1["usename"] + "\t" + dr1["password"] + "\t" + dr1["nick"] + "\t" + (Convert.ToBoolean(dr1["sex"]) ? "男" : "女") + "\t" + dr1["民族"] + "\t" + dr1["班级"] + "\t" + (Convert.ToDateTime(dr1["birthday"]).ToShortDateString()));
}
}
conn.Close();
}
else
{
Console.WriteLine("修改失败!!");
}
}
else//用户选择不修改
{
Console.WriteLine("取消修改!");
}
}
else//未查到用户信息,判断has=false
{
Console.WriteLine("无此用户!!");
}
Console.ReadLine(); }
}
}

ado.net 完整修改删除,攻击防攻击的更多相关文章

  1. ADO.NET(完整修改和查询、实体类,数据访问类)

    一.完整修改和查询 在编写c#语句时需考虑到用户体验,例如在编写修改语句时,需要考虑到输入的内容在数据库中是否能够找到. 中间变量运用. 1.先查 2.执行操作 完整修改语句: bool has = ...

  2. ADO.NET 完整修改、删除、防字符串攻击

    首先,我先把昨天所做的人事管理系统进行了优化,将其完善成为了一个更符合实际的系统.将修改及删除数据的数据库操作前面添加了一个查询语句,这样,在实际操作时,如果数据库中没有该条数据,则程序不会执行接下来 ...

  3. SQL与C#结合完整修改 删除信息

    --SQl中--建立ren的数据库,插入一条信息 create database ren go use ren go create table xinxi ( code ) primary key,- ...

  4. ADO.NET 完整的修改和删除

    namespace 完整修改{ class Program { static void Main(string[] args) { bool has = false; Console.Write(&q ...

  5. php防攻击方法

    php防攻击方法   更多答案 请参考 @如何有效防止XSS攻击/AJAX跨域攻击 我说下防止非法用户的一些常用手段吧 1 前端的js验证: 我认为js验证只是一种用户体验的提升,对普通用户群体的简单 ...

  6. Node.JS实战36:写一个WAF中间件!防黑客,防攻击

    如果用Node.JS做Web服务,很多时候是会选择Express的. 本文,将展示如何如何实现一个WAF中间件. WAF有什么用? WAF即Web Application Firewall,Web应用 ...

  7. PHP禁止同一IP频繁访问以防止网站被防攻击或采集的代码

    PHP禁止同一IP频繁访问以防止网站被防攻击或采集的代码 <?php /* *通过禁止IP频繁访问防止网站被防攻击代码*design by www.scutephp.com*/header('C ...

  8. boot+Xss防攻击的处理方案

    以下是boot+Xss防攻击的(解决处理JSON入参)处理方案,第二个亲测有效 https://www.jianshu.com/p/3e4b00b8ff3ahttps://www.jianshu.co ...

  9. php防攻击

    客户端脚本植入 XSS跨站脚本攻击(跨站脚本攻击,输入(传入)自动执行恶意的HTML代码,如盗取用户Cookie.破坏页面结构.重定向到其它网站):过滤<,>&,"等特殊 ...

随机推荐

  1. HDU 5919 Sequence II 主席树

    Sequence II Problem Description   Mr. Frog has an integer sequence of length n, which can be denoted ...

  2. 【SQL Server】数据库是单个用户的 无法顺利进行操作 怎么解决

    1.打开数据库 2.新建查询 ,输入以下的SQL 语句 DECLARE @SQL VARCHAR(MAX); SET @SQL='' SELECT @SQL=@SQL+'; KILL '+RTRIM( ...

  3. 制作caffe中的test.txt和val.txt

    find -name *.jpeg |cut -d '/' -f2-3> train.txt(图片在当前文件夹) find train/dog -name *.JPEG |cut -d '/' ...

  4. jQuery方法注意事项

    1.关于选择器中含有特殊符号 选择器中含有".","#","(","]"等特殊字符,根据W3C的规定,属性值中是不能含有 ...

  5. POJ 1635 树的最小表示法/HASH

    题目链接:http://poj.org/problem?id=1635 题意:给定两个由01组成的串,0代表远离根,1代表接近根.相当于每个串对应一个有根的树.然后让你判断2个串构成的树是否是同构的. ...

  6. iOS10 UI教程视图的边界与视图的框架

    iOS10 UI教程视图的边界与视图的框架 iOS10 UI视图的边界 在视图的几何形状中我们提到了视图属性中的一部分属性可以将定义的视图绘制在屏幕上.其中典型的3个属性为边界属性.框架属性以及中心位 ...

  7. dubbox编译

    dubbox编译要在命令行 切记切记 设置JAVA_HOME 设置maven路径 命令编译dubbox 设置M2_HOME环境变量 设置idea M2_HOME dubbox 服务端 http://w ...

  8. Delphi中Messagedlg用法

    if MessageDlg('Welcome to my Delphi application. Exit now?', mtConfirmation, [mbYes, mbNo], 0) = mrY ...

  9. js获取浏览器地址

    <script type="text/javascript"> window.onload = function(){ var txt=""; va ...

  10. spring mvc 通过配置xml访问控制器的三种方式

    (一)通过 name 来一一映射(默认) (二)通过简单url 来指定映射,key 表示访问url value 是bean的ID (三)通过控制类的类名控制器,访问时类名首字母需要小写 <!-- ...