Sivu 1/1

RATKAISTU: Python ja tietokannat

ViestiLähetetty: 10.7.2020 klo 13.15
Kirjoittaja arttula
Jatkan edelleen kompurointiani Pythonin parissa (monettakohan vuotta? [:|] ). SQLiten saitin ohjeiden mukaisesti copy-pastesin seuraavan koodinpätkän, jolla yritän avata yhteyden olemassaolevaan pieneen tietokantaan:
Koodi: Valitse kaikki
import sqlite3
from sqlite3 import Error


def create_connection(db_file):
    """ create a database connection to a SQLite database """
    conn = None
    try:
        conn = sqlite3.connect(db_file)
        print(sqlite3.version)
    except Error as e:
        print(e)
    finally:
        if conn:
            conn.close()


if __name__ == '__main__':
    create_connection(r"Users/arttula/Documents/SQL_Databases/nimet.db")


Mutta vaan ei!!! :'( Aina tulee virhe "unable to open database file". Eri modifikaatioita olen kokeillut satoja kertoja. Tuo nimet.db on olemassa (SQLite -tietokanta, jonka loin SQLiteStudiolla), ja polku tuonne kansioon on tarkistettu monta kertaa.

Mitä nyt oikein missaan? [:|]

Re: Python ja tietokannat

ViestiLähetetty: 10.7.2020 klo 13.28
Kirjoittaja arttula
Jatketaan vielä... Samassa ohjeessa on myös koodinpätkä, jolla avataan yhteys koneen RAM-muistiin luotavaan virtuaaliseen tietokantaan:
Koodi: Valitse kaikki
import sqlite3
from sqlite3 import Error


def create_connection():
    """ create a database connection to a database that resides
        in the memory
    """
    conn = None;
    try:
        conn = sqlite3.connect(':memory:')
        print(sqlite3.version)
    except Error as e:
        print(e)
    finally:
        if conn:
            conn.close()


if __name__ == '__main__':
    create_connection()


Käytännössä siis sama koodinpätkä, mutta tuo levypolku puuttuu. Tuo koodi toimii hyvin. Eli vika lienee jossain tiedoston polun määrittelyssä? Vai? [:|]

Re: RATKAISTU: Python ja tietokannat

ViestiLähetetty: 10.7.2020 klo 13.39
Kirjoittaja arttula
No joo... [:$] [:$] [:$]

Näinkin tyhmä juttu, että poiketen Macin tavasta esittää kansiopolku, tuonne piti laittaa eteenpäin nojaavien kautta-viivojen sijaan kenoviivat taakse päin. Eli näin:
Koodi: Valitse kaikki
create_connection(r"Users\arttula\Documents\SQL_Databases\nimet.db")


Tuonkin olisi joku voinut kertoa minulle kuukausia sitten :'(

Re: RATKAISTU: Python ja tietokannat

ViestiLähetetty: 11.7.2020 klo 10.59
Kirjoittaja Delli