Showing posts with label 데이터베이스. Show all posts
Showing posts with label 데이터베이스. Show all posts

2010/08/30

SQLite Release 3.7.2.0 (정적/동적 라이브러리 포함)




SQLite 가 3.7.2 버전을 공개하였고 이하의 버전을 사용하는 경우 업그레이드를 권고하고 있다.



2010 August 24 (3.7.2)


  • Fix an old and very obscure bug that can lead to corruption of the database free-page list when incremental_vacuum is used.





2010 August 23 (3.7.1)


  • Added new commands SQLITE_DBSTATUS_SCHEMA_USED and SQLITE_DBSTATUS_STMT_USED to the sqlite3_db_status() interface, in order to report out the amount of memory used to hold the schema and prepared statements of a connection.

  • Increase the maximum size of a database pages from 32KiB to 64KiB.

  • Use the LIKE optimization even if the right-hand side string contains no wildcards.

  • Added the SQLITE_FCNTL_CHUNK_SIZE verb to the sqlite3_file_control() interface for both unix and windows, to cause database files to grow in large chunks in order to reduce disk fragmentation.

  • Fixed a bug in the query planner that caused performance regresssions relative to 3.6.23.1 on some complex joins.

  • Fixed a typo in the OS/2 backend.

  • Refactored the pager module.

  • The SQLITE_MAX_PAGE_SIZE compile-time option is now silently ignored. The maximum page size is hard-coded at 65536 bytes.






<

Original Post : http://neodreamer-dev.tistory.com/457

2010/01/06

SQLite 3.6.22 Released & Library (Static, Dynamic)

3.6.22 ( 2010/01/06 ) 에서 변경된 사항

  • Fix bugs that can (rarely) lead to incorrect query results when the CAST or OR operators are used in the WHERE clause of a query.

  • Continuing enhancements and improvements to FTS3.

  • Other miscellanous bug fixes.



SQLite homepage




SQLite Library for C++ Builder (DLL 및 정적라이브러리)




SQLite Library for Visual C++ ( DLL 및 정적라이브러리 32/64bit)

<

Original Post : http://neodreamer-dev.tistory.com/355

2009/12/02

Firebird C API 데이터베이스 연결하기

char *szDBName = "e:\test.fdb";

char szSQL[2048] = {0,};
isc_db_handle db = NULL; // database handle
isc_tr_handle trans = NULL; // transaction handle
ISC_STATUS_ARRAY status; // status vector
long sqlcode; // SQLCODE
char *dpb_buffer = 0; // Database Parameter Buffer
short dpb_length = 0;

// Prepare parameter buffer
dpb_buffer = (char *)malloc(1);
*dpb_buffer = isc_dpb_version1;
dpb_length = 1;

// Set parameter User Name and Password
isc_expand_dpb( &dpb_buffer, &dpb_length
, isc_dpb_user_name, "SYSDBA"
, isc_dpb_password, "masterkey"
);

// Connect database
isc_attach_database( status, (int)strlen( szDBName ), szDBName, &db, dpb_length, dpb_buffer );

sqlcode = isc_sqlcode( status );
if ( status[0] == 1 && status[1] )
{
// Error occured
TRACE( "Fail to connect Database : %d\n", sqlcode );
return;
}

// Disconnect database
isc_detach_database( status, &db );

// Release parameter buffer
isc_free( dpb_buffer );


+ 2009/12/06
위의 코드는 메모리 1byte 의 메모리 누수가 생긴다. 누수가 발생하는 부분은 12번째 줄의 parameter buffer 에 버퍼 버전을 할당하는 부분으로 이부분을 주석처리하면 메모리 누수가 발생하지 않고 동작을 하게 된다. 버전을 명시하지 않아도 문제가 되는지 그리고 버전을 명시하고서도 메모리 누수가 발생하지 않도록 하는 방법이 있는지는 확인을 해 보아야 겠다

Original Post : http://neodreamer-dev.tistory.com/342

2008/07/23

Access를 대체할 강력한 로컬 데이터베이스 엔진 sqlite 3



Access 데이터베이스를 대체할 만한 데이터베이스 엔진을 찾다가 발견한 녀석이다.



Access 처럼 네트웍을 지원하지는 않지만 단일 실행로 실행이 되며 데이터베이스 파일도 단일 파일로 관리가 되어 이동성에도 좋다.



그 외에도 Transactions, SQL92, Cross-platform 그리고 간단하고 쉬운 API도 제공한다.

명령행 사용 화면

단일 실행파일에 의한 데이터베이스 사용



기본으로 제공하는 데이터베이스 엔진은 500KB 정도의 단일 실행파일로 커맨드라인 인터페이스만을 제공하지만 무료로 사용할 수 있는 GUI 툴도 있다.
SQLiteSpy

SQLite GUI for Windows


SQLiteSpy 를 이용하여 test.db에 접속한 화면

SQLiteSpy 를 이용하여 test.db에 접속한 화면


SQLite3 website
SQLiteSpy website
Original Post :
http://neodreamer-dev.tistory.com/127