用于SqlServer数据库的SqlServerHelper.cs类,及其调用例子
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Configuration;using System.Data;using System.Data.SqlClient;namespace demo{ public abstract class SqlServerHelper { public static string ConnStr
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Configuration; using System.Data; using System.Data.SqlClient; namespace demo { public abstract class SqlServerHelper { public static string ConnString = string.Empty; public static string Conn_Config_Str_Name = string.Empty; public static string Conn_Server = string.Empty; public static string Conn_DBName = string.Empty; public static string Conn_Uid = string.Empty; public static string Conn_Pwd = string.Empty; private static string _ConnString { get { if (!string.IsNullOrEmpty(ConnString)) return ConnString; object oConn = ConfigurationManager.ConnectionStrings[Conn_Config_Str_Name]; if (oConn != null && oConn.ToString() != "") return oConn.ToString(); return string.Format(@"server={0};database={1};uid={2};password={3}", Conn_Server, Conn_DBName, Conn_Uid, Conn_Pwd); } } // 测试连接 public static bool TestConn() { SqlConnection myConn = null; bool bResult = false; try { myConn = new SqlConnection(_ConnString); myConn.Open(); } catch (Exception ex) { } finally { if (myConn != null && myConn.State.ToString() == "Open") bResult = true; } myConn.Close(); return bResult; } // 取datatable public static DataTable GetDataTable(out string sError, string sSQL) { DataTable dt = null; sError = string.Empty; try { SqlConnection conn = new SqlConnection(_ConnString); SqlCommand comm = new SqlCommand(); comm.Connection = conn; comm.CommandText = sSQL; SqlDataAdapter dapter = new SqlDataAdapter(comm); dt = new DataTable(); dapter.Fill(dt); } catch (Exception ex) { sError = ex.Message; } return dt; } // 取dataset public static DataSet GetDataSet(out string sError, string sSQL) { DataSet ds = null; sError = string.Empty; try { SqlConnection conn = new SqlConnection(_ConnString); SqlCommand comm = new SqlCommand(); comm.Connection = conn; comm.CommandText = sSQL; SqlDataAdapter dapter = new SqlDataAdapter(comm); ds = new DataSet(); dapter.Fill(ds); } catch (Exception ex) { sError = ex.Message; } return ds; } // 取某个单一的元素 public static object GetSingle(out string sError, string sSQL) { DataTable dt = GetDataTable(out sError, sSQL); if (dt != null && dt.Rows.Count > 0) { return dt.Rows[0][0]; } return null; } // 取最大的ID public static Int32 GetMaxID(out string sError, string sKeyField, string sTableName) { DataTable dt = GetDataTable(out sError, "select isnull(max([" + sKeyField + "]),0) as MaxID from [" + sTableName + "]"); if (dt != null && dt.Rows.Count > 0) { return Convert.ToInt32(dt.Rows[0][0].ToString()); } return 0; } // 执行 insert,update,delete 动作,也可以使用事务 public static bool UpdateData(out string sError, string sSQL, bool bUseTransaction = false) { int iResult = 0; sError = string.Empty; if (!bUseTransaction) { try { SqlConnection conn = new SqlConnection(_ConnString); if (conn.State != ConnectionState.Open) conn.Open(); SqlCommand comm = new SqlCommand(); comm.Connection = conn; comm.CommandText = sSQL; iResult = comm.ExecuteNonQuery(); } catch (Exception ex) { sError = ex.Message; iResult = -1; } } else // 使用事务 { SqlTransaction trans = null; try { SqlConnection conn = new SqlConnection(_ConnString); if (conn.State != ConnectionState.Open) conn.Open(); trans = conn.BeginTransaction(); SqlCommand cmd = new SqlCommand(); cmd.Connection = conn; cmd.CommandText = sSQL; cmd.Transaction = trans; iResult = cmd.ExecuteNonQuery(); trans.Commit(); } catch (Exception ex) { sError = ex.Message; iResult = -1; trans.Rollback(); } } return iResult > 0; } } }
调用方法:
一,先设置数据库连接的信息
//SqlServerHelper.ConnString = @"server=电脑名 或 电脑IP;database=数据库名;uid=数据库登录名;password=数据库登录密码";
SqlServerHelper.Conn_Config_Str_Name = @"ConnString"; // ConnString的信息在 App.Config里设置 //SqlServerHelper.Conn_Server = @"电脑名 或 电脑IP"; //SqlServerHelper.Conn_DBName = "数据库名"; //SqlServerHelper.Conn_Uid = "数据库登录名"; //SqlServerHelper.Conn_Pwd = "数据库登录密码";
二, App.Config
三, 读取 datatable / dataset 数据
private void InitGrid() {
string sSQL = "select * from test";
string sError = string.Empty;
DataTable dt = SqlServerHelper.GetDataTable(out sError, sSQL);
//DataSet dt = SqlServerHelper.GetDataSet(out sError, sSQL);
dataGridView1.DataSource = dt;
if (!string.IsNullOrEmpty(sError)) Common.DisplayMsg(this.Text, sError);
}
四,插入,修改,删除 数据 (都调用SqlServerHelper.UpdateData方法)
// 插入
string sError = string.Empty; int iMaxID = SqlServerHelper.GetMaxID(out sError, "id", "test") + 1; string sSql = "insert into test select " + iMaxID + ",'name" + iMaxID + "','remark" + iMaxID + "'"; sError = string.Empty; bool bResult = SqlServerHelper.UpdateData(out sError, sSql, true); if (bResult) Common.DisplayMsg(this.Text, "插入成功"); else Common.DisplayMsg(this.Text, sError);
InitGrid();
// 修改
sError = string.Empty; int iMaxID = SqlServerHelper.GetMaxID(out sError, "id", "test"); string sSql = "update test set name='name_jonse',remark='remark_jonse' where id=" + iMaxID; sError = string.Empty; bool bResult = SqlServerHelper.UpdateData(out sError, sSql, true); if (bResult) Common.DisplayMsg(this.Text, "修改成功"); else Common.DisplayMsg(this.Text, sError);
InitGrid();
// 删除
sError = string.Empty; int iMaxID = SqlServerHelper.GetMaxID(out sError, "id", "test"); string sSql = "delete from test where id=" + iMaxID; sError = string.Empty; bool bResult = SqlServerHelper.UpdateData(out sError, sSql); if (bResult) Common.DisplayMsg(this.Text, "删除成功"); else Common.DisplayMsg(this.Text, sError);
InitGrid();
五,其它
public static void DisplayMsg(string sCaption, string sMsg) { sMsg = sMsg.TrimEnd('!').TrimEnd('!') + " !"; MessageBox.Show(sMsg, sCaption); }

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제









가져오기 단계는 다음과 같습니다. MDF 파일을 SQL Server의 데이터 디렉터리(일반적으로 C:\Program Files\Microsoft SQL Server\MSSQL\DATA)에 복사합니다. SSMS(SQL Server Management Studio)에서 데이터베이스를 열고 연결을 선택합니다. 추가 버튼을 클릭하고 MDF 파일을 선택합니다. 데이터베이스 이름을 확인하고 확인 버튼을 클릭합니다.

실수로 SQL Server 데이터베이스를 삭제한 경우 다음 단계를 수행하여 복구할 수 있습니다. 데이터베이스 활동 중지, 데이터베이스 로그 확인, 백업에서 복원, DBCC CHECKDB 사용 파티 도구. 데이터 손실을 방지하려면 데이터베이스를 정기적으로 백업하고 트랜잭션 로깅을 활성화하십시오.

SQL Server 설치가 실패하면 다음 단계에 따라 정리할 수 있습니다. SQL Server 제거 레지스트리 키 삭제 파일 및 폴더 삭제 컴퓨터를 다시 시작합니다.

다음 단계에 따라 SQL Server 영어 설치를 중국어로 변경할 수 있습니다. SQL Server 서비스를 중지하고, 인스턴스 언어를 변경하고, 응용 프로그램을 다시 시작합니다.

MySQL과 SQL Server의 구문 차이는 주로 데이터베이스 개체, 데이터 유형, SQL 문 및 기타 측면에 반영됩니다. 데이터베이스 개체의 차이점에는 저장소 엔진, 파일 그룹 지정 방법, 인덱스 및 제약 조건 생성 등이 포함됩니다. 데이터 유형의 차이에는 숫자 유형, 문자 유형, 날짜 및 시간 유형의 차이가 포함됩니다. SQL 문의 차이점은 결과 집합 제한, 데이터 삽입, 업데이트 및 삭제 작업 등에 반영됩니다. 다른 차이점으로는 ID 열, 뷰 및 저장 프로시저를 만드는 방법이 있습니다. 다양한 데이터베이스 시스템을 사용할 때 오류를 방지하려면 이러한 차이점을 이해하는 것이 중요합니다.

SQL Server 데이터베이스를 삭제하려면 다음 단계를 순서대로 수행하십시오. 1. SQL Server Management Studio에 로그인합니다. 2. 데이터베이스 노드를 확장합니다. 3. 삭제할 데이터베이스를 마우스 오른쪽 버튼으로 클릭합니다. 5. 삭제를 확인하세요. 참고: 데이터베이스를 삭제하면 되돌릴 수 없습니다. 중요한 데이터를 백업하고 다른 개체의 연결을 끊었는지 확인하세요.

SQL Server에서 삭제된 데이터는 트랜잭션 롤백(커밋되지 않은 트랜잭션 롤백)을 통해 복구할 수 있습니다. 데이터베이스 로그(로그에서 데이터 복원) SQL Server 기본 백업(백업에서 데이터베이스 복원). 타사 복구 도구(고급 기술을 사용하여 데이터 복구) Microsoft 지원에 문의하세요(전담 도움이 필요한 경우).

불완전한 삭제로 인해 SQL Server를 다시 설치할 수 없는 문제는 다음 단계를 통해 해결할 수 있습니다. 파일 및 레지스트리 항목을 수동으로 삭제하고, SQL Server 설치 및 제거 도구를 사용하고, Windows 이벤트 뷰어를 확인하고, 컴퓨터를 다시 시작합니다. ; SQL Server를 다시 설치합니다.
