發布時間:2020-08-07 05:14 作者:獨孤劍 閱讀:1858
C# 操作SQL Server數據庫, ExecuteNonQuery()方法執行T-SQL語句, UPDATE, 更新數據
--ExecuteNonQuery()
對連接執行 Transact-SQL 語句并返回受影響的行數,如果SQL語句是對數據庫的記錄進行操作(如記錄的增加、刪除和更新),那么方法將返回操作所影響的記錄條數。
--ExecuteScalar()
執行查詢,并返回查詢所返回的結果集中第一行的第一列。 忽略其他列或行。該方法所返回的結果為object類型,在使用之前必須強制轉換為所需的類型。
--ExecuteReader()
將 CommandText 發送到 Connection,并生成 SqlDataReader。DataReader對象提供了游標形式的讀取方式,當從結果行中讀取了一行,則游標會繼續讀取到下一行。通過read方法可以判斷數據是否還有下一行,如果存在數據,則繼續運行返回true,如果沒有數據,則返回false。
創建SQL Server數據庫、數據表:
USE master; GO --創建數據庫 IF NOT EXISTS(SELECT * FROM dbo.sysdatabases WHERE [name]='TestDB') CREATE DATABASE TestDB; GO --使用數據庫 USE TestDB; GO --創建用戶表 IF EXISTS(SELECT * FROM sysobjects WHERE [name]='Users') DROP TABLE [Users] GO CREATE TABLE [Users]( [Id] [int] IDENTITY(1,1),--主鍵 [Name] [nvarchar](50) NOT NULL,--姓名 [Sex] [nvarchar](10),--性別 PRIMARY KEY([Name]) ); GO INSERT INTO [Users]([Name],[Sex]) VALUES ('Alice','Female'); INSERT INTO [Users]([Name],[Sex]) VALUES ('Amy','Female'); INSERT INTO [Users]([Name],[Sex]) VALUES ('Bruce','Male');
using System; using System.Data.SqlClient; namespace SqlServerDemo { class Program { static void Main(string[] args) { string connectionString = "Data Source=127.0.0.1,1433;Initial Catalog=TestDB;uid=sa;pwd=123456"; string sqlstring = "UPDATE [Users] SET [Sex]='Male' WHERE [Name]='Alice';"; using (SqlConnection conn = new SqlConnection(connectionString)) { using (SqlCommand cmd = new SqlCommand()) { conn.Open(); cmd.Connection = conn; cmd.CommandText = sqlstring; cmd.CommandType = System.Data.CommandType.Text; try { // 返回受影響的行數, 執行INSERT語句, 返回創建條目數 // 執行UPDATE語句, 返回更新條目數 // 執行DELETE語句, 返回刪除條目數 int val = cmd.ExecuteNonQuery(); Console.WriteLine(val); } catch { throw; } } } Console.Read(); } } }
微信打賞, 微信掃一掃
支付寶打賞, 支付寶掃一掃
如果文章對您有幫助,歡迎給作者打賞