### C# 创建 SQL Server 数据库 在现代软件开发过程中,数据库操作是不可或缺的一部分。使用 C# 来管理和操作 SQL Server 数据库是一种常见的实践方式。本文将详细介绍如何利用 C# 创建 SQL Server 数据库,并通过 `CREATE TABLE` SQL 语句来完成表的创建。 #### 一、创建 SQL Server 数据库 在 C# 中创建 SQL Server 数据库,通常需要使用 ADO.NET(特别是 `SqlConnection` 和 `SqlCommand` 对象)来进行数据库连接与操作。以下是一个简单的示例,演示了如何使用 C# 和 SQL Server 创建一个新的数据库: ```csharp // 连接字符串 string connectionString = "Data Source=(local);Initial Catalog=master;Integrated Security=True"; using (SqlConnection conn = new SqlConnection(connectionString)) { if (conn.State != ConnectionState.Open) conn.Open(); string sql = "CREATE DATABASE mydb ON PRIMARY" + "(NAME = test_data, FILENAME = 'C:\\mysql\\mydb_data.mdf', SIZE = 3MB," + "MAXSIZE = 5MB, FILEGROWTH = 10%) LOG ON" + "(NAME = mydbb_log, FILENAME = 'C:\\mysql\\mydb_log.ldf', SIZE = 3MB," + "MAXSIZE = 20MB, FILEGROWTH = 10% )"; using (SqlCommand cmd = new SqlCommand(sql, conn)) { try { cmd.ExecuteNonQuery(); Console.WriteLine("Database created successfully."); } catch (SqlException ae) { Console.WriteLine("Error creating database: " + ae.Message); } } } ``` 以上代码段展示了创建一个名为 `mydb` 的新数据库的过程。在这个过程中,首先定义了一个连接字符串用于连接到 SQL Server 实例。然后通过 `SqlConnection` 建立连接,并使用 `SqlCommand` 对象执行 SQL 语句来创建数据库。需要注意的是,在创建数据库时,指定了数据文件和日志文件的名称、路径以及大小等参数。 #### 二、创建表并插入数据 创建数据库后,接下来可以创建表并插入数据。这里同样使用 `SqlCommand` 来执行 SQL 语句。下面的代码片段演示了如何创建一个包含四个字段的表 `myTable`,并在其中插入几条记录: ```csharp string sqlCreateTable = "CREATE TABLE myTable" + "(myId INTEGER CONSTRAINT PKeyMyId PRIMARY KEY," + "myName CHAR(50)," + "myAddress CHAR(255)," + "myBalance FLOAT)"; using (SqlCommand cmdCreateTable = new SqlCommand(sqlCreateTable, conn)) { try { cmdCreateTable.ExecuteNonQuery(); Console.WriteLine("Table created successfully."); // 插入数据 string sqlInsert = "INSERT INTO myTable(myId, myName, myAddress, myBalance) VALUES(@myId, @myName, @myAddress, @myBalance)"; using (SqlCommand cmdInsert = new SqlCommand(sqlInsert, conn)) { cmdInsert.Parameters.AddWithValue("@myId", 1001); cmdInsert.Parameters.AddWithValue("@myName", "Puneet Nehra"); cmdInsert.Parameters.AddWithValue("@myAddress", "A449 Sect 19, DELHI"); cmdInsert.Parameters.AddWithValue("@myBalance", 23.98); cmdInsert.ExecuteNonQuery(); // 更多插入语句... } } catch (SqlException ae) { Console.WriteLine("Error creating table or inserting data: " + ae.Message); } } ``` 在上述代码中,首先定义了一个 `CREATE TABLE` 语句来创建表 `myTable`,其中包括主键约束。接着,定义了一个 `INSERT` 语句来向该表中插入数据。这里使用了参数化查询来提高安全性并防止 SQL 注入攻击。 #### 三、总结 通过上述示例,我们可以看到如何使用 C# 和 SQL Server 创建数据库、表以及插入数据。这种方式不仅方便快捷,而且有助于确保数据的安全性和一致性。在实际应用中,可以根据具体需求调整连接字符串和 SQL 语句,以满足不同的业务场景和技术要求。
C#创建SQL Server数据库浅析
副标题:
作者:佚名 文章来源:博客园 点击数:10 更新时间:2009-9-8 16:36:17
C#语言有很多值得学习的地方,这里我们主要介绍C#创建SQL Server数据库,包括介绍通过CREATE TABLE这句SQL语句完成创建表的操作等方面。
C#创建SQL Server数据库
在创建了数据库连接对象后,我们就可以在程序中运用它了。首先,我们在程序中动态地C#创建SQL Server数据库。我们将数据库创建在C:\mysql目录下,所以读者要练习该实例的话得先在C:下创建一个名为mysql的文件夹,否则会出错!创建数据库的关键是函数中的sql对象,通过该对象我们指定了数据库文件的一些基本属性。之后,我们新创建了一个SqlCommand对象,通过该对象我们就实际完成了对数据库的操作。函数的实现如下:
private void button1_Click(object sender, System.EventArgs e) { // 打开数据库连接 if( conn.State != ConnectionState.Open) conn.Open(); string sql = "CREATE DATABASE mydb ON PRIMARY" +"(name=test_data, filename = 'C:\\mysql\\mydb_data.mdf', size=3," +"maxsize=5, filegrowth=10%)log on" +"(name=mydbb_log, filename='C:\\mysql\\mydb_log.ldf',size=3," +"maxsize=20,filegrowth=1)"; cmd = new SqlCommand(sql, conn); try { cmd.ExecuteNonQuery(); } catch(SqlException ae) { MessageBox.Show(ae.Message.ToString()); } }
创建了数据库后,我们得为其创建表,表是数据库中的基本对象。我们通过CREATE TABLE这句SQL语句完成创建表的操作,表被创建后,我们就确定了其模式(Schema)。之后,我们还通过INSERT语句向该表中添加了四条记录以为后用。函数的实现如下:
private void button2_Click(object sender, System.EventArgs e) { // 打开数据库连接 if( conn.State == ConnectionState.Open) conn.Close(); ConnectionString ="Integrated Security=SSPI;" + "Initial Catalog=mydb;" + "Data Source=localhost;"; conn.ConnectionString = ConnectionString; conn.Open(); sql = "CREATE TABLE myTable"+ "(myId INTEGER CONSTRAINT PKeyMyId PRIMARY KEY,"+ "myName CHAR(50), myAddress CHAR(255), myBalance FLOAT)"; cmd = new SqlCommand(sql, conn); try { cmd.ExecuteNonQuery(); // 向表中添加记录 sql = "INSERT INTO myTable(myId, myName, myAddress, myBalance) "+ "VALUES (1001, 'Puneet Nehra', 'A 449 Sect 19, DELHI', 23.98 ) " ; cmd = new SqlCommand(sql, conn); cmd.ExecuteNonQuery(); sql = "INSERT INTO myTable(myId, myName,myAddress, myBalance) "+ "VALUES (1002, 'Anoop Singh', 'Lodi Road, DELHI', 353.64) " ; cmd = new SqlCommand(sql, conn); cmd.ExecuteNonQuery(); sql = "INSERT INTO myTable(myId, myName, myAddress, myBalance) "+ "VALUES (1003, 'Rakesh M', 'Nag Chowk, Jabalpur M.P.', 43.43) " ; cmd = new SqlCommand(sql, conn); cmd.ExecuteNonQuery(); sql = "INSERT INTO myTable(myId, myName, myAddress, myBalance) "+ "VALUES (1004, 'Madan Kesh', '4th Street, Lane 3, DELHI', 23.00) " ; cmd = new SqlCommand(sql, conn); cmd.ExecuteNonQuery(); } catch(SqlException ae) { MessageBox.Show(ae.Message.ToString()); } }
完成此操作后,我们可以在本机的SQL Sever企业管理器中打开mydb数据库并找到该表了。以上介绍C#创建SQL Server数据库
C# SQL语句执行函数分析
副标题:
作者:佚名 文章来源:博客园 点击数:9 更新时间:2009-9-8 16:35:48
- 奋斗tree2014-06-06自己琢磨了半天,看了这个很快就懂了,谢谢啦
- hcgj00042014-01-09非常不错!!!!值得学习
- backspray2021-01-08非常垃圾,,就是网络上的文章..
- 粉丝: 0
- 资源: 1
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- (源码)基于STM32F103的正点原子战舰V3开发板系统.zip
- 基于HMMR隐马尔科夫模型的时间序列分割算法matlab仿真,包括程序,中文注释,仿真操作步骤
- (源码)基于Spring Boot和Vue的新生儿管理系统.zip
- (源码)基于Arduino的智能家居控制系统.zip
- (源码)基于数据库系统实现的聚集存储系统.zip
- (源码)基于Spring Boot和Vue的学生管理系统.zip
- (源码)基于Java Servlet的新闻发布系统.zip
- (源码)基于C#和SQL Server的高校教学管理系统.zip
- (源码)基于Spring Boot和ZooKeeper的分布式系统.zip
- (源码)基于ASP.NET的教学资料管理系统.zip