zoukankan      html  css  js  c++  java
  • Ado.Net 数据库增删改查(联合版)

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Data.SqlClient;
    
    namespace 增删改查综合练习
    {
        class Program
        {
            /*
             * 需求:
             * 1、用户输入代号,查询一条数据
             * 2、输出提示:1删除 2修改 3添加
             *    输入1:删除这条数据
             *    输入2:让用户输入修改的其他值,输入完成修改这条数据
             *    输入3:让用户输入所有的列,保存到数据
             */
    
            /// <summary>
            /// 民族名称转换名族代号
            /// </summary>
            /// <param name="nationName">民族名称</param>
            /// <returns>民族代号</returns>
            public static string NationToCode(string nationName)
            {
                SqlConnection conn = new SqlConnection("server=.; database=mydb; user=sa; pwd=ray; ");
                SqlCommand cmd = conn.CreateCommand();
                cmd.CommandText = "select *from Nation where Name=@nationName";
                cmd.Parameters.Clear();
                cmd.Parameters.AddWithValue("@nationName",nationName);
                conn.Open();
                SqlDataReader dr = cmd.ExecuteReader();
                string nationCode = "n001";
                if (dr.HasRows)
                {
                    dr.Read();
                    nationCode = Convert.ToString(dr[0]);
                }
                conn.Close();
                return nationCode; 
            }
    
    
            /// <summary>
            /// 民族代号转换成名称
            /// </summary>
            /// <param name="nationCode">民族代号</param>
            /// <returns>民族名称</returns>
            public static string CodeToNation(string nationCode)
            {
                string nation = "汉族";
                SqlConnection conn = new SqlConnection("server=.; database=mydb; user=sa; pwd=ray; ");
                SqlCommand cmd = conn.CreateCommand();
                cmd.CommandText = "select *from Nation where Code=@nationCode";
                cmd.Parameters.Clear();
                cmd.Parameters.AddWithValue("@nationCode",nationCode);
                conn.Open();
                SqlDataReader dr = cmd.ExecuteReader();
                if (dr.HasRows)
                {
                    dr.Read();
                    nation = Convert.ToString(dr[1]);
                }
                conn.Close();
                return nation;
            } 
    
            static void Main(string[] args)
            {
                while (true)
                {
                    //1、用户输入代号,查询数据
                    Console.WriteLine("请输入要查询的编号:");
                    string code = Console.ReadLine();
                    SqlConnection conn = new SqlConnection("server=.; database=mydb; user=sa; pwd=ray; ");
                    SqlCommand cmd = conn.CreateCommand();
                    cmd.CommandText = "select *from Info where Code=@code";
                    cmd.Parameters.Clear();
                    cmd.Parameters.AddWithValue("@code", code);
                    conn.Open();
                    SqlDataReader dr = cmd.ExecuteReader();
                    if (dr.HasRows)
                    {
                        while (dr.Read())
                        {
                            string gender = Convert.ToString(dr["Sex"]) == "True" ? "" : "";
                            int age = DateTime.Now.Year - Convert.ToDateTime(dr["Birthday"]).Year;
                            string birthday = Convert.ToDateTime(dr["Birthday"]).ToString("yyyy年MM月dd日");
                            Console.WriteLine
                    (
    "查询数据为: " + dr["Code"] + " " + dr["Name"] + " "
                      + gender + " " + CodeToNation(Convert.ToString(dr["Nation"]))
                      + " " + birthday+" "+age+""); } //2、用户输入操作 1删除 2修改 3添加 while (true) { Console.WriteLine("请输入要执行的操作:1删除 2修改 3添加"); string n = Console.ReadLine(); #region 1、删除 if (n == "1") { cmd.CommandText = "delete from Info where Code=@code"; cmd.Parameters.Clear(); cmd.Parameters.AddWithValue("@code",code); dr.Close(); int delete=cmd.ExecuteNonQuery(); if (delete > 0) { Console.WriteLine("删除成功,按任意键刷新数据"); Console.ReadKey(); Console.Clear(); //刷新数据 Console.WriteLine("=================刷新数据================="); cmd.CommandText = "select *from Info"; SqlDataReader dr1 = cmd.ExecuteReader(); if (dr1.HasRows) { while (dr1.Read()) { string genderSC = Convert.ToString(dr1["Sex"]) == "True" ? "" : ""; int age = DateTime.Now.Year - Convert.ToDateTime(dr1["Birthday"]).Year; string birthday = Convert.ToDateTime(dr1["Birthday"]).ToString("yyyy年MM月dd日"); Console.WriteLine ("编号:{0} 姓名:{1} 性别:{2} 民族:{3} 生日:{4} 年龄:{5}岁" ,dr1["Code"],dr1["Name"], genderSC,CodeToNation(Convert.ToString(dr1["Nation"])),birthday,age); } } else { Console.WriteLine("刷新失败"); } } else { Console.WriteLine("删除失败"); } break; } #endregion #region 2、修改 if (n == "2") { Console.WriteLine("请输入要修改的姓名:"); string nameXG = Console.ReadLine(); Console.WriteLine("请输入要修改的性别:"); bool genderXG = Convert.ToBoolean(Console.ReadLine()=="" ? true:false); Console.WriteLine("请输入要修改的民族:"); string nationXG = Console.ReadLine(); Console.WriteLine("请输入要修改的生日:"); string birthdayXG = Console.ReadLine(); cmd.CommandText = "update Info set Name=@name,Sex=@gender,Nation=@nationCode,Birthday=@birthday where Code=@code"; cmd.Parameters.Clear(); cmd.Parameters.AddWithValue("@code",code); cmd.Parameters.AddWithValue("@name",nameXG); cmd.Parameters.AddWithValue("@gender",genderXG); cmd.Parameters.AddWithValue("@nationCode",NationToCode(nationXG)); cmd.Parameters.AddWithValue("@birthday",birthdayXG); dr.Close(); int nXG=cmd.ExecuteNonQuery(); if (nXG > 0) { Console.WriteLine("修改成功,按任意键刷新数据"); Console.ReadKey(); Console.Clear(); //刷新数据 Console.WriteLine("=================刷新数据===================="); cmd.CommandText = "select *from Info"; SqlDataReader dr1 = cmd.ExecuteReader(); if (dr1.HasRows) { while (dr1.Read()) { string gender = Convert.ToString(dr1["Sex"]) == "true" ? "" : ""; int age = DateTime.Now.Year - Convert.ToDateTime(dr1["Birthday"]).Year; string birthday = Convert.ToDateTime(dr1["Birthday"]).ToString("yyyy年MM月dd日"); Console.WriteLine (" 编号:{0} 姓名:{1} 性别:{2} 民族:{3} 生日:{4} 年龄:{5}岁" , dr1["Code"], dr1["Name"], genderXG, CodeToNation(Convert.ToString(dr1["Nation"])), birthday, age); Console.WriteLine(); } } else { Console.WriteLine("刷新失败"); } } else { Console.WriteLine("修改失败"); } break; } #endregion #region 3、添加 if (n == "3") { Console.WriteLine("请输入要添加的编号:"); string codeTJ = Console.ReadLine(); Console.WriteLine("请输入要添加的姓名:"); string nameTJ = Console.ReadLine(); Console.WriteLine("请输入要添加的性别:"); bool genderTJ = Convert.ToBoolean(Console.ReadLine()==""?true:false); Console.WriteLine("请输入要添加的民族:"); string nationTJ = Console.ReadLine(); Console.WriteLine("请输入要添加的生日:"); DateTime birthdayTJ = Convert.ToDateTime(Console.ReadLine()); cmd.CommandText = "insert into Info values(@codeTJ,@nameTJ,@genderTJ,@nationTJ,@birthdayTJ)"; cmd.Parameters.Clear(); cmd.Parameters.AddWithValue("@codeTJ", codeTJ); cmd.Parameters.AddWithValue("@nameTJ", nameTJ); cmd.Parameters.AddWithValue("@genderTJ", genderTJ); cmd.Parameters.AddWithValue("@nationTJ", NationToCode(nationTJ)); cmd.Parameters.AddWithValue("@birthdayTJ", birthdayTJ); dr.Close(); int nTJ=cmd.ExecuteNonQuery(); if (nTJ > 0) { Console.WriteLine("添加成功,按任意键刷新数据"); Console.ReadKey(); Console.Clear(); //刷新数据 Console.WriteLine("==========================刷新数据========================"); cmd.CommandText = "select *from Info"; SqlDataReader dr1 = cmd.ExecuteReader(); if (dr1.HasRows) { while (dr1.Read()) { string gender = Convert.ToString(dr1["Sex"]) == "true" ? "" :"" ; int age = DateTime.Now.Year - Convert.ToDateTime(dr1["Birthday"]).Year; string birthday = Convert.ToDateTime(dr1["Birthday"]).ToString("yyyy年MM月dd日"); Console.WriteLine (" 编号:{0} 姓名:{1} 性别:{2} 民族:{3} 生日:{4} 年龄:{5}岁" , dr1["Code"], dr1["Name"], genderTJ, CodeToNation(Convert.ToString(dr1["Nation"])), birthday, age); Console.WriteLine(); } } else { Console.WriteLine("刷新失败"); } } else { Console.WriteLine("添加失败"); } break; } #endregion else { Console.WriteLine("输入错误"); } } break; } else { Console.WriteLine("编号输入不正确"); } conn.Close(); } Console.ReadKey(); } } }

  • 相关阅读:
    为什么不要在Spring的配置里,配置上XSD的版本号
    使用GIT管理UE4代码
    C++ 编程错误记录
    Maven 命令及其他备忘
    Windows API 之 CreateToolhelp32Snapshot
    Windows API 之 ReadProcessMemory
    Windows API 之 OpenProcessToken、GetTokenInformation
    利用未文档化API:RtlAdjustPrivilege 提权实现自动关机
    WindowsAPI 之 CreatePipe、CreateProcess
    错误: error C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. 的处理方法
  • 原文地址:https://www.cnblogs.com/xiao55/p/5604854.html
Copyright © 2011-2022 走看看