C#数据库开发

3 篇文章 0 订阅
C#数据库开发之SQL Server 2005

在当今信息高速的时代  信息就是money  信息数据的处理就显得尤为重要了  所以希望能给你一点帮助

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SqlClient;
using System.Data;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            SqlConnection sqlConn = new SqlConnection();
            try
            {
                sqlConn.ConnectionString = "Data Source=.\\SQLEXPRESS; AttachDbFilename = D:\\student.mdf; Integrated Security = True;Connect Timeout=30;User Instance=True";
                sqlConn.Open();
                Console.WriteLine("连接成功");
                //插入一条数据
                SqlCommand sqlCmd = new SqlCommand();
                sqlCmd.Connection = sqlConn;
                sqlCmd.CommandText = "insert into student values('0006', '孙西', '女', 20, '英语')";
                sqlCmd.ExecuteNonQuery();


                //读出所有数据
                string queryString = "Select * from student ";
                SqlCommand sqlCommand = new SqlCommand(queryString, sqlConn);
                SqlDataReader read = sqlCommand.ExecuteReader();
                while (read.Read())
                {
                    Console.WriteLine(read["number"] + " " + read["name"] + " " + read["sex"] + " " + read["age"] + "    " + read["special"]);
                }
                read.Close();

                //单值查询
                string queryString1 = "Select * from student where number = '";
                Console.Write("请输入要查询的学号:");
                string searchNumberValue1 = System.Console.ReadLine();
                queryString1 += searchNumberValue1 + "'";
                SqlCommand sqlCommand1 = new SqlCommand(queryString1, sqlConn);
                SqlDataReader read1 = sqlCommand1.ExecuteReader();
                while (read1.Read())
                {
                    Console.WriteLine(read1["number"] + " " + read1["name"] + " " + read1["sex"] + " " + read1["age"] + " " + read1["special"]);
                }
                read1.Close();

                //删除一条数据
                string queryString2 = "Delete student where number = '";
                Console.Write("请输入要删除的学号:");
                string searchNumberValue2 = System.Console.ReadLine();
                queryString2 += searchNumberValue2 + "'";
                SqlCommand sqlCommand2 = new SqlCommand(queryString2, sqlConn);
                sqlCommand2.ExecuteNonQuery();
                Console.WriteLine("成功删除学号为:" + searchNumberValue2 + "的数据");

                //数据更新

                string operateString = "Update student set age =@age where number =@number";
                Console.Write("请输入要更新年龄的学号:");
                string searchNumberValue3 = System.Console.ReadLine();
                SqlParameter paramNumber = new SqlParameter("@number", SqlDbType.NChar);
                paramNumber.Value = searchNumberValue3;

                Console.Write("请输入要更新的年龄:");
                string searchAgeValue3 = System.Console.ReadLine();
                SqlParameter paramAge = new SqlParameter("@age", SqlDbType.Int);
                paramAge.Value = Convert.ToInt16(searchAgeValue3);

                SqlCommand sqlCommand3 = new SqlCommand(operateString, sqlConn);
                sqlCommand3.Parameters.Add(paramNumber);
                sqlCommand3.Parameters.Add(paramAge);
                
                sqlCommand3.ExecuteNonQuery();
                Console.WriteLine("更新操作成功");
            }
            catch (Exception ex)
            {
                Console.WriteLine("连接失败!");
                Console.WriteLine("错误为:" + ex.Message);
            }
            finally
            {
                sqlConn.Close();
                Console.WriteLine("连接已关闭!");
            }
        }
    }
}


运行结果

由于是截图时自己没有注意  截的是两个不同的运行图  所以你看到的0007数据没有被删除掉  上面的代码没有问题  如果你自己拷贝去运行  注意每次运行把插入的数据变动一下(设了主键  不能插入重复的数据)


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值