> For the complete documentation index, see [llms.txt](https://goooqo.docs.doyto.win/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://goooqo.docs.doyto.win/api/connection.md).

# Connection

## Usage

Developers can create a database connection on their own:

```go
package main

import (
	"database/sql"
	_ "github.com/mattn/go-sqlite3"
)

func main() {	
	db, err := sql.Open("sqlite3", "./test.db")
	if err == nil {
		defer db.Close()
	}
	//...
}
```

or use a property file:

```go
package main

import (
	"github.com/doytowin/goooqo/rdb"
	_ "github.com/mattn/go-sqlite3"
)

func main() {
	db := rdb.Connect("app-sqlite3.properties")
	defer rdb.Disconnect(db)
	//...
}
```

## Property Format

The property file contains the parameters for different databases.

{% code title="app-sqlite3.properties" %}

```properties
driver=sqlite3
data_source=./test.db
```

{% endcode %}

{% code title="app-mysql.properties" %}

```properties
driver=mysql
mysql_url=tcp(localhost:3306)/demo?charset=utf8mb4&parseTime=true
mysql_username=root
mysql_password=root
```

{% endcode %}

More properties will be supported after the [dialect](/advanced/dialect.md) feature is ready.
