sq dll
16407 단어 dll
using
System.Data;
using
System.Data.SQLite;
using
System.IO;
namespace
MyHelper.DataAccess
{
public
class
SQLiteHelper
{
private
static
string
password =
"***"
;
// ***
private
static
string
dbFilePath = Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly()
.GetName().CodeBase) +
"//***.db"
;
// *** SQLite
private
static
string
connectString =
string
.Format(
"Data Source =/"{}/""
, dbFilePath, password);
private
static
SQLiteConnection myConnect =
new
SQLiteConnection(connectString);
/**/
/// <summary>
/// SQLite
/// </summary>
/// <returns> SQLite </returns>
public
static
SQLiteConnection GetConnection()
{
return
myConnect;
}
/**/
/// <summary>
/// SQL ,
/// </summary>
/// <param name="commandString">SQL </param>
/// <param name="parameters">SQL </param>
/// <returns> </returns>
public
static
int
ExecuteNonQuery(
string
commandString,
params
SQLiteParameter[] parameters)
{
int
result = ;
using
(SQLiteCommand command =
new
SQLiteCommand())
{
PrepareCommand(command,
null
, commandString, parameters);
result = command.ExecuteNonQuery();
command.Parameters.Clear();
}
return
result;
}
/**/
/// <summary>
/// SQL ,
/// </summary>
/// <param name="transaction">SQL </param>
/// <param name="commandString">SQL </param>
/// <param name="parameters">SQL </param>
/// <returns> </returns>
public
static
int
ExecuteNonQuery(SQLiteTransaction transaction,
string
commandString,
params
SQLiteParameter[] parameters)
{
int
result = ;
using
(SQLiteCommand command =
new
SQLiteCommand())
{
PrepareCommand(command, transaction, commandString, parameters);
result = command.ExecuteNonQuery();
command.Parameters.Clear();
}
return
result;
}
/**/
/// <summary>
/// , ,
/// </summary>
/// <param name="commandString">SQL </param>
/// <param name="parameters">SQL </param>
/// <returns> </returns>
public
static
object
ExecuteScalar(
string
commandString,
params
SQLiteParameter[] parameters)
{
object
result;
using
(SQLiteCommand command =
new
SQLiteCommand())
{
PrepareCommand(command,
null
, commandString, parameters);
result = command.ExecuteScalar();
}
return
result;
}
/**/
/// <summary>
/// SQL , DataReader
/// </summary>
/// <param name="commandString">SQL </param>
/// <param name="parameters">SQL </param>
/// <returns> DataReader</returns>
public
static
SQLiteDataReader ExecuteReader(
string
commandString,
params
SQLiteParameter[] parameters)
{
SQLiteCommand command =
new
SQLiteCommand();
try
{
PrepareCommand(command,
null
, commandString, parameters);
SQLiteDataReader reader = command.ExecuteReader(CommandBehavior.CloseConnection);
command.Parameters.Clear();
return
reader;
}
catch
{
throw
;
}
}
/**/
/// <summary>
/// Command , , , ,
/// </summary>
/// <param name="command">Command </param>
/// <param name="transaction">transaction </param>
/// <param name="commandString">SQL </param>
/// <param name="parameters">SQL </param>
private
static
void
PrepareCommand(SQLiteCommand command, SQLiteTransaction transaction,
string
commandString,
params
SQLiteParameter[] parameters)
{
if
(myConnect.State != ConnectionState.Open)
myConnect.Open();
command.Connection = myConnect;
command.CommandText = commandString;
if
(transaction !=
null
)
command.Transaction = transaction;
if
(parameters !=
null
&& parameters.Length > )
{
command.Parameters.AddRange(parameters);
}
}
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
LoadLibrary에서 126 오류가 발생하면 원인이되는 파일 이름을 찾는 방법Loadlibrary에서 DLL을 동적으로 로드할 때 로드 실패입니다. 실패한 파일 이름은 알려주지 않습니다. 로드하고자 하는 DLL 자체를 로드할 수 없다면 이야기는 간단하지만, 대상 DLL이 다른 DLL을 로드하...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.