>  기사  >  데이터 베이스  >  .Net에서 SQLite 데이터베이스를 운영할 때의 구체적인 이점은 무엇입니까?

.Net에서 SQLite 데이터베이스를 운영할 때의 구체적인 이점은 무엇입니까?

php是最好的语言
php是最好的语言원래의
2018-08-03 11:59:491947검색

요약:

SQLite 라이브러리 설치 정보는 매우 특별합니다.

다운로드 주소: http://system.data.sqlite.org/index.html/doc/trunk/www/downloads.wiki --ok!
              https://www.sqlite.org/download.html. ---Android, Mac, Linux 및 기타 플랫폼에서 다운로드할 수 있습니다.

설치 패키지 다운로드:
sqlite-netFx20-setup-bundle-x64-2005-1.0.108.0.exe --- 테스트 OK!
또는 sqlite-netFx45-setup-bundle-x64-2012-1.0.108.0.exe 버전 2.0을 먼저 제거한 후 설치해야 합니다. ---테스트 OK!
(다른 소프트웨어와의 일관성을 위해 .Net 4.5 버전 설치를 권장합니다!)

기본 설치 경로: C:Program FilesSystem.Data.SQLite

.Net 참조: System.Data를 인용하면 됩니다. 설치 bin 디렉토리 단 하나의 파일 .SQLite.dll!

참고:

1. 번들이 포함된 동적 라이브러리는 동적 라이브러리가 혼합 모드로 컴파일된다는 의미입니다. 순수 x86 및 순수 x64 모드 라이브러리도 있으며 총 3가지 유형이 있으며 실제 필요에 따라 선택합니다. (프로젝트 생성 시 대상 플랫폼과 일치해야 합니다!)

2. 다운로드한 라이브러리를 반드시 설치해야 합니다! ! (인용만 되고 설치는 안되고 실행시 오류가 발생합니다!!)

3. .Net에서 SQLite를 사용하는 경우 System.Data.SQLite.dll만 인용하면 되고, sqlite3.dll은 필요없습니다. 모두. 그것을 기대하지 않았다!

SQLite 소개:

SQLite는 로컬 데이터 저장에 사용되는 경량 데이터베이스입니다. 오픈 소스 데이터베이스.

장점: 임베디드 장치에서 수백 K의 메모리를 필요로 하며, 처리 속도가 T 수준으로 독립적입니다. 여러 언어.

세부 장점:

1. 설계 대상은 임베디드이며 매우 낮은 리소스를 차지합니다. 임베디드 장치에서는 단지 수백 K의 메모리만으로도 충분할 수 있습니다.

2. 크로스 플랫폼 및 다중 언어 지원: Windows/Linux/Unix와 같은 주류 운영 체제를 지원할 수 있으며 C, C++, PHP, Perl, Java, C#과 같은 다양한 프로그래밍 언어
와 결합될 수 있습니다. , Python, Ruby 등.

3. 빠른 속도: 세계적으로 유명한 두 가지 오픈 소스 데이터베이스 관리 시스템인 Mysql 및 PostgreSQL에 비해 처리 속도가 빠릅니다.
 (대부분의 일반적인 데이터베이스 작업에서 널리 사용되는 일부 데이터베이스보다 빠릅니다.)

4. 최대 2TB의 데이터베이스 크기를 지원합니다.

5. 충분히 작은 C 코드 약 130,000줄, 4.43M

6. 간단하고 쉬운 API

7. 소스 코드는 완전 오픈 소스이므로 판매를 포함해 어떤 용도로든 사용할 수 있습니다.

8. 거래 처리 기능 등도 지원합니다.

.NET을 사용하여 SQLLITE 작동:

샘플 코드 1:

  public string Query()        {            string datasource = "e:/tmp/test.db";            System.Data.SQLite.SQLiteConnection.CreateFile(datasource);            //连接数据库            System.Data.SQLite.SQLiteConnection conn = new System.Data.SQLite.SQLiteConnection();            System.Data.SQLite.SQLiteConnectionStringBuilder connstr = new System.Data.SQLite.SQLiteConnectionStringBuilder();            connstr.DataSource = datasource;            connstr.Password = "admin";//设置密码,SQLite ADO.NET实现了数据库密码保护            conn.ConnectionString = connstr.ToString();            conn.Open();            //创建表            System.Data.SQLite.SQLiteCommand cmd = new System.Data.SQLite.SQLiteCommand();            string sql = "CREATE TABLE test(username varchar(20),password varchar(20))";            cmd.CommandText = sql;            cmd.Connection = conn;            cmd.ExecuteNonQuery();            //插入数据            sql = "INSERT INTO test VALUES('a','b')";            cmd.CommandText = sql;            cmd.ExecuteNonQuery();            //取出数据            sql = "SELECT * FROM test";            cmd.CommandText = sql;            System.Data.SQLite.SQLiteDataReader reader = cmd.ExecuteReader();            StringBuilder sb = new StringBuilder();            while (reader.Read())            {                sb.Append("username:").Append(reader.GetString(0)).Append("\n")                .Append("password:").Append(reader.GetString(1));            }            //MessageBox.Show(sb.ToString());
            return sb.ToString();        }

샘플 코드 2: 트랜잭션 작업:

using (SQLiteConnection conn = new SQLiteConnection(connectionString))
            {
                conn.Open();
                SQLiteCommand cmd = new SQLiteCommand();
                cmd.Connection = conn;
                SQLiteTransaction tx = conn.BeginTransaction();
                cmd.Transaction = tx;
                try
                {
                    for (int n = 0; n < SQLStringList.Count; n++)
                    {
                        string strsql = SQLStringList[n].ToString();
                        if (strsql.Trim().Length > 1)
                        {
                            cmd.CommandText = strsql;
                            cmd.ExecuteNonQuery();
                        }
                    }
                    tx.Commit();
                }
                catch (System.Data.SQLite.SQLiteException E)
                {
                    tx.Rollback();
                    throw new Exception(E.Message);
                }

관련 기사:

SQLite 관계형 데이터베이스 사용

.NET에서 MySQL을 사용하는 방법 데이터베이스

관련 동영상:

SQLite 고급 과정

위 내용은 .Net에서 SQLite 데이터베이스를 운영할 때의 구체적인 이점은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.