C#建表,读表——SQL Server

一、建库+建表

VS创建一个控制台应用程序:
(1)、设立连接对象
(2)、定义SQL语句
(3)、打印状态

一开始,建库和建表我是分开来做的:

,用的是昨天的建好的那个。
在这里插入图片描述
,那么就现在建。

具体代码如下:

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

namespace SQLdemo1
{
    class Program
    {
        static void Main(string[] args)
        {
            //打开数据库连接
            SqlConnection conn = new SqlConnection("server=.;database=TF_DB1;uid=sa;pwd=1234567");
            //判断数据库状态
            if (conn.State != ConnectionState.Open)
            {
                conn.Open();
            }
            //定义SQL语句
            string sql = "create table student" + "(num varchar(50),name varchar(255),age int)";
            SqlCommand cmd = new SqlCommand(sql, conn);
            try
            {
                cmd.ExecuteNonQuery();
                Console.WriteLine("数据表创建成功。");
            }
            catch (SqlException ae)
            {
                Console.WriteLine("数据表创建失败。" + ae.Message.ToString());
            }
            finally
            {
                conn.Close();//对数据库操作完成后,需要关闭数据库,释放内存
            }
            Console.ReadKey();
        }
    }
}

结果如下:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
后来,我思考了一下,建库和建表能不能在一段代码内完成,于是就有了下面这一段代码:
(也不知道对不对,望各位指正)

具体代码如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data;//添加引用
using System.Data.SqlClient;

namespace SQLdemo3
{
    class Program
    {
        static void Main(string[] args)
        {
            //打开数据库连接
            SqlConnection conn = new SqlConnection("server=.;database=;uid=sa;pwd=123456789jn");
            //判断数据库状态
            if (conn.State != ConnectionState.Open)
            {
                conn.Open();
            }
            //定义SQL语句
            string sql = null;
            sql = "create database persons ";
            SqlCommand cmd = new SqlCommand(sql, conn);
            try
            {
                cmd.ExecuteNonQuery();
                Console.WriteLine("数据库创建成功。");

                string sqlMessage = null;
                sqlMessage = "use persons " + "create table information_demo" + "(id_num varchar(50), name varchar(255), age int, address varchar(255), year int)";
                SqlCommand Scmd = new SqlCommand(sqlMessage, conn);
                try
                {
                    Scmd.ExecuteNonQuery();
                    Console.WriteLine("数据表创建成功。");                   
                }
                catch (SqlException ae)
                {
                    Console.WriteLine("数据表创建失败。" + ae.Message.ToString());
                }
            }
            catch (SqlException ae)
            {
                Console.WriteLine("数据库创建失败。" + ae.Message.ToString());              
            }
            finally
            {
                conn.Close();//对数据库操作完成后,需要关闭数据库,释放内存
            }
            Console.ReadKey();
        }
    }
}

创建结果如下:
在这里插入图片描述
SQL server中的结果:
在这里插入图片描述
在这里插入图片描述
虽然不知道对不对,但能建成,说明没有大问题。

二、插入数据+读表

插入数据

插入数据用的是:INSERT INTO 表名称 VALUES (值1, 值2,…)

代码如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data;//添加引用
using System.Data.SqlClient;

namespace SQLdemo3
{
    class Program
    {
        static void Main(string[] args)
        {
            //打开数据库连接
            SqlConnection conn = new SqlConnection("server=127.0.0.1;database=persons;uid=sa;pwd=123456789jn");
            //判断数据库状态
            if (conn.State != ConnectionState.Open)
            {
                conn.Open();
            }
            string sql = "insert into information_demo values"
                + " ('001','张三',23,'上海',3),"
                + "('002', '李四', 25, '南京', 3),"
                + "('003', '王五', 22, '北京', 3),"
                + "('004', '马六', 26, '杭州', 3)";
            SqlCommand cmd = new SqlCommand(sql, conn);
            try
            {
                cmd.ExecuteNonQuery();
                Console.WriteLine("数据表更新成功");
            }
            catch (SqlException ae)
            {
                Console.WriteLine("数据表更新失败。" + ae.Message.ToString());
            }
            finally
            {
                conn.Close();//对数据库操作完成后,需要关闭数据库,释放内存
            }
            Console.ReadKey();
        }
    }
}

结果如下:
在这里插入图片描述
SQL server结果如下:
在这里插入图片描述
读取数据

读表用的是:SELECT * FROM 表名称

代码如下:

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

namespace SQLdemo2
{
    class Program
    {
        static void Main(string[] args)
        {
            string sql = "server=.;database=persons;uid=sa;pwd=123456789jn";
            SqlConnection conn = new SqlConnection(sql);
            try
            {
                conn.Open();
            }
            catch (Exception ex)
            {
                Console.WriteLine("链接错误:" + ex.Message);
            }
            string sqlMessage = null;
            sqlMessage = "select * from information_demo";
            SqlCommand sCmd = new SqlCommand(sqlMessage, conn);

            SqlDataReader sdr = null;
            try
            {
                sdr = sCmd.ExecuteReader();

                Console.WriteLine("编号   姓名  年龄  地址  工龄");
                while (sdr.Read())
                {
                    Console.WriteLine(sdr["id_num"] + "    " + sdr["name"] + "   " + sdr["age"] + "   " + sdr["address"] + "   " + sdr["year"]);
                }
                conn.Close();
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
            Console.ReadKey();
        }
    }
}

结果如下:
在这里插入图片描述
over

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值