C\#/자바 sqlite 연결 및 사용 방법
2)다운로드 한 드라이브 를 eclipse 프로젝트 의 built path 에 추가 합 니 다.
3)예시 코드:
package com.hedalixin;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Statement;
public class test {
/**
* @param args
*/
public static void main(String[] args) throws Exception {
// TODO Auto-generated method stub
Class.forName("org.sqlite.JDBC");
Connection conn = DriverManager.getConnection("jdbc:sqlite:test.db");
Statement stat = conn.createStatement();
stat.executeUpdate("drop table if exists people;");
stat.executeUpdate("create table people (name, occupation);");
PreparedStatement prep = conn
.prepareStatement("insert into people values (?, ?);");
prep.setString(1, "Gandhi");
prep.setString(2, "politics");
prep.addBatch();
prep.setString(1, "Turing");
prep.setString(2, "computers");
prep.addBatch();
prep.setString(1, "Wittgenstein");
prep.setString(2, "smartypants");
prep.addBatch();
conn.setAutoCommit(false);
prep.executeBatch();
conn.setAutoCommit(true);
ResultSet rs = stat.executeQuery("select * from people;");
while (rs.next()) {
System.out.println("name = " + rs.getString("name"));
System.out.println("job = " + rs.getString("occupation"));
}
rs.close();
conn.close();
}
}
2. C\#sqlite 2.1 을 연결 하여 SQLITE.NET QLite.NET 을 사용 하 는 것 도 데이터 액세스 구성 요소 입 니 다.그 중에서 System.Data.SQLite 는 마치.NET 자체 의 System.Data.sql Client 와 같 습 니 다.connection,command 등 데이터 접근 에 자주 사용 되 는 대상 이 포함 되 어 있 습 니 다.다만 앞 에 접두사 sqlite 가 있 습 니 다.1)System.Data.SQL Lite 다운로드 주소http://system.data.sqlite.org/index.html/doc/trunk/www/downloads.wiki2) Add References 를 통 해 SQLite ADO.NET 설치 디 렉 터 리 의 bin 디 렉 터 리 에 있 는 System.Data.SQLite.DLL 을 참조 합 니 다.
3)테이블 생 성,데이터 읽 기 등 은 Access 나 MS SQL 과 크게 다 르 지 않다
//
string datasource="h:/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('ekinglong','mypassword')";
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("
")
.Append("password:").Append(reader.GetString(1));
}
MessageBox.Show(sb.ToString());
2.2 원생 태 의 ADO.NET 을 사용 하여 SQLite 방문
using (DbConnection conn = new SQLiteConnection( System.Configuration.ConfigurationManager.ConnectionStrings["sqlite"].ConnectionString))
{
conn.Open();
DbCommand comm = conn.CreateCommand();
comm.CommandText = "select * from customer";
comm.CommandType = CommandType.Text;
using (IDataReader reader = comm.ExecuteReader())
{
while (reader.Read())
{
Response.Write(reader[0]);
}
}
}
SQLite.NET 데이터베이스 연결 문자열 ConnectionString 형식:Basic(기본) Data Source=filename;Version=3;UTF 16 사용(UTF 16 인 코딩 사용) Data Source=filename;Version=3;UseUTF16Encoding=True;With password(비밀번호 가 있 는) Data Source=filename;Version=3;Password=myPassword;pre 3.3x database format 사용(3.3x 전 데이터베이스 형식 사용) Data Source=filename;Version=3;Legacy Format=True;읽 기 전용 연결(연결 만 읽 기) Data Source=filename;Version=3;Read Only=True;연결 풀 링(연결 풀 설정) Data Source=filename;Version=3;Pooling=False;Max Pool Size=100;Using DateTime.Ticks as datetime format() Data Source=filename;Version=3;DateTimeFormat=Ticks; The default value is ISO 8601 which activates the use of the ISO 8601 datetime formatstore GUID as text(Guid 를 텍스트 로 저장 하고 기본 값 은 Binary) Data Source=filename;Version=3;BinaryGUID=False; Guid 를 텍스트 로 저장 하려 면 더 많은 저장 공간 이 필요 합 니 다.Specify cache size(Cache 크기 지정) Data Source=filename;Version=3;Cache Size=2000; Cache Size 단 위 는 바이트 Specify page size(지정 페이지 크기) Data Source=filename;Version=3;Page Size=1024; Page Size 단 위 는 바이트 Disable enlistment in distributed transactions Data Source=filename;Version=3;Enlist=N;disable create database behavior(데이터베이스 생 성 을 사용 하지 않 음) Data Source=filename;Version=3;FailIfMissing=True; 기본적으로 데이터베이스 파일 이 존재 하지 않 으 면 자동 으로 새 파 라 메 터 를 만 듭 니 다.이 파 라 메 터 를 사용 하면 만 들 지 않 고 이상 정 보 를 던 집 니 다.Limit the size of database(데이터베이스 크기 제한) Data Source=filename;Version=3;Max Page Count=5000; Max Page Count 는 페이지 에서 측 정 됩 니 다.이 매개 변 수 는 데이터베이스 의 최대 페이지 수 를 제한 합 니 다.Journal File 사용 안 함(로그 스크롤 백 사용 안 함) Data Source=filename;Version=3;Journal Mode=Off; 이것 은 롤 백 저널 을 완전히 비활성화 합 니 다.저널 파일 을 유지 합 니 다(오래 지속) Data Source=filename;Version=3;Journal Mode=Persist; This one blanks and leaves the journal file on disk after a commit. Default behaviour is to delete the Journal File after each commit.Controling file flushing Data Source=filename;Version=3;Synchronous=Full; Full specifies a full flush to take action after each write. Normal is the default value. Off means that the underlying OS flushes I/O's.Sqlite 사용 기법 1.sqlite 데이터 시트 에 SELECT COUNT 가 있 는 지 판단(*) as CNT FROM sqlite_master where type='table'and name='DBInfo'//그 중에서 DBInfo 는 판단 이 필요 한 표 이름 입 니 다.대소 문자 예민 하 게!
2.SQLite 하나의 SQL 문 구 는 여러 개의 기록 을 삽입 합 니 다.INSERT INTO TABLE(col 1,col 2)SELECT val 11,val 12 UNION ALL SELECT val 21,val 22;이러한 표기 법 은 복합 SQL 문장 에 속 하 며,먼저 두 개의 SELECT 결과 집 을 삭제 없 이 연합 한 다음 에 연합 결 과 를 TABLE 에 삽입 하 는 것 을 나타 낸다.
3.sqlite 사 무 는 파일 형식 으로 디스크 에 존재 합 니 다.방문 할 때마다 파일 을 열 어야 합 니 다.데 이 터 를 대량으로 조작 할 때 느 립 니 다.해결 방법 은 트 랜 잭 션 형식 으로 제출 하 는 것 입 니 다.트 랜 잭 션 을 시작 한 후에 대량의 작업 을 하 는 문 구 는 메모리 에 저장 되 어 있 기 때문에 제출 할 때 데이터베이스 에 모두 기록 합 니 다.이때,데이터베이스 파일 도 한 번 만 열 수 있 습 니 다.sql 구문:begin; INSERT INTO "table" VALUES ('a', 'b', 'c'); INSERT INTO "table" VALUES ('a', 'b', 'c'); INSERT INTO "table" VALUES ('a', 'b', 'c'); commit; 4.SQLite 자체 증가 ID 필드 사용 방법 은 INTEGER PRIMARY KEY AUTOINCREMENT 5.페이지 별로 MySQL 과 유사 한 데이터 베 이 스 를 조회 합 니 다.my SQL 의 LIMIT 함수,LIMIT[offset,]rows 를 이용 하여 데이터베이스 시트 의 M 개의 기록 에서 N 개의 기록 을 검색 하 는 문 구 는 SELECT*FROM 표 이름 LIMIT M,N 예 를 들 어 표 Sys 입 니 다.option(메 인 키 는 sysid)에서 10 개의 기록 부터 20 개의 기록 을 검색 합 니 다.문 구 는 다음 과 같 습 니 다.select*from sysoption limit 10,20
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
PupSQLite를 사용해 보았습니다.창모리에서 다운로드 데스크탑 등에 해동 PupSQLite.exe를 두 번 클릭 DB 정보가 로드됨 JupyterLab에서 파이썬을 공부할 때 SQLite는 매우 효과적입니다. PupSQLite를 다운로드하여 데이터 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.