C#自动创建数据库实现代码

要实现C#自动创建数据库的代码,可以采用ADO.NET的方式来实现。以下是实现步骤:

1. 引入命名空间和依赖库

首先,在代码文件中引入命名空间和依赖库

using System.Data.SqlClient;

2. 创建数据库连接

使用SqlConnection类创建数据库连接对象,然后使用连接字符串指定连接的数据库和身份认证信息。

string connStr = "Data Source=yourServerName;Initial Catalog=yourDataBase;Integrated Security=True";
SqlConnection conn = new SqlConnection(connStr);

其中,yourServerName是数据库服务器名称,yourDataBase是要连接的数据库名称。

3. 创建数据库

可以使用SqlCommand类的ExecuteNonQuery()方法来执行创建数据库的SQL语句。在本例中,我们将使用SQL Server中的CREATE DATABASE语句。

string dbName = "myTestDB";
string createDBSql = "CREATE DATABASE " + dbName;
SqlCommand cmd = new SqlCommand(createDBSql, conn);
conn.Open();
cmd.ExecuteNonQuery();
conn.Close();

其中,myTestDB是要创建的数据库名称,createDBSql是SQL语句字符串。

4. 创建表

在创建了数据库之后,我们可以继续使用SqlCommand类的ExecuteNonQuery()方法来执行创建表的SQL语句。在本例中,我们将使用SQL Server中的CREATE TABLE语句。

string createTableSql = "CREATE TABLE myTable (ID int, Name varchar(50))";
SqlCommand cmd = new SqlCommand(createTableSql, conn);
conn.Open();
cmd.ExecuteNonQuery();
conn.Close();

其中,myTable是要创建的表名,IDName是表的两个字段名。

示例

下面给出一个完整的示例代码,该代码会自动创建一个名为myTestDB的数据库和一个名为myTable的表,并插入一条数据。

using System;
using System.Data.SqlClient;

namespace Test
{
    class Program
    {
        static void Main(string[] args)
        {
            string connStr = "Data Source=yourServerName;Initial Catalog=yourDataBase;Integrated Security=True";
            string dbName = "myTestDB";
            string createDBSql = "CREATE DATABASE " + dbName;
            string createTableSql = "CREATE TABLE myTable (ID int, Name varchar(50))";
            string insertSql = "INSERT INTO myTable (ID, Name) VALUES (1, 'test')";

            SqlConnection conn = new SqlConnection(connStr);
            SqlCommand cmd = new SqlCommand(createDBSql, conn);

            try
            {
                conn.Open();
                cmd.ExecuteNonQuery();
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
            finally
            {
                conn.Close();
            }

            connStr = connStr + ";Initial Catalog=" + dbName;
            conn = new SqlConnection(connStr);
            cmd = new SqlCommand(createTableSql, conn);

            try
            {
                conn.Open();
                cmd.ExecuteNonQuery();
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
            finally
            {
                conn.Close();
            }

            cmd = new SqlCommand(insertSql, conn);

            try
            {
                conn.Open();
                cmd.ExecuteNonQuery();
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
            finally
            {
                conn.Close();
            }
        }
    }
}

另外,你可以将上述代码封装成一个静态方法,让其更易于重复使用。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C#自动创建数据库实现代码 - Python技术站

(0)
上一篇 2023年5月22日
下一篇 2023年5月22日

相关文章

  • C++实现strcpy函数实例

    C++实现strcpy函数实例 什么是strcpy函数 strcpy是C/C++中非常常用的字符串复制函数,用于将一个字符串复制到另一个字符串中。其函数原型如下: char* strcpy(char* dest, const char* src); 其中,dest是目标字符串指针,src是源字符串指针。 实现strcpy函数的步骤 计算源字符串的长度n 申请…

    C 2023年5月23日
    00
  • VC++实现程序开机启动运行的方法

    请注意以下几个步骤来实现在Windows系统中使用VC++实现程序开机启动运行的方法: 第一步:创建注册表项 在Windows系统中,可以通过注册表来实现程序开机启动运行的功能。因此,第一步我们需要创建一个注册表项来设置开机启动。 在VC++中,可以使用RegCreateKeyEx函数来创建注册表项。以下是一个示例代码: HKEY hKey; LPCTSTR…

    C 2023年5月23日
    00
  • C 标准库 stdarg.h

    C 标准库 stdarg.h 是用于支持变参函数(Variadic functions)的头文件。它提供了实现此类函数的机制,能够让函数在编写时不需要定义参数的数量和类型。 1. va_arg va_arg 函数用于获取变参函数中指定类型的参数,每次获取一个参数,需要传入该参数类型的 Type,该函数会返回指定类型的值,并通过进一步操作来获取下一个参数值。 …

    C 2023年5月10日
    00
  • C/C++高精度运算(大整数运算)详细讲解

    C/C++高精度运算(大整数运算)详细讲解 简介 在进行高精度运算时,我们需要使用到很大的整数进行计算,如:1000的阶乘,1到1000的和等。而C/C++默认的整型数据类型一般只能存储到2^32-1或2^64-1这样的范围,需要我们使用数组或链表等结构来存储这类大数。本篇文章将详细介绍如何使用C/C++实现大整数和高精度运算。 实现方式 在C/C++中,大…

    C 2023年5月22日
    00
  • Json格式详解

    Json格式详解 什么是Json? JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于阅读和编写,并易于机器解析和生成。它基于JavaScript语言的一个子集。JSON采用键值对的方式来描述信息,通过大括号{}包围对象,通过方括号[]包围数组。 Json格式规则 数据在名称/值对中 数据由逗号分隔 大括号{}包…

    C 2023年5月23日
    00
  • C#简单快速的json组件fastJSON使用介绍

    C#简单快速的json组件fastJSON使用介绍 简介 fastJSON是一个快速、小巧且易于使用的JSON序列化和反序列化库,与JSON.NET等流行的JSON库相比,在一些简单的场景下,fastJSON可以提供更高的性能。fastJSON支持将任何.NET对象序列化为JSON字符串,同时还支持将JSON字符串反序列化为.NET对象。 安装 使用NuGe…

    C 2023年5月23日
    00
  • 详解C/C++如何获取路径下所有文件及其子目录的文件名

    获取一个文件夹下的所有文件及其子目录的文件名可以通过递归遍历文件夹来完成。以下是几个示例代码,演示如何实现这个功能。 方法一:使用C++17中的std::filesystem 基于C++17标准,可以使用std::filesystem库来遍历目录。下面是示例代码: #include <iostream> #include <filesyst…

    C 2023年5月23日
    00
  • Swift进阶教程Mirror反射示例详解

    下面是“Swift进阶教程Mirror反射示例详解”的完整攻略。 简介 本文主要介绍在Swift语言中如何使用Mirror反射来查看和修改一个类的属性。其中包括对Mirror得到的信息的解读以及如何通过Mirror来修改属性值。本文适合对Swift有一定基础的开发者。 Mirror反射 Mirror是Swift中一种用于在运行时获取任意类型的结构、类、枚举以…

    C 2023年5月23日
    00
合作推广
合作推广
分享本页
返回顶部